नेटवर्क-मैनेजर के साथ वीपीएन से स्वचालित रूप से कैसे जुड़ें


18

मेरे पास एक काम करने वाला वीपीएन कनेक्शन है। अब मैं चाहता हूं कि यह वीपीएन कनेक्शन स्वचालित रूप से सक्रिय हो जाए जब मैं एक निश्चित वायरलेस नेटवर्क में हूं। क्या नेटवर्क-मैनेजर-एप्लेट का उपयोग करने वाला एक गैर-घुसपैठ चित्रमय तरीका है? अगर मुझे सही ढंग से याद है कि यह कुछ समय के लिए काम करता है और अब और नहीं करता है।

मैंने हर बार पासवर्ड इनपुट न करने के लिए सभी उपयोगकर्ताओं के लिए वायरलेस-कनेक्शन को प्रश्न में उपलब्ध कराया।

सीएलआई कार्यक्रम का उपयोग sroecker-PPA से हाइब्रिड-प्रामाणिक सक्षम (सिस्को वीपीएन-क्लाइंट संगत) के साथ vpnc है

संपादित करें: मैं अब और (क्योंकि एडुरोम के कारण) उत्तर की कोशिश कर सकता हूं और चूंकि कोई जवाब नहीं है कि मुझे बहुत सारे वोट मिल रहे हैं, मैं बस इसे छोड़ रहा हूं और अब तक किसी के लिए अनुत्तरित नहीं हूं तो मैं इसे स्वीकार करने वाला हूं।


आप इस के साथ कैसे आ रहे हैं?
rlemon

मुझे इसकी काफी समय से आवश्यकता नहीं थी। हो सकता है कि नए विश्वविद्यालय में अप्रैल आए।
टर्बो

Possibel डुप्लिकेट? askubuntu.com/questions/86365
जीवाश्म

@fossfreedom बिल्कुल डुप्लिकेट नहीं है क्योंकि मेरा प्रश्न openconnect के बजाय vpnc के बारे में है।
टर्बो

मैंने अपने इंटरनेट कनेक्शन को ब्लॉक करने के तरीके पर एक छोटा सा ब्लॉक पोस्ट लिखा जब तक कि वीपीएन ऊपर और चल रहा है: mentat.za.net/blog/2015/01/24/vpn-only-internet
Stefan van der Walt

जवाबों:


18

con-f-useलंबे समय से चली आ रही बग के कारण समाधान का सुझाव दिया जाना चाहिए, लेकिन काम नहीं करना चाहिए:

https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/280571

हालांकि वर्कअराउंड हैं। हाल ही में NetworkManager संस्करणों के लिए, एक कमांडलाइन यूटीलिटी है, nmcliजिसे संपादित किया जा सकता है और कुछ इस तरह बचाया जा सकता है /etc/NetworkManager/dispatcher.d/vpn-up:

#! /bin/bash

REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"


activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
    nmcli con up id "${VPN_CONNECTION_NAME}"
fi

[मैंने इसका परीक्षण नहीं किया है - कृपया परिणाम के अनुसार परीक्षण और संपादन के लिए स्वतंत्र महसूस करें]

देखें: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established अधिक जानकारी है।


ध्यान दें कि 13.04 में मुझे उस स्क्रिप्ट को /etc/network/if-up.d में डालना था और उससे बचने के लिए askubuntu.com/questions/198136/… के अनुसार फिक्स / etc / NetworkManager / system-कनेक्शन / कनेक्शन-नाम लिखा था। वैध वीपीएन सीक्रेट्स "एरर
ओलेगायच

आर्क विकी हैक वास्तव में काम करता है! मैंने 11 वीं 2013 को आर्च विकी पर स्क्रिप्ट की कोशिश की, और इसे 'nmcli ...' से 'su [उपयोगकर्ता] -c "nmcli ..." पर संशोधित करने से काम नहीं चलता! विकी के निर्देशों का पालन करें और chmod + x;) को न भूलें।

ह्यूगो एडेन ( Bugs.launchpad.net/ubuntu/+source/network-manager/+bug/280571 ) द्वारा उल्लेखित बग को 5 महीने पहले ऊपर की ओर तय किया गया है। हालाँकि, मैं अभी भी इसे सटीक में अनुभव कर रहा हूँ ... क्या देता है?
19

यह मेरे लिए काम नहीं करता था, इसलिए मैंने गौर करने का फैसला किया /var/log/syslog, और निम्नलिखित त्रुटि देखी: Mar 4 13:49:51 oleg-HP nm-dispatcher.action: Cannot execute /etc/NetworkManager/dispatcher.d/vpn-up ': मालिक द्वारा निष्पादन योग्य नहीं।' समाधान यह होगाsudo chmod 755 /etc/NetworkManager/dispatcher.d/vpn-up
ओलेग

8

उबंटू ट्रस्टी में 14.04 वीपीएन ऑटो सेव स्टोर को जीयूआई पर व्यक्तिगत रूप से सहेजे गए वाई-फाई सेटिंग्स पर कनेक्ट करता है। सिस्टम सेटिंग्स - नेटवर्क - इच्छुक वाई-फाई या लैन - सेटिंग्स (सामान्य टैब) की जांच करें - "वीपीएन से ऑटो कनेक्ट ..." चुनें


3

अगर मुझे सही ढंग से याद है कि यह कुछ समय के लिए काम करता है और अब और नहीं करता है।

  • यह स्पष्ट हो सकता है, लेकिन कभी-कभी मैं इसके बारे में नहीं सोचता। क्या आपने पुनर्स्थापना का प्रयास किया जैसे:

    sudo apt-get purge network-manager-vpn sudo apt-get install नेटवर्क-मैनेजर-वीपीएनसी उसके बाद: यहाँ छवि विवरण दर्ज करें

अब मैं चाहता हूं कि यह वीपीएन कनेक्शन स्वचालित रूप से सक्रिय हो जाए जब मैं एक निश्चित वायरलेस नेटवर्क में हूं।

  • जब आपके उपयोगकर्ता गलत नेटवर्क में हों, तो संदेशों को "कनेक्ट नहीं कर सकता" को दबाने का एक तरीका है, लेकिन याद नहीं है कि यह कैसे चला गया। मैं ग्राफ़िकल तरीके से अपने आप कनेक्ट होने का कोई अन्य तरीका नहीं देखता। हो सकता है कि आपको जब wlan-network में कनेक्ट करने वाली स्क्रिप्ट लिखनी हो।

उम्मीद है कि मदद की।


मैं अभी भी वास्तव में यह परीक्षण करने के लिए चारों ओर नहीं आया हूं। मैं इसका उत्तर दूंगा जब मैं करूंगा। वादा।
टर्बो

मेरे अनुभव में यह वास्तव में काम नहीं करता है। मेरा मानना ​​है कि यह NetworkManager में एक बग है
Conor Rynne

3
हां यह टूट गया है, यहां तक ​​कि सटीक में भी। यह स्वचालित रूप से O_o
eggonlegs

युप - टूट गया। काम नहीं करता (Ubunutu 12.04)।
user48956

3

मैं मेरे लिए काम कर रहे इस निम्नलिखित समाधान की पुष्टि कर सकता हूं। मैं Ubuntu 14.04 LTS चला रहा हूं।

मैं शटडाउन आइकन और फिर सिस्टम सेटिंग्स पर गया।

जब सेटिंग्स स्क्रीन खुलती है, तो मैं 'नेटवर्क' और वाईफाई नेटवर्क पर गया था जिसके साथ मैं जुड़ा हुआ था। नेटवर्क के नाम के एक तरफ एक छोटा तीर है।

सेटिंग्स स्क्रीन शॉट, इसकी अरबी में

उस आइकन पर क्लिक करें और आपको यहां "सेटिंग" या "विकल्प" (या कुछ समान) नामक एक विकल्प देखना चाहिए:

सेटिंग्स पर क्लिक करें

जब अगली विंडो खुलती है, तो बस 'सामान्य' टैब पर जाएं और आपको एक विकल्प देखना चाहिए जो आपको वीपीएन से स्वचालित रूप से कनेक्ट करने का विकल्प देता है। उस वीपीएन को चुनें जिसे आप इस वाईफाई से कनेक्ट करना चाहते हैं, और बूम! हर बार जब आप इस नेटवर्क से जुड़ते हैं, तो उबंटू भी आपको उस वीपीएन से जोड़ देगा। :)

मेरे लिए इसका काम करना। मुझे उम्मीद है कि यह सभी के लिए भी काम करेगा। किसी भी प्रकार के पाठ संपादक या कोड संपादक या कुछ भी करने की आवश्यकता नहीं है।


0

निम्नलिखित पायथन लिपि का उपयोग करें # 1547663

स्क्रिप्ट का पहला पैरामीटर NetworkManager में वीपीएन कनेक्शन नाम है और दूसरा कॉमा नेटवर्क के अलग-अलग नाम हैं जिन्हें अनदेखा किया जाना चाहिए (जैसे घर पर वीपीएन कनेक्शन का उपयोग करना बेकार है)।

बूट समय पर इसे स्थापित करने और इसे चलाने के लिए उदाहरण:

git clone git://gist.github.com/1547663.git /home/user/autovpn/
echo "python /home/user/autovpn/autovpn.py 'myvpn' 'Auto homenetwork,Auto worknetwork' > /var/log/autovpn.log&" > /etc/rc.local
/etc/rc.local

अब यदि आप एक नेटवर्क (या तो वाईफाई या ईथरनेट) से कनेक्ट करते हैं, तो यह वीपीएन कनेक्शन को सेटअप करने का भी प्रयास करेगा।


1
मुझे लगता है कि यह दृष्टिकोण कम सुरुचिपूर्ण है, क्योंकि एक पृष्ठभूमि प्रक्रिया इस समय के लिए सक्रिय है, जबकि यह @hugoheden के उत्तर की तरह घटना-संचालित हो सकती है।
gertvdijk

यह उसके उत्तर से अधिक है: यह वीपीएन फिर से कनेक्ट करता है और उन मामलों को भी
देखता है

0

आपको किसी भी डिस्पैचर स्क्रिप्ट की आवश्यकता नहीं है! 14.04 (भरोसेमंद तहर) में आपको NetworkManager GUI में ऑटोकनेक्ट कट विकल्प सेट करने के बाद बस निम्नलिखित कदम उठाने होंगे।

वीपीएन-कनेक्शन के लिए कॉन्फिग फाइल में वीपीएन-सीक्रेट्स को स्पष्ट रूप से स्टोर करें /etc/NetworkManager/system-connections/YourVPNConnectionName

आप इसे सेटिंग IPSec secret-flags=0और Xauth password-flags=0कॉन्फ़िगरेशन फ़ाइल में प्राप्त कर सकते हैं । इसके बाद NetworkManager GUI पर जाएं और फिर से VPN-कनेक्शन सेटिंग्स को सेव करें। अब [vpn-secret] नामक एक सेक्शन को विन्यास फाइल में मौजूद होना चाहिए। इसे डबलचेक करें और ऑटोकनेक्शन को अभी काम करना चाहिए!


0

भले ही मैन पेज nmcli con statusएक मान्य कमांड के रूप में सूचीबद्ध है , उपरोक्त समाधान Hugo Hedenएक त्रुटि देता है"Error: Object 'status' is unknown, try 'nmcli help'"

मैं nmcli 1.2.2 ( nmcli -v) का उपयोग कर रहा हूं और मैंने इसके लिए निम्न का परीक्षण और संशोधन किया है /etc/NetworkManager/dispatcher.d/vpn-upऔर यह एक आकर्षण की तरह काम करता है।

#! /bin/bash

REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"


default_conn=$(nmcli con show --active | grep "${REQUIRED_CONNECTION_NAME}")
vpn_conn=$(nmcli con show id | grep "${VPN_CONNECTION_NAME}")
if [ "${default_conn}" -a ! "${vpn_conn}" ];
then
    nmcli con up id "${VPN_CONNECTION_NAME}"
fi

नोट: आप nmcli con showसभी कनेक्शन नामों को देखने के लिए उपयोग कर सकते हैं क्योंकि वे हमेशा वैसा ही नहीं होते हैं जैसा कि नेटवर्क कनेक्शन GUI में सूचीबद्ध है


ओपी उबंटू के बारे में पूछ रहा है।
फॉस्क्लिनक्स

काली और उबंटू दोनों डेबियन आधारित हैं इसलिए समाधान अक्सर समान होता है। मैं अभी आगे बढ़ा और इसे एक Ubuntu 15.10 उदाहरण पर परीक्षण किया और nmcli त्रुटि वैसी ही थी जैसा मैंने ऊपर उल्लेख किया है। समाधान के रूप में अच्छी तरह से ही काम किया। 15.10 बॉक्स पर स्थापित nmcli संस्करण 1.0.4 है।
jw00druff

0

यदि आप टर्मिनलों को प्राथमिकता देते हैं, तो आप उपयोग कर सकते हैं nmcli, मैंने इसे निम्न आदेशों का उपयोग करके किया है:

सबसे पहले, उस वीपीएन कनेक्शन को ढूंढें और खोलें जिसे आप अपडेट करना चाहते हैं

➜  ~ nmcli c show --active |grep vpn
MyVPN           115ae594-aa91-4d13-8c92-421af245f935  vpn     wlp61s0         
➜  ~ nmcli c edit MyVPN

यह nmcli प्रॉम्प्ट खोलेगा, यहाँ से आप मानों को क्वेरी कर सकते हैं और उन्हें सेट कर सकते हैं, जैसे:

===| nmcli interactive connection editor |===
...
nmcli> print connection.autoconnect
connection.autoconnect: no
nmcli> set connection.autoconnect yes
nmcli> save persistent
Saving the connection with 'autoconnect=yes'. That might result in an immediate activation of the connection.
Do you still want to save? (yes/no) [yes] yes
Connection 'MyVPN' (115ae594-aa91-4d13-8c92-421af245f935) successfully updated.

और आपको किया जाना चाहिए!


0

आप अपने प्राथमिक कनेक्शन में "सेकेंडरी" फ़ील्ड का उपयोग करके वीपीएन प्रोफ़ाइल का यूआईडी जोड़ सकते हैं

उदाहरण के लिए, /etc/NetworkManager/system-connections/Wired

[connection]
id=Wired
uuid=95ad54f8-9d72-3e65-a4a7-b106aa310eed
type=ethernet
secondaries=66ecf287-8b26-413b-86f2-caca7608bc67;

संदर्भ https://developer.gnome.org/NetworkManager/stable/nm-settings.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.