一 配置文件注意点:
如果出现连不上,或者连上了,ping不通的问题,需要检查服务端配置文件和客户端配置文件是否对应:
1 dev tun 和 dev tap的选择是否一样,我曾经在服务器使用dev tap,客户端使用dev tun,会出现一直重连的情况;
2 cipher是否对应,如果不一样,会出现连接成功,而且从客户端得到了ip,但是从日志看会有加解密失败之类的错误;
3 auth是否对应,可以都省略不写,但是需要一样;
4 comp-lzo是否都有或者都没有,这个如果不同,可以从日志看出来,会报错如:“Bad LZO decompression header byte: 42”;
5 tls-client,如果服务器有tls-server,则客户端一定要有tls-client,如果服务器没有则客户端也不能有;
6 proto tcp-client,如果服务器配置文件是proto tcp-server,则需要proto tcp-client对应;
二 当前可以测试通过的dev tun模式的栗子
1 服务端配置文件:server.ovpn
verb 5
port 1194
keepalive 60 900
max-clients 5000
client-to-client
ifconfig 10.8.0.1 10.8.0.2
proto tcp-server
mode server
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
cipher AES-128-CBC
duplicate-cn
tls-server
comp-lzo
persist-key
persist-tun
;daemon
client-config-dir ./ccd/
server 10.8.0.0 255.255.0.0
其中ccd为不同的用户分配的ip,如果不需要指定分配,可以直接把“client-config-dir ./ccd/”删掉或者注释掉;
如果需要按照用户名分配ip则:
1) 新建文件夹ccd;
2) 新建文件“testuser1”(这个文件名称为登录的用户名,如果使用证书认证则为证书的Common Name,即为证书中的CN的值);
3) 在文件中加入ip地址,如下,ip地址可以自定义,第二个为第一个地址后面+1,ip地址只要在上面server 后面的段中即可,如果server定义的子网掩码为255.255.255.0,则ip地址最大只能为:10.8.0.255:
ifconfig-push 10.8.20.200 10.8.20.201
2 客户端配置文件:client.ovpn
client
dev tun
remote 192.168.3.24 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ./ca.crt
cert ./client.crt
key ./client.key
verb 3
comp-lzo
tls-client
cipher AES-128-CBC
proto tcp-client