admin password 111111
mysql> create database openvpn;
## 创建一个表
mysql> use openvpn;
Database changed
mysql> CREATE TABLE user (
-> name char(20) NOT NULL,
www.2cto.com
-> password char(128) default NULL,
-> active int(10) NOT NULL DEFAULT 1,
-> PRIMARY KEY (name)
-> );
Query OK, 0 rows affected (0.02 sec)
## 插入一条
mysql> insert into user (name,password) values (‘lishixin’,password(‘lishixin’));
## 查询一下
## 创建帐号
www.2cto.com
mysql> grant all privileges on openvpn.* to "openvpn"@"127.0.0.1" identified by "openvpn";
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
2、配置PAM模块
## 创建
[root@localhost ~]# vim /etc/pam.d/openvpn
## 添加如下内容
auth optional pam_mysql.so user=openvpn passwd=openvpn host=127.0.0.1 db=openvpn table=user usercolumn=name passwdcolumn=password where=active=1 sqllog=0 crypt=2
account required pam_mysql.so user=openvpn passwd=openvpn host=127.0.0.1 db=openvpn table=user usercolumn=name passwdcolumn=password where=active=1 sqllog=0 crypt=2
3、检查相关模块
www.2cto.com
## saslauthd是否安装
[root@localhost ~]# rpm -qa|grep sasl
cyrus-sasl-plain-2.1.22-5.el5_4.3
cyrus-sasl-plain-2.1.22-5.el5_4.3
cyrus-sasl-lib-2.1.22-5.el5_4.3
cyrus-sasl-lib-2.1.22-5.el5_4.3
cyrus-sasl-devel-2.1.22-5.el5_4.3
cyrus-sasl-devel-2.1.22-5.el5_4.3
cyrus-sasl-2.1.22-5.el5_4.3
4、测试PAM_MYSQL
## 运行
[root@localhost ~]# saslauthd -a pam
## 返回 OK 为正常
[root@localhost ~]# testsaslauthd -ulishixin -plishixin -s openvpn
0: OK "Success."
不正常的请查看/var/log/messages与/var/log/messages
## 结束测试进程
[root@localhost ~]# killall saslauthd
www.2cto.com
5、配置OPENVPN
## 请查看如下值
local 0.0.0.0
## 你OPENVPN服务器要宣告的路由
push "route 192.168.10.0 255.255.255.0"
tls-auth ta.key 0 # This file is secret
log openvpn.log
plugin ./openvpn-auth-pam.so openvpn
client-cert-not-required
username-as-common-name
6、启动OPENVPN
[root@localhost openvpn]# service openvpn start
六、配置客户端
1、安装客户端
##一路回车安装成功
2、配置客户端
## 进入默认安装目录
www.2cto.com
C:\Program Files\OpenVPN\config
##创建配置文件 client.ovpn
client
dev tun
proto udp
remote 192.168.242.128 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
auth-user-pass
ns-cert-type server
tls-auth ta.key 1
comp-lzo
verb 3
auth-nocache
www.2cto.com
Ca.crt
Ta.key
七、安装完成
八、结束语
详细配置方法自行研究,不再一一叙述。
作者 李士新