Wie trenne ich mich von OpenVPN?


29

Ich verbinde mich über VPNBook-Server und es funktioniert gut mit diesem Befehl:

 sudo openvpn --config /etc/openvpn/vpnbook-udp-53.ovpn --auth-user-pass /etc/openvpn/password.txt

Aber ich kann einfach nicht herausfinden, wie ich es stoppen kann, ohne einen Neustart durchzuführen.

Ich habe versucht service openvpn stopund /etc/init.d/vpnbook stop, aber das scheint es nicht zu beeinflussen.


Wie genau mit ifconfig?
Adam

Welches wäre es? eth0, lo, tun2 oder wlan0
Adam

Einfach> sudo /etc/init.d/network-manager restart <ausführen
Qasim

Ich bin neugierig, wenn ein VPN auf diese Weise gestartet wird, wird es nicht im Netzwerkmanager angezeigt. Ich habe den Netzwerkmanager immer nur zum Verbinden und Trennen benutzt und habe derzeit kein VPN zum Testen aber gefragt.
Dennis

Antworten:


45

Dieser Befehl funktioniert definitiv für mich und sollte auch für Sie funktionieren.

sudo killall openvpn

sudo apt-get install psmisc
Könnte

Ich musste -9 auf Ubuntu 16.04 töten (ja ich weiß ...)
Gregor

11

Die erfolgreichen Schritte in meinem Fall waren:

# stop the service    
$ sudo /etc/init.d/openvpn stop

# find the process if for some reason it keeps running
$ lsof -i | grep openvpn

# kill the proccess(s) by its PID
$ kill -9 <PID>

# if necessary restart the service again
$ sudo /etc/init.d/openvpn start


Aus irgendeinem Grund killall -SIGIN openvpnhat bei mir nicht funktioniert, aber die obigen Schritte haben funktioniert.


Nun, das ist meiner Meinung nach die beste Antwort. Tötungsprozess ist die seltsame Methode, aber die Aufforderung, den Dienst zu stoppen, sollte alles tun, was nötig ist.
Sopalajo de Arrierez

Im Allgemeinen sollten Sie -9-Dinge nicht "töten", bevor Sie nicht versucht haben, einen Interrupt zu starten oder ihn auf andere Weise sauber zu existieren. Programme können eine Unterbrechung abfangen und eine Bereinigung durchführen, aber Signal neun (Begriff) nicht abfangen. Insbesondere im Fall von openvpn -9können die Post-Skripte nicht ausgeführt werden, wenn Sie es mit beenden, und es ist sehr wahrscheinlich, dass jetzt ungültige Routen herumliegen. Im Idealfall kill -SIGINTwarten Sie einige Sekunden, bis die PID beendet ist, und gehen Sie dann nur mit -SIGTERM/, -9wenn sie vorher nicht beendet wurde.
Dannysauer

4

Versuche dies

killall -SIGINT openvpn

Weitere Informationen zu verschiedenen Signalen erhalten Sie hier: http://openvpn.net/index.php/open-source/documentation/howto.html#control


killall -SIGINT openvpnopenvpn (15360): Operation nicht erlaubt openvpn: kein Prozess gefunden sudo killall -SICINT openvpn SICINT: unbekanntes Signal; killall -l listet Signale auf.
Adam

1
sudo killall openvpnin einem neuen terminal hat bei mir gearbeitet.
Adam

@ Adam: Es ist SIGINTnichtSICINT
Dzamo Norton

Die Befehle kill und killall senden standardmäßig SIGTERM, was in der Dokumentation den gleichen Effekt hat wie SIGINT. Beides würde also gleichwertig funktionieren - wenn es richtig geschrieben wäre. ;)
dannysauer

3

Drücken Sie einfach CTRL+ Cim Terminal Sie OpenVPN gerade erst begonnen.


2
Was ist, wenn es mit dem -daemon (Hintergrund) Flag gestartet wurde? Das ist in diesem Fall nicht möglich.
mr-sk

1
Außerdem bleibt 'tun0' als Schnittstelle, sodass ein Neustart nicht möglich ist, ohne dass ein Neustart oder eine Bearbeitung der Systemkonfigurationsdatei ausgeführt wird.
Dennis

1
Was ist, wenn das Terminal versehentlich geschlossen wurde? ?
Varun

@ Tennis ifconfig tun0 downhilft in diesem Fall.
Gnysek

2

Falls sudo killall openvpnder Job nicht beendet wird (ich habe es ein paar Mal erlebt), wäre eine scharfe und fatale Lösung:

pgrep openvpn | xargs sudo kill -9

0

nach dem Laufen sudo killall openvpnoder service openvpn stopdie virtuellen Schnittstelle „tun0“ bleiben würde in Routing - Tabelle geöffnet und referenziert, so würden tatsächlich im Zusammenhang Verbindungen seit openvpn verloren Dienst getötet wird.

Die Lösung besteht darin, diese virtuelle Verbindung nach dem Beenden des OpenVPN-Dienstes zu löschen, da sie jedes Mal erstellt wird, wenn eine Verbindung zum OpenVPN-Dienst hergestellt wird.

Sie müssen also die folgenden Befehle ausführen, um openvpn zu trennen:

$ sudo killall openvpn
$ sudo ip link delete tun0

-1

sudo update-rc.d openvpn deaktivieren

Oder bearbeiten Sie die Konfigurationsdatei in / etc / default / openvpn

sudo nano / etc / default / openvpn

Und kommentiere die Zeile aus:

#AUTOSTART="none"

So sieht es aus:

AUTOSTART="none"

Dann musst du laufen:

sudo service openvpn start < vpn-name > um das VPN manuell zu starten.

sudo service openvpn stop < vpn-name > um das VPN manuell zu stoppen.

<VPN-Name> ist der Name der Konfigurationsdatei ohne die Erweiterung .conf

befindet sich in / etc / openvpn und ohne das <>

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.