如何断开与 OpenVPN 的连接?

如何断开与 OpenVPN 的连接?

我正在使用 VPNBook 服务器进行连接,并且可以使用以下命令正常工作:

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

但我似乎无法弄清楚如何在不重新启动的情况下停止它。

我已经尝试过service openvpn stop/etc/init.d/vpnbook stop,但似乎没有影响它。

答案1

这个命令对我来说绝对有效,并且它也应该对你有用。

sudo killall openvpn

答案2

我在断开与 openvpn3 的连接时遇到了同样的问题

我最终创造了这个小仓库帮助管理 openvpn3 会话

要断开会话,您必须知道会话的路径

openvpn3 session-manage --session-path $OPENVPN3_SESSION_PATH --disconnect

可以通过以下方式找到会话路径

openvpn3 sessions-list

> -----------------------------------------------------------------------------
>         Path: /net/openvpn/v3/sessions/7a42f37asc8d9s424c8b534sd331d6dd56e8
>      Created: Tue Dec  8 10:44:57 2020                  PID: 9495
>        Owner: shmalex                                Device: tun0
>  Config name: client.ovpn  (Config not available)
> Session name: ***.***.***.***
>       Status: Connection, Client connected
> -----------------------------------------------------------------------------
OPENVPN3_SESSION_PATH=/net/openvpn/v3/sessions/7a42f37asc8d9s424c8b534sd331d6dd56e8
openvpn3 session-manage --session-path $OPENVPN3_SESSION_PATH --disconnect

您可以使用我的仓库借助 bash 文件执行相同的操作。

答案3

我案例中的成功步骤是:

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

# find the process if it is still running for some reason
$ 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

由于某种原因,killall -SIGINT openvpn它对我来说不起作用,但上述步骤确实有效。

答案4

如果sudo killall openvpn没有完成工作(我经历过几次),那么一个尖锐而致命的解决方案是:

pgrep openvpn | xargs sudo kill -9

相关内容