VPN को कमांड लाइन से NetworkManager में फाइल को कॉन्फ़िगर करें


15

एक .ovpnGUI टूल के माध्यम से NetworkManager पर फ़ाइलें आयात कर सकता है nm-connection-editor(राइट क्लिक करें nm-appletऔर क्लिक करें Edit connections): Add-> Import a saved VPN configuration...

मेरा लक्ष्य एक ही काम करना है लेकिन कमांड लाइन के माध्यम से जैसे टूल का उपयोग करना nm-cli। क्या यह किसी तरह संभव है?


क्या आपने इसके साथ कोई प्रगति की? मैं एक ही काम करने की कोशिश कर रहा हूं, इसलिए अगर मुझे काम मिल जाता है तो मैं एक जवाब दूंगा।
डेविड मेसन

@DavidMason, दुर्भाग्य से, नहीं। मैं आपके समाधान की प्रतीक्षा कर रहा हूं।
पेट्रुशका

मैं एक समाधान के लिए भी सक्रिय रूप से देख रहा हूं।
रास्पबेगी

मैं कमांड लाइन द्वारा आयात करने के लिए एक समाधान देखना चाहता हूं
davidbaumann

जवाबों:


12

मैं nmcli संस्करण 1.2.6 का उपयोग कर रहा हूं और मैं इसका उपयोग ओपनवीएनएन कॉन्फ़िगरेशन आयात करने के लिए कर सकता हूं।

nmcli connection import type openvpn file ~/myconfig.ovpn

अभी तक NetworkManager UI में भी मेरा vpn दिखाई दे रहा है।

कनेक्शन को और कॉन्फ़िगर करने के लिए आप showकनेक्शन नाम का पता लगाने के लिए और modifyकॉन्फ़िगरेशन मूल्यों को बदलने के लिए कमांड का उपयोग कर सकते हैं ।

nmcli connection show
nmcli connection modify myvpnconnectionname +vpn.data username=myusername

किसी भी विचार का उपयोग कैसे करें -vpn.dataयदि मैंने गलती से कॉन्फ़िगरेशन डेटा में कुछ गलत जोड़ा है?
32r34wgf3e

@ 32r34wgf3e नहीं जानते। जब मेरा कॉन्फ़िगरेशन गलत है, तो मैं इसे हटा देता हूं और अपने उत्तर में उल्लिखित कमांड लाइन से एक नया सेट अप करता हूं। युक्ति: अपने आदेशों को बाद में पुन: उपयोग के लिए पाठ फ़ाइल में संग्रहीत करें।
बस्तियन

5

एक वर्कअराउंड I जिसका उपयोग डेबियन-आधारित सिस्टम पर nmcli के साथ आने वाली कार्यक्षमता की कमी को दूर करने के लिए होता है, ताकि मौजूदा वीपीएन कॉन्फिगर फाइल को / etc / NetworkManager / system-settings फ़ोल्डर में एक नई फाइल (रूट के रूप में) की प्रतिलिपि बनाने के लिए कमांड्स का उपयोग किया जा सके। निश्चित रूप से) एक ही फ़ोल्डर में और नई प्रति में उपयोगकर्ता, गेटवे, उपयोगकर्ता नाम और पासवर्ड मान के लिए स्ट्रिंग प्रतिस्थापन करें। फिर मैं परिवर्तनों को लागू करने के लिए नेटवर्क प्रबंधक को पुनरारंभ करता हूं।

उदाहरण के लिए:

एक सामान्य कॉन्फ़िगरेशन फ़ाइल / etc / NetworkManager / सिस्टम-सेटिंग फ़ोल्डर इस तरह दिख सकता है:

[connection]
id=<<id>>
uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
type=vpn
permissions=user:<<permissions_user>>:;
autoconnect=false

[vpn]
password-flags=0
service-type=org.freedesktop.NetworkManager.pptp
require-mppe-128=yes
mppe-stateful=yes
user=<<user>>
refuse-eap=yes
refuse-chap=yes
gateway=<<gateway>>
refuse-pap=yes

[vpn-secrets]
password=<<password>>

[ipv4]
method=auto

... तो आप बस एक नई कॉन्फ़िग फ़ाइल बना सकते हैं जो ऊपर के समान दिखती है ...

cd /etc/NetworkManager/system-settings
cp "existing-working-vpn-config-file" "new-vpn-config-file"

... इसके बाद '<< >>' मानों को अपनी वीपीएन सेटिंग्स के साथ बदलें, जैसे:

sed -i "s/<<permissions_user>>/my_permissions_user/g" new-vpn-config-file
sed -i "s/<<user>>/my_user/g" new-vpn-config-file
sed -i "s/<<gateway>>/my_gateway/g" new-vpn-config-file
sed -i "s/<<password>>/my_password/g" new-vpn-config-file

... और फिर अंत में निम्नलिखित कमांड के माध्यम से नेटवर्क मैनेजर को पुनः आरंभ करें:

service network-manager restart

नोट: UUID सेटिंग कोई फर्क नहीं पड़ता, भले ही यह गैर-अद्वितीय हो। पता नहीं क्यों। सामान काम करता है।

इसके अलावा, यदि आप कॉपी करने के बजाय एक नई फ़ाइल जोड़ रहे हैं, तो सुनिश्चित करें कि फ़ाइल की अनुमतियाँ 600 (पढ़ने और लिखने) पर सेट हैं, और मालिक रूट है।

इसे एक शॉट दें और मुझे बताएं कि आप क्या सोचते हैं। यह मेरे लिए काम करता है, सभी कमांड लाइन के माध्यम से।


0

मैंने इसे रूट से चलाने के लिए उपयोग किया है:

USER=japie
runuser -l $USER -c "sudo -S nmcli connection import type openvpn file ~/vpn_clients/flappie3-TO-IPFire.ovpn"

कनेक्शन 'flappie3-TO-IPFire' (26d0b28e-9212-4e71-90dc-3911ddf231e5) सफलतापूर्वक जोड़ा गया।


runuserकेवल उपयोगकर्ता का उपयोग करने के लिए उपयोग क्यों करें sudo? यह कुछ भी पहले से ही जैसे में उल्लेख नहीं नहीं जोड़ता है कमांड लाइन से NetworkManager को आयात VPN कॉन्फ़िग फ़ाइलें
Kusalananda

लैपटॉप नामांकन स्क्रिप्ट रूट के रूप में चलाता है
djieno

बेशक, और आप करने के लिए स्विच japieका उपयोग कर runuser, लेकिन फिर आप के साथ जड़ में वापस स्विच sudo...
Kusalananda

यदि आप "sudo ..." नहीं जोड़ते हैं, तो वर्तमान उपयोगकर्ता / japie के पास nmcli चलाने के लिए पर्याप्त अधिकार नहीं हैं
djieno

तो उस उपयोगकर्ता के साथ runasतब तक स्विच न करें ... संक्षेप में मैं यह कह रहा हूं कि इसके साथ पर्याप्त होना चाहिए nmcli connection import type openvpn file ~japie/vpn_clients/flappie3-TO-IPFire.ovpn
Kusalananda
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.