802.1X का उपयोग करके मैं वायरलेस एपी का प्रमाण पत्र कैसे डाउनलोड कर सकता हूं?


11

जहां तक ​​मैं समझता हूं, WPA-Enterprise (यानी WPA प्लस 802.1X) का उपयोग कर वायरलेस एक्सेस पॉइंट कनेक्शन सेटअप के दौरान क्लाइंट को एक सार्वजनिक कुंजी प्रमाणपत्र भेज सकता है। ग्राहक इस प्रमाणपत्र को यह सुनिश्चित करने के लिए सत्यापित कर सकता है कि यह किसी दुष्ट एपी (HTTPS में प्रमाणपत्र सत्यापन के समान) से कनेक्ट नहीं हो रहा है।

प्रशन:

  • क्या मैंने इसे सही तरीके से समझा?
  • यदि हाँ, तो क्या एपी प्रमाण पत्र डाउनलोड करने का कोई तरीका है? आदर्श रूप से, मैं एक ऐसे समाधान की तरह हूं जो लिनक्स के तहत काम करता है।

मैं एक स्व-हस्ताक्षरित प्रमाण पत्र डाउनलोड करना चाहूंगा, इसका उपयोग बाद के कनेक्शन के प्रयासों को सत्यापित करने के लिए करूंगा। यह एक फ़ाइल के लिए एपी के ऑपरेटर से पूछने की तुलना में सरल होगा।


मुझे विशेष रूप से प्रमाणपत्र डाउनलोड करने और सहेजने के लिए कोई टूल नहीं पता है, लेकिन यह स्पष्ट है, इसलिए आप इसे Wireshark या tcpdump के साथ कैप्चर कर सकते हैं। मुझे डिबग / वर्बोज़ wpa_supplicant लॉग में प्रमाणित डेटा देखने की याद आती है, इसलिए आप इसे भी देख सकते हैं। इनमें से किसी भी दृष्टिकोण के लिए इसे pcap / log फॉर्म से उचित X.509 .cer फ़ाइल में लाने के लिए थोड़ा सा डेटा मुंगिंग की आवश्यकता हो सकती है।
स्पाइफ

जवाबों:


11

हां, सबसे आम WPA- एंटरप्राइज़ कॉन्फ़िगरेशन PEAP या TTLS दोनों का उपयोग करता है, दोनों ही EAP पर 802.1X से अधिक TLS को लागू करते हैं।

आमतौर पर प्रमाणपत्र इस उद्देश्य के लिए नेटवर्क ऑपरेटरों द्वारा पहले से ही प्रकाशित किया जाता है। यह ऐसा कुछ नहीं है जिसके लिए उपयोगकर्ता को पूछना चाहिए ।

अफसोस की बात है कि wpa_supplicant के पास डिबग मोड में भी प्रमाण पत्र को डंप करने का विकल्प नहीं है। (यदि मुझे बेहतर तरीका मिल जाए तो मैं इसे अपडेट करूंगा।) आप अभी भी वास्तविक EAPOL प्रमाणीकरण प्रक्रिया की निगरानी कर सकते हैं। सबसे पहले, Wireshark स्थापित करें।

डिस्कनेक्ट होने पर, इंटरफ़ेस को मैन्युअल रूप से लाएं और उस पर कब्जा शुरू करें:

$ sudo ip link set wlan0 up
$ wireshark -ki wlan0 &

Wpa_supplicant शुरू करें और जल्द ही आप TLS हैंडशेक देखेंगे:

ServerHello के तुरंत बाद सर्वर अपना सर्टिफिकेट भेजेगा। पहले ऐसे पैकेट का चयन करें, फिर खुदाई करें:

802.1X
└─Extensible Authentication Protocol
  └─Secure Sockets Layer
    └─Handshake Protocol: Certificatte
      └─Certificates

"प्रमाणपत्र ( सामान )" के पहले उदाहरण पर राइट-क्लिक करें और "चयनित पैकेट बाइट्स निर्यात करें" चुनें। Wireshark बाइनरी डीईआर प्रारूप में इसे एक फ़ाइल के रूप में बचाएगा। अन्य सभी प्रमाणपत्रों के लिए इसे दोहराएं। सबसे ऊपर वाले (RADIUS सर्वर की) जानकारी है जिसे आप कॉन्फ़िगर कर सकते हैं altsubject_match; पिछले एक (रूट सीए) wpa_supplicant के रूप में दिया जाना चाहिए ca_cert

अब आपके पास बाइनरी डीईआर प्रारूप में कुछ *.crtया *.derफाइलें हैं। उन्हें "पाठ" प्रारूप में बदलें:

openssl x509 -inform DER < mycert.der > mycert.pem

(अपने wpa_supplicant टीएलएस हैंडलर से OpenSSL उपयोग कर रहा है, तो आप चाहिए यह "रूट सीए" प्रमाण पत्र देना है, यह काम नहीं करेगा सर्वर का प्रमाणपत्र दे रही है।

ध्यान दें कि यह भी संभव है कि Wireshark में देखा गया अंतिम प्रमाणपत्र रूट CA का नहीं होगा, लेकिन केवल आपकी निर्देशिका में मूल CA में से एक द्वारा जारी किया गया है/etc/ssl/certs ... यदि ऐसा है, तो निश्चित domain_suffix_matchरूप से सेट करना सुनिश्चित करें - अन्यथा, सार्वजनिक CA का उपयोग करना असुरक्षित होगा (802.1X दुर्भाग्य से नहीं जानता है कि "होस्टनाम" के खिलाफ सत्यापित करने के लिए, जिस तरह से HTTPS होगा।)


विस्तृत राइटअप के लिए धन्यवाद। यह थोड़ा जटिल लगता है; लेकिन अगर यह करने का सबसे सरल तरीका है, तो मैं कोशिश करूँगा।
साल्स्के

हाँ, यह वास्तव में काम किया है, मैं EAP के साथ परमानंद डाउनलोड किया है, tpcpdumpलेकिन एक आकर्षण की तरह काम किया। हालांकि, मेरी स्ट्रीम में केवल एक सर्वर हैलो, प्रमाणपत्र, ... प्रविष्टि
mTorres

मेरे उदाहरण में टीएलएस संदेश कई ईएपी पैकेटों में खंडित है क्योंकि यह बहुत बड़ा है (विशेषकर यदि यह बड़े आरएसपी प्रमाणपत्रों का एक गुच्छा भेजता है)। यह हमेशा कुल मिलाकर केवल एक TLS ServerHello है।
user1686

अगर मैं कुछ गलत कह रहा हूं तो कृपया मेरे साथ सहन करें। इस तरह की गतिविधि के लिए एक प्रमाण पत्र डाउनलोड करना और इसे उन उपकरणों पर लागू करना है जो पहले कनेक्शन पर प्रमाण पत्र को डाउनलोड करने और स्वीकार करने की अनुमति नहीं देते हैं।
मौरो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.