मैले GNOME सेटिङमा फाइलबाट आयात गर्नुहोस्… छानें, विक्रेताको क्लाइन्टसँग काम गर्ने प्रोफाइल छानें, र संवाद सूचीमा केही नथपी बन्द भयो। दोस्रो ल्यापटपमा आयात पूरा भयो, जडान प्रोफाइलको नाममा देखियो, र त्यसपछि पहिलो प्रमाणीकरण अनुरोधमा असफल भयो। NetworkManager ले तपाईंको .ovpn वा wg-quick फाइल कहिल्यै जस्तो छ त्यस्तै चलाउँदैन। यसले फाइल पार्सरलाई दिन्छ, पार्सरले यसलाई NetworkManager को आफ्नै जडान ढाँचामा बदल्छ, र त्यसपछि सुरुङ त्यही पार्स गरिएको वस्तुबाट बन्छ — रहस्य, रुट, DNS र सबै। त्यसैले उपयोगी प्रश्न फाइल किन बिग्रेको हो भन्ने होइन, तर पार्सिङ भयो कि भएन र यसले के राख्यो भन्ने हो।

आयातले वास्तवमा फाइलसँग के गर्छ

OpenVPN का लागि पार्सर प्लगइन प्याकेजमा रहन्छ, र यसले बनाउने जडान org.freedesktop.NetworkManager.openvpn जस्तो D-Bus सेवामा सङ्केत गर्छ। प्लगइन छैन भने पार्सर छैन: प्रकार nmcli का लागि अज्ञात छ, र VPN थप्ने ग्राफिकल सूचीले सायद आयात प्रविष्टि नै नदेखाउन सक्छ। WireGuard एक महत्त्वपूर्ण बिन्दुमा फरक छ — NetworkManager सँग 1.30 शृंखलादेखि आफ्नै WireGuard सेटिङ छन्, त्यसैले छुट्टै प्लगइन प्याकेज छैन, तर wg-quick पाठक केवल ती बिल्डमा छ जसले यसलाई दिन्छ।

जसरी पनि फाइल एक पटक पढिन्छ। नतिजा /etc/NetworkManager/system-connections/ अन्तर्गत keyfile को रूपमा लेखिन्छ, जडानको नाममा, root को स्वामित्वमा र अन्य प्रयोगकर्ताका लागि अपठनीय किनकि यसमा कुञ्जी सामग्री छ। त्यो keyfile अब जडान हो; मूल .ovpn पछि सम्पादन गर्दा केही पनि बदलिँदैन।

तीन लक्षण तीन फरक चरणसँग सम्बन्धित छन्। आयात प्रविष्टि नहुनु वा अज्ञात प्रकार हुनुको अर्थ प्लगइन वा संस्करण छैन। कुनै निर्देशको नाम लिने आयात त्रुटिको अर्थ पार्सरले फाइल पढ्यो र यसको केही भाग अस्वीकार गर्यो। अस्तित्वमा भए पनि कहिल्यै सक्रिय नहुने जडानको अर्थ पार्स गरिएको वस्तु अपूर्ण छ वा सर्भरले यसलाई अस्वीकार गर्दैछ। केही पनि सम्पादन गर्नुअघि तपाईंसँग तीनमध्ये कुन अवस्था छ निर्णय गर्नुहोस्।

प्रोफाइल डिबग गर्नुअघि प्लगइन पुष्टि गर्नुहोस्

हराएको प्लगइन ठ्याक्कै बिग्रेको प्रोफाइलजस्तो देखिन्छ, त्यसैले पहिले प्याकेज जाँच्नुहोस्। Debian र Ubuntu मा OpenVPN समर्थन network-manager-openvpn र डेस्कटप सहायकको रूपमा आउँछ; Fedora मा प्याकेज NetworkManager-openvpn र NetworkManager-openvpn-gnome हुन्; Arch मा यो networkmanager-openvpn हो।

dpkg -l network-manager-openvpn-gnome | tail -n 2
rpm -q NetworkManager-openvpn
pacman -Q networkmanager-openvpn

त्यसपछि निरपेक्ष बाटोबाट आयात गर्नुहोस्: nmcli connection import type openvpn file /home/you/profile.ovpn। सापेक्ष बाटोहरू सामान्यतया काम गर्छन्, तर डाइरेक्टरी बदलेको शेलले छिटो आयातलाई घुमाउरो बनाउँछ। WireGuard का लागि nmcli --version जाँच्नुहोस् र कर्नेल पक्ष modprobe wireguard सँग अवस्थित छ भन्ने सुनिश्चित गर्नुहोस्; मोड्युल बिना मेसिनमा सफल हुने आयातले तपाईंलाई यस्तो जडानसँग छोड्छ जसको यन्त्र कहिल्यै देखिँदैन। nmcli सन्दर्भ import उपआदेश र स्वीकार गरिएका प्रकार नामहरूको दस्तावेजीकरण गर्छ। यदि type wireguard सिधै अस्वीकार भयो भने, बिल्ड यो सुविधाभन्दा पुरानो छ, र सही कदम वितरण प्याकेज वा backport हो — कन्फिगरेसनलाई कुनै पनि डाइरेक्टरीमा प्रतिलिपि गरेर कसैले पढ्छ भन्ने आशा गर्नु होइन।

OpenVPN जडान पढ्नुहोस्, .ovpn होइन

जडान बनेपछि फाइल फेरि नपढी पार्स गरिएका सेटिङ पढ्नुहोस्: nmcli connection show "Work VPN" | grep -E '^vpn\.'। तपाईंलाई remote र पोर्ट, ट्रान्सपोर्ट, पहिचान सामग्री — ca, cert, key, tls-auth वा tls-crypt — र प्रमाणीकरण विधि चाहिन्छ। निजी कुञ्जीको पासवर्ड भएको प्रोफाइलमा sudo nmcli --show-secrets connection show "Work VPN" थप्नुहोस् र secret झन्डा हेर्नुहोस्: 0 none हो, अर्थात् रहस्य keyfile मा छ; 1 agent-owned हो; 2 not-saved हो, अर्थात् यो कहिल्यै keyfile मा लेखिँदैन; 4 not-required हो, अर्थात् कुनै रहस्य आवश्यक छैन। यी बिट हुन्, स्केल होइन, त्यसैले 3 भनेको केवल agent-owned प्लस not-saved हो। प्रति सत्र एक पटक सोधिने रहस्य agent-owned (1) हो जहाँ एजेन्टले यो माग्छ; त्यसका लागि छुट्टै झन्डा नम्बर छैन। झन्डा नमिल्नु सामान्य कारण हो कि प्रोफाइल डेस्कटप एप्लेटबाट जोडिन्छ र स्क्रिप्ट वा बुटमा असफल हुन्छ।

पार्सरले के फ्याँक्यो हेर्ने सबैभन्दा छिटो तरिका प्लगइनलाई फाइल फेरि लेख्न भन्नु र त्यसपछि तुलना गर्नु हो: nmcli connection export "Work VPN" /tmp/roundtrip.ovpn। त्यो भिन्नतामा हराउने निर्देश जडानको समयमा हुँदैनन्। हुक सामान्य शङ्कास्पद हुन् — script-security, up, down र route-up उच्च अधिकारमा चल्ने स्क्रिप्ट अपेक्षा गर्छन् र जानाजानी सारिँदैनन्। प्रमाणीकरण घटाउनुहोस् र आयात सफल पार्न थप विशेषाधिकार दिनुहोस्; असमर्थित विकल्पले सामान्यतया प्लगइनको सुविधा-समूह देखाउँछ, अगम्य सर्भर होइन। त्यो व्यवहार NetworkManager डिस्प्याचर स्क्रिप्ट वा सर्भर-पक्ष नीतिमा सार्नुहोस्।

पहिचान फिल्ड बाँचे कि भनी पनि पुष्टि गर्नुहोस्: CA सन्दर्भ, remote-cert-tls र प्रोफाइलले भरोसा गरेको कुनै पनि नाम जाँच। जो जडान यिनका बिना माथि आउँछ त्यो सायद त्यही ठेगानामा जवाफ दिने जुनसुकैसँग कुरा गर्दै होला।

WireGuard जडान पढ्नुहोस्, wg-quick फाइल होइन

wg-quick फाइल शेल अर्थ भएको ढाँचा हो; आयात गरिएको जडान सेटिङको समूह हो। PrivateKey इन्टरफेसको निजी कुञ्जी बन्छ, Address एक वा धेरै IPv4 र IPv6 ठेगाना बन्छन्, DNS NetworkManager को resolver गुणमा म्याप हुन्छ, MTU wireguard.mtu मा म्याप हुन्छ (wg-quick को आफ्नै पूर्वनिर्धारित 1420 हो), र प्रत्येक peer ब्लक सार्वजनिक कुञ्जी, endpoint, अनुमति दिइएका IP र persistent keepalive भएको peer प्रविष्टि बन्छ। के भण्डारण भयो nmcli --show-secrets connection show wg0 ले छाप्नुहोस्; peer सूची त्यो आउटपुटमा नदेखिए keyfile पढ्नुहोस्:

sudo sed -n '/^\[wireguard\]/,/^\[/p' /etc/NetworkManager/system-connections/wg0.nmconnection

जो बाँच्दैन त्यो wg-quick को शेल आधा हो। PreUp, PostUp, PreDown, PostDown र Table ती उपकरणको व्यवहार हुन्, WireGuard इन्टरफेसका गुण होइनन्, त्यसैले आयातपछि तिनलाई कसैले चलाउँदैन। यदि मूलले Table = off प्रयोग गर्यो पूर्वनिर्धारित रुटलाई छुन नदिन, नयाँ NetworkManager संस्करणहरूले त्यही उद्देश्यका लागि ip4-auto-default-route र ip6-auto-default-route दिन्छन्; तिनलाई स्पष्ट रूपमा सेट गर्नुहोस्, जडान स्क्रिप्टजस्तै व्यवहार गर्छ भनी मान्नुको सट्टा। जो हुक अनुकूलित रुट धकेल्थ्यो त्यसलाई त्यो रुट जडानको राउटिङ सेटिङमा चाहिन्छ, नत्र त्यो केवल हराउनेछ।

जडानलाई ठ्याक्कै एक मालिक दिनुहोस्

क्लासिक पछिको विफलता भनेको अर्को बुटसम्म चल्ने र त्यसपछि लुपमा पर्ने जडान हो। सामान्यतया [email protected] अघिल्लो प्रयोगबाट अझै सक्षम थियो, वा विक्रेताको क्लाइन्टले आफ्नै डेमन चलाइरहेको थियो, र दुई मालिकले एउटै गन्तव्यका लागि रुट र DNS लेखिरहेका थिए। NetworkManager ले resolver आफ्नै बाटोबाट सेट गर्छ, wg-quick ले resolvconf मार्फत लेख्छ, र अन्तिम लेख्ने जित्छ — त्यसैले नाम विश्लेषण चल्छ, त्यसपछि रोकिन्छ, त्यसपछि फेरि चल्छ। systemctl status wg-quick@wg0, nmcli connection show --active र ip link show type wireguard जाँच्नुहोस्, त्यसपछि दोस्रो मालिकलाई अक्षम गर्नुहोस्, त्यसको metric ट्युन गर्नुको सट्टा।

यदि तपाईंलाई साँच्चै दुवै चाहिन्छ भने, तिनलाई छुट्टै इन्टरफेस र नमिल्ने अनुमति दिइएका IP दिनुहोस्, र ठ्याक्कै एउटाले पूर्वनिर्धारित रुट स्थापना गरोस्। फरक metrics भएका दुई पूर्वनिर्धारित रुट split tunnel होइनन्; यो दौड हो जुन दोस्रो सुरु हुने सेवाले निर्णय गर्छ। र पुनः जोडिएपछि लागू अवस्था फेरि हेर्नुहोस् — resolver को एकपटकको म्यानुअल सम्पादन जसले काम चलाउँछ, आयात पूर्ण भएको प्रमाण होइन।

ट्राफिकले प्रमाणित गर्नुहोस् र पुनः सुरु सहनुहोस्

जडान nmcli connection up "Work VPN" ले माथि उठाउनुहोस्, त्यसपछि आइकनमा भरोसा गर्नुको सट्टा अवस्था, ठेगाना र रुट पढ्नुहोस्: nmcli device show wg0 | grep -E 'GENERAL.STATE|IP4.ADDRESS|IP4.ROUTE', ip route show default र केवल सुरुङभित्रै समाधान हुने नामको वास्तविक प्रश्न। ह्यान्डशेक वा सफल ping ले केवल क्रिप्टोग्राफी चल्छ भनी प्रमाणित गर्छ; यसले फर्वार्डिङ, split tunnel उपसर्ग वा निजी DNS बारे केही भन्दैन, र सामान्यतया यही भागहरू बिग्रन्छन्।

त्यसपछि पुनः सुरु गर्नुहोस् र दोहोर्याउनुहोस्। autoconnect व्यवहार, बदलिएको इन्टरफेस नाम र यन्त्रपछि लोड हुने प्लगइन — यी सबै ती विफलता हुन् जो केवल सफा बुटमा देखिन्छन्। journalctl -u NetworkManager -b --no-pager | tail -n 40 ले देखाउँछ कि डेमनले यो बुटमा यो जडानसँग के गर्यो। दोस्रो कम्प्युटरका लागि keyfile प्रतिलिपि गर्नुहोस् र root स्वामित्वमा 600 मोडसँग राख्नुहोस्, वा OpenVPN का लागि nmcli connection export प्रयोग गर्नुहोस् र बनेको .ovpn फेरि आयात गर्नुहोस् — निर्यात मार्गको WireGuard मा समतुल्य छैन, त्यसैले त्यो दिशा फाइल प्रतिलिपि वा संरक्षित मूलबाट नयाँ आयात हो।

छोटो संस्करण, क्रममा: प्लगइन वा NetworkManager संस्करण पुष्टि गर्नुहोस्, निरपेक्ष बाटोबाट आयात गर्नुहोस्, secret झन्डासहित पार्स गरिएका सेटिङ पढ्नुहोस्, OpenVPN निर्यातको मूलसँग तुलना गर्नुहोस्, WireGuard पक्षमा हुक र रुट जाँच्नुहोस्, कुनै पनि दोस्रो मालिक अक्षम गर्नुहोस्, र पुनः सुरु पछि नाम विश्लेषण र रुट तालिका प्रमाणित गर्नुहोस्। जब जडानले यी सबै पास गर्छ, तब यसलाई सुरु गर्ने प्रोफाइल फाइल संरक्षित भण्डारमा फर्कन सक्छ।

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