हाथ से बने WireGuard की अधिकांश विफलताएँ इसी पर आकर टिकती हैं कि कौन-सी कुंजी कहाँ गई। इंटरफ़ेस अनुभाग में उस डिवाइस की निजी कुंजी होती है जिसे आप कॉन्फ़िगर कर रहे हैं, जबकि पीयर अनुभाग में दूसरे सिरे की मशीन की सार्वजनिक कुंजी होती है। इन आधे हिस्सों को बदल देना, या गलत वाला चिपका देना, ऐसा हैंडशेक बनाता है जो कभी पूरा नहीं होता और ऐसा लॉग बनाता है जो कभी किसी कुंजी का नाम नहीं लेता। AllowedIPs या DNS छूने से पहले नीचे दिए चार जाँच क्रम में करें।

दो कुंजियाँ, दो दिशाएँ

एक निजी कुंजी ठीक एक डिवाइस की होती है और उसी डिवाइस के इंटरफ़ेस अनुभाग में रहती है। उसका सार्वजनिक आधा हिस्सा वही है जो हर दूसरे पीयर को डिवाइस पहचानने के लिए चाहिए, और औज़ार इसे गढ़ते नहीं, व्युत्पन्न करते हैं। सर्वर पर आपके डिवाइस की सार्वजनिक कुंजी पीयर प्रविष्टि के रूप में दिखती है; आपके डिवाइस पर सर्वर की सार्वजनिक कुंजी वह भूमिका निभाती है। इन शब्दों में कॉन्फ़िग को ज़ोर से पढ़ना अधिकांश उलझनें हैंडशेक तक पहुँचने से पहले पकड़ लेता है।

wg कमांड छापती है कि स्थानीय इंटरफ़ेस वास्तव में क्या उपयोग कर रहा है, दोनों सार्वजनिक कुंजियों सहित। इससे कॉन्फ़िगरेशन की गलती को कनेक्टिविटी की समस्या से अलग करने का सबसे तेज़ तरीका यही बन जाता है:

wg show
wg show interfaces

पहला आउटपुट हर पीयर को उसकी सार्वजनिक कुंजी, अंतिम बार उपयोग किए गए एंडपॉइंट और उसके पिछले हैंडशेक की आयु के साथ सूचीबद्ध करता है। एक ओर हैंडशेक की आयु «कभी नहीं» और दूसरी ओर हाल की होना ऐसी कुंजी की ओर संकेत करता है जिसे केवल एक सिरे ने स्वीकार किया। दूसरा कमांड उन इंटरफ़ेस के नाम बताता है जिन्हें आप आगे जाँच सकते हैं।

क्या साझा करें और क्या कभी नहीं

सार्वजनिक कुंजी सौंपने के लिए होती है, हालाँकि वह अब भी डिवाइस संबंध पहचानती है, इसलिए उसे माँगने वाले प्रशासक को भेजना और उसे प्रकाशित करना एक जैसा नहीं है। निजी कुंजी कभी उस डिवाइस को नहीं छोड़ती जिसने उसे बनाया। निर्यात किया गया प्रोफ़ाइल या QR कोड उस निजी कुंजी सहित पूरा कॉन्फ़िगरेशन रखता है, इसलिए दोनों में से कोई भी हाथों-हाथ देने के लिए सुरक्षित नहीं है, और किसी चित्र के भीतर पाठ छिपाने से कुछ नहीं बदलता। पहले से साझा की गई कुंजियाँ वैकल्पिक और उतनी ही गोपनीय हैं, और दोनों सिरों पर समान मान होना चाहिए, वरना हैंडशेक उसी चरण पर रुक जाता है।

एक और अंतर सीधे कहना उचित है: एंडपॉइंट एक पता और एक पोर्ट है, कभी कुंजी नहीं। एंडपॉइंट फ़ील्ड में सार्वजनिक कुंजी चिपकाना, या कुंजी फ़ील्ड में पता, ऐसा प्रोफ़ाइल बनाता है जो पार्स होता है और फिर कुछ नहीं करता। औज़ार इसे नहीं पकड़ेंगे, क्योंकि दोनों फ़ील्ड केवल स्ट्रिंग हैं। WireGuard की तेज़ शुरुआत एक पंक्ति में बनाने और व्युत्पन्न करने की श्रृंखला दिखाती है।

एक डिवाइस, एक पीयर प्रविष्टि

जहाँ सेवा अनुमति देती है, वहाँ हर डिवाइस को अपनी पीयर पहचान रखनी चाहिए। लैपटॉप का पूरा प्रोफ़ाइल फ़ोन पर चिपकाने से यह धुँधला हो जाता है कि सर्वर पर वह पहचान किस डिवाइस के पास है और एक खोए हैंडसेट को रद्द करना कठिन हो जाता है। अगर निजी कुंजी लीक हो जाए, तो सर्वर पर पुराना पीयर प्राधिकरण हटाएँ और उसका प्रतिस्थापन जुटाएँ। स्थानीय फ़ाइल मिटाने से सर्वर की प्रविष्टि नहीं मिटती, और नई क्लाइंट कुंजी किसी की मदद नहीं करती जब तक सर्वर उसका सार्वजनिक आधा न जानता हो।

डिवाइस से सार्वजनिक कुंजी तक का नक्शा पतों की सूची के पास रखें। वही सूची रद्द करने को पूरी दोपहर के बजाय दो मिनट का काम बनाती है।

हैंडशेक के बाद भी क्या विफल होता है

कुंजी युग्म पीयर की पहचान करते हैं; वे नेटवर्क के व्यवहार का फ़ैसला नहीं करते। AllowedIPs पता श्रेणियों को एक पीयर से जोड़ता है, और उसके आसपास के रूट क्लाइंट या सेटअप औज़ार संभालता है। लक्षण आमतौर पर बताता है कि आगे कौन-सी परत खोलनी है:

What you seeWhich key problem it usually meansWhere to look first
Handshake age stays at never on both endsPeer public key missing, or an endpoint pointing at nothingwg show, then the endpoint value
Handshake completes on one side onlyThe two ends hold different public keys for each otherwg show on both hosts
Handshake works, then no trafficAllowedIPs or routes rather than keyswg show and the route table
Worked until a key was regeneratedThe peer entry still holds the old public keyCompare both public keys, then update the peer

दोनों पीयर के ठीक से प्रमाणित होने के बाद भी DNS विफल हो सकता है, और सुरंग के स्वयं स्वस्थ रहते हुए भी कोई एप्लिकेशन विफल हो सकता है, इसलिए काम करता हैंडशेक निदान का अंत नहीं है। कुंजियाँ ऑपरेटर की लॉगिंग प्रथा के बारे में या यह कि कोई वेबसाइट आपका खाता पहचानती है या नहीं, इस बारे में भी कुछ नहीं कहतीं, और वे प्रश्न कहीं और के हैं। चारों जाँच पार होने पर नेटवर्क परतों की ओर बढ़ें, क्योंकि गायब कुंजी कोई छिपी हुई रूटिंग समस्या नहीं है।

संबंधित लेख