3

有什么方法可以使用 Linux 或 Perl 命令终止用户 OpenVPN 连接?

4

5 回答 5

2

断开连接的用户:

/usr/bin/openvpn-sudo-user kill \"username\"

但首先你应该禁用用户。

于 2010-08-13T10:49:14.820 回答
1

对tcpkill程序的系统调用。

于 2010-08-11T05:44:39.993 回答
1

采用tcpkill ip host 192.168.1.2

于 2013-03-10T21:52:03.330 回答
1

如果您使用 perl 模块 Proc::Background 作为命令启动 openvpn,您也可以使用相同的 Proc::Background 杀死他:

#!/usr/bin/perl

use strict;
use warnings;
use Proc::Background;

my $command = 'openvpn --config /etc/openvpn/client.conf';
my $proc = Proc::Background->new($command); $proc->alive;
print "started\n";
sleep (30);
if ($proc->alive == 1) { $proc->die; print "stopped\n";}
于 2016-05-06T19:05:51.183 回答
0

如果您在启动时将 OpenVPN 作为服务自动启动,最简洁的方法是:

service openvpn stop

从命令行(或从 perl 执行)

/etc/init.d/openvpn stop

您可以按照其他建议直接将其杀死,但使用提供的方法停止服务将执行 OpenVPN 需要的任何附加清理(例如,清理锁定文件、运行 pid 文件等)

AFIAK 杀死 OpenVPN 在当前版本中会很好,但谁知道未来的版本。

于 2011-03-29T11:03:54.290 回答