ओपन वीपीएन विंडोज क्लाइंट का उपयोग करके कनेक्ट करने के लिए तर्क


13

क्या कमांड प्रॉम्प्ट का उपयोग करके प्रोग्राम तर्कों की आपूर्ति करके इसे एक पूर्वनिर्धारित कॉन्फ़िगरेशन (.ovpn) का उपयोग करके कनेक्ट करने के लिए एक विंडोज़ ओपनवीपीएन क्लाइंट शुरू करना संभव है । या विंडोज़ शॉर्टकट आदि से खुलने पर शॉर्टकट में तर्कों को निर्दिष्ट करना।

जवाबों:


18

इसे नीचे के रूप में हल किया गया:

विंडोज़ कमांड प्रॉम्प्ट से-

यहाँ छवि विवरण दर्ज करें

यह opn vpn gui क्लाइंट को सीधे कनफिगर में निर्दिष्ट कनेक्शन से जोड़ने की शुरुआत करने जा रहा है।


3
आपको लगता है कि अगर Openvpn-gui.exe पहले से ही शुरू हो गया है तो उत्तर से काम नहीं चलेगा।
जन

9

आपको लगता है कि अगर openvpn-gui.exeपहले से ही शुरू हो गया है तो उत्तर से काम नहीं चलेगा। इस पर ध्यान दें: जब मैं घर पर नहीं हो तो OpenVPN कनेक्शन को स्वचालित रूप से शुरू करने के लिए बनाई गई एक छोटी बैच फ़ाइल से अनुभाग चलाएँ:

rem This script is fired from Task Scheduler (using Custom Event filter) when I am NOT at home (not connected to home network)
rem  so check if my home NAS is already pingable, because maybe old/previous OpenVPN connection is still open
rem    if not then start OpenVPN connection
rem    if yes than do nothing
ping -n 1 192.168.10.100 > testping.txt
findstr /r /c:"Reply from \d*.\d*.\d*.\d*.* bytes=\d*.*time[<=]\d*.* TTL=\d*" testping.txt
IF ERRORLEVEL 1 goto run
rem do nothing because NAS is pingable
goto finished
:run
rem be sure to kill previous (closed) openvpn process so reconnecting actually works!
taskkill.exe /F /IM openvpn.exe
taskkill.exe /F /IM openvpn-gui.exe
timeout 1
start /b "" "C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect nas_at_home.ovpn
:finished

1
एक उत्कृष्ट जवाब के लिए धन्यवाद, लेकिन मैं अपने विंडोज के काम को एक मुट्ठी
carlin.scott

5

फ्लावरिंग के उत्तर के अतिरिक्त, आप उस फ़ोल्डर को निर्दिष्ट कर सकते हैं जिसमें आपकी ओवीपीएन फ़ाइल रहती है, शायद उपयोगकर्ता अंतरिक्ष में निजी कुंजी डेटा संग्रहीत करने के लिए। उसके लिए, उपयोग करें config_dir:

openvpn-gui.exe --connect "client.ovpn" --config_dir "C:\Users\Foo\Documents\protected_crypto_data"

3

यहाँ एक सरल उदाहरण है, यदि आप एक से अधिक वीपीएन से जुड़ना चाहते हैं:

"C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect vpn1.ovpn --connect vpn2.ovpn

यह काम नहीं करेगा, अगर openvpn-gui.exeचल रहा है।


1

यकीन नहीं होता कि यह हाल ही में जोड़ा गया था, लेकिन एक "--कमांड" विकल्प है जिसका उपयोग चल रहे गुई उदाहरण के लिए कमांड भेजने के लिए किया जा सकता है।
तो अब आप कर सकते हैं
openvpn-gui.exe --command connect config.ovpn

कमांड लाइन पर जाकर और रन करके openvpn-gui.exe के विकल्प देखें
openvpn-gui.exe --help


1

मेरे पास समान समस्याएं थीं, और यूआई को फिर से नहीं खोलने के लिए स्क्रिप्ट की भी आवश्यकता थी अगर यह पहले से जुड़ा हुआ था, और कनेक्शन समाप्त होने की प्रतीक्षा करने के लिए।

मुझे एक अच्छा समाधान नहीं मिला, इसलिए मैंने अपना लिखा। यदि यह दूसरों के लिए उपयोगी है तो यह यहाँ है:

https://www.pretentiousname.com/miscsoft/index.html#ConnectOpenVPN

विंडोज विस्टा और ऊपर; नि: शुल्क; C ++ स्रोत कोड शामिल है।

(विंडोज बिल्ट-इन वीपीएन क्लाइंट के लिए भी एक समान, पुराना टूल है।)

उदाहरण उपयोग, / क्रिया स्विच के साथ जो कि यह क्या कर रहा है के बारे में विस्तृत जानकारी आउटपुट करता है:

C: \> ConnectOpenVPN.exe / Connect / अनुकूलक "OpenVPN" / config "MyVPN.ovpn"

ConnectOpenVPN: "OpenVPN" नेटवर्क एडाप्टर की जाँच स्थिति ...
ConnectOpenVPN: "OpenVPN" नेटवर्क एडेप्टर जुड़ा नहीं है।
ConnectOpenVPN: रनिंग: "C: \ Program Files \ OpenVPN \ bin \ openvpn-gui.exe" --command कनेक्ट "MyVPN.ovpn"
ConnectOpenVPN: OpenVPN GUI के आने का इंतजार ...
ConnectOpenVPN: OpenVPN GUI मिला।
ConnectOpenVPN: OpenVPN GUI को बंद करने की प्रतीक्षा ...
ConnectOpenVPN: OpenVPN GUI बंद।
ConnectOpenVPN: वीपीएन कनेक्शन की पुष्टि / प्रतीक्षा की जा रही है ...
ConnectOpenVPN: कनेक्टेड।
ConnectOpenVPN: कनेक्ट किए गए कार्य को पूरा करें।

मुझे उम्मीद है कि यह अन्य लोगों के लिए उपयोगी है।


0

आप बदल कर @ जान का जवाब बेहतर कर सकते हैं:

ping -n 1 192.168.10.100 > testping.txt
findstr /r /c:"Reply from \d*.\d*.\d*.\d*.* bytes=\d*.*time[<=]\d*.* TTL=\d*" testping.txt

सेवा:

ping 192.168.10.100 -n 1 | findstr /r /c:"Reply from \d*.\d*.\d*.\d*.* bytes=\d*.*time[<=]\d*.* TTL=\d*" && goto :finished

इस तरह आपको एक अस्थायी फ़ाइल बनाने की आवश्यकता नहीं है।

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