हातले बनाइएका 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 असफल हुन सक्छ, र सुरुङ आफैं स्वस्थ हुँदा पनि अनुप्रयोग असफल हुन सक्छ, त्यसैले काम गर्ने ह्यान्डशेक निदानको अन्त्य होइन। कुञ्जीहरूले अपरेटरको लगिङ अभ्यास वा कुनै वेबसाइटले तपाईंको खाता चिन्छ कि भन्नेबारे पनि केही भन्दैनन्, र ती प्रश्न अन्तैका हुन्। चारै जाँच पास भएपछि सञ्जाल तहतिर जानुहोस्, किनकि हराएको कुञ्जी छद्मभेषी रुटिङ समस्या होइन।

सम्बन्धित लेखहरू