文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>OpenVPN 2.0 HOWTO-进程管理和管理接口(翻译)

OpenVPN 2.0 HOWTO-进程管理和管理接口(翻译)

时间:2007-03-19  来源:febing

配置OpenVPN在系统启动的时自动启动

因为没有这方面的标准,所以每个系统在启动的时候都有不同的启动进程/服务的方式,最好的办法就是安装专门为OpenVPN制作的各种安装包,比如在linux下的RPM包或者在windows下的安装包.

Linux
如果你在linux下使用RPM包安装OPenVPN,那么安装后会自动产生一个启动脚本,当脚本执行的时候,会自动在/etc/openvpn目录下寻找后缀为.conf的配置文件,如果找到配置文件,会自动启动相应配置文件的OpenVPN进程.

Windows
Windows下安装后,会产生一个服务,默认这个服务是关闭的,为了启动激活它,可以在控制面板/管理工具/服务, 选择OpenVPN服务。右键单击属性,设置为启动的时候自动运行。设置完以后下次系统重启,就会同时自动启动OpenVPN服务。

当启动OpenVPN服务的时候,会搜索\Program Files\OpenVPN\config目录下后缀为.ovpn的配置文件,并启动对应的OpenVPN进程。


控制运行中的OpenVPN进程

运行在Linux/BSD/Unix

OpenVPN接受下面几个信号:

SIGUSR1 – 有条件的重启,非root用户重启OpenVPN进程
SIGHUP – 重启
SIGUSR2 – 输出连接状态到log文件或者系统log
SIGTERM, SIGINT – 退出

在配置文件中使用writepid参数指定OpenVPN的pid文件, 好让你发送信号给这个pid文件(如果你用启动脚本启动OpenVPN,已经在OpenVPN的命令行里其通过了writepid参数)。

在windows下运行图形界面

具体请看 OpenVPN GUI page.

运行在windows下的命令提示窗口

在Windows下,你可以通过右键单击一个OpenVPN的配置文件(.opvn文件)然后选择"Start OpenVPN on this config file"启动OpenVPN.

这种方式一运行,这几个键盘命令能接受:

F1 – 有条件的重启(不关闭/重启TAP适配器)
F2 – 显示连接状态
F3 – 重启
F4 – 退出

做为Windows的服务启动

当OpenVPN做为windows的服务启动时,只有下列方法可以控制它:

通过服务控制管理器 (控制面板/管理工具/服务)来控制启动和停止。
通过管理界面 (看下面).

修改正在运行的服务器的配置文件

大多数情况修改配置文件,都要重启服务才能生效,这里有2个比较特殊的参数,可以进行动态更新操作,并且立即生效而不用重启OpenVPN服务进程。

client-config-dir – 这个参数设置客户端配置文件的目录,OpenVPN服务器会检查相关进来的连接请求,然后在目录寻找相对应客户端的配置文件 (看指南页面 获取更多信息)。不用重启服务,在这个目录里的文件就能动态更新 。注意新的修改只对新的连接才生效,不对已经存在的连接不起作用。如果里希望指定的客户端配置文件立即生效与当前的连接 (或者连接已经断,但服务器的实例目标也还没过期), 可以通过管理接口杀掉客户端的实例物体(下面描述). 那么就可以用client-config-dir新的配置文件,重新连接客户端.

crl-verify – 这个参数的意思是证书废除名单文件,详细的描述在下面Revoking Certificates 这一节. CRL文件可以时实修改,并且立即生效,或者对那些已经连接的客户端重新协商SSL/TSL通道(默认每隔1小时). 如果你想干掉那些正在连接,但其对应证书被追加到CTL的用户,可以通过管理接口进行操作 (下面详细介绍).

状态文件

默认服务端配置文件server.conf有下列一行

status openvpn-status.log

那个参数的作用是将每分钟输出一个现有用户连接列表到openvpn-status.log文件。

使用管理接口

OpenVPN管理接口 是一个很好的控制运行中的OpenVPN进程的方法。你可以使用管理接口通过telnet命令直接连接到管理接口的端口,或者直接使用 OpenVPN GUI 连接管理接口

如果要在OpenVPN服务端或者客户端启用管理接口, 你得在配置文件中添加以下这行:

management localhost 7505

这就告诉OpenVPN监听通过客户端通过管理接口访问TCP的7505端口 (7505端口是一个任意选择的端口,你可以选择任何一个没被使用的端口)。

一旦OpenVPN启动,我们可以用telnet客户端程序连接上管理接口,比如下面的例子:

ai:~ # telnet localhost 7505
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
>INFO:OpenVPN Management Interface Version 1 -- type 'help' for more info
help
Management Interface for OpenVPN 2.0_rc14 i686-suse-linux [SSL] [LZO] [EPOLL] built on Feb 15 2005
Commands:
echo [on|off] [N|all] : Like log, but only show messages in echo buffer.
exit|quit : Close management session.
help : Print this message.
hold [on|off|release] : Set/show hold flag to on/off state, or
release current hold and start tunnel.
kill cn : 杀掉通用名为cn的客户端。
kill IP:port : 杀掉来自指定ip和端口的客户端。
log [on|off] [N|all] : 打开/关闭时实的日志显示
+ 显示最后N条或者'所有' 历史日志.
mute [n] : Set log mute level to n, or show level if n is absent.
net : (只在windows下有效) 显示网络信息和路由表。
password type p : Enter password p for a queried OpenVPN password.
signal s : 发送信号给进程,
s = SIGHUP|SIGTERM|SIGUSR1|SIGUSR2.
state [on|off] [N|all] : 跟log一样,但是静态显示。
status [n] : 显示现在进程的状态信息。
test n : Produce n lines of output for testing/debugging.
username type u : Enter username u for a queried OpenVPN username.
verb [n] : Set log verbosity level to n, or show if n is absent.
version : 显示当前版本号.
END
exit
Connection closed by foreign host.
ai:~ #

更多信息,察看OpenVPN管理接口文档

相关阅读 更多 +
排行榜 更多 +
兵人放置战争

兵人放置战争

音乐节奏 下载
新豪足球

新豪足球

浏览阅读 下载
会玩

会玩

游戏工具 下载