环境介绍:

外网IP: 119.119.119.119

内网网络:192.168.0.0/16

OPEN×××: 192.168.98.88

内网办公机:192.168.0.5

系统环境:

OPEN×××:Centos6.6_64   2.6.32-504.12.2.el6.x86_64  open***-2.3.6

Client:Windows 7_64

Centos用作open***服务端,客户端通过安装windows版open***软件进行连接内网。



禁用selinux,清空防火墙规则。

# sed -i '/SELINUX/s/enabled/disabled/' /etc/selinux/config

# grep disabled /etc/selinux/config 

#     disabled - No SELinux policy is loaded.

SELINUX=disabled

# iptables -F

# iptables -nL

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         


Chain FORWARD (policy ACCEPT)

target     prot opt source               destination         


Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination 


2. 开启路由转发功能呢,保证拨入***后可连接到内部网络。

# echo "net.ipv4.ip_forward = 1" >/etc/sysctl.conf ;sysctl -p


3. 安装open***服务端,通过yum方式来进行安装,这里使用epel的yum源。

# rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel//6/x86_64/epel-release-6-8.noarch.rpm

# yum install open*** easy-rsa


4. 创建open***配置目录,拷贝配置脚本到指定目录下

# mkdir -p /etc/open***/easy-rsa/keys

# cp -rf /usr/share/easy-rsa/2.0/* /etc/open***/easy-rsa/


5. 准备创建CA证书文件,修改vars文件中变量值。国家、省、城市、组织、邮箱、单位

# vim /etc/open***/easy-rsa/vars

export KEY_COUNTRY="CN"

export KEY_PROVINCE="BJ"

export KEY_CITY="Beijing"

export KEY_ORG="TEST"

export KEY_EMAIL="[email protected]"

export KEY_OU="TEST"


6. 到easy-rsa目录下,拷贝openssl配置文件,并且引用之前修改的文件,使变量生效。

# cd /etc/open***/easy-rsa/

# cp openssl-1.0.0.cnf openssl.cnf

# source ./vars


7. 初始化证书授权中心,创建CA证书,输出信息中已经引用了之前所设置的变量值,这里一路回车即可

# ./clean-all

# ./build-ca


8. 创建服务端证书和密钥。

# ./build-key-server server


9. 创建客户端证书和密钥。

# ./build-key client


10. 创建Diffie Hellman 参数,Diffie Hellman 用于增强安全性,在Open×××是必须的。

# ./build-dh


11.至此所需证书及密钥都已经生成完毕。拷贝服务端所需证书到/etc/open***下

# cp dh2048.pem ca.crt server.crt server.key /etc/open***/


12.拷贝客户端需要用到的证书文件,这里使用sz命令进行下载到本地

# sz ca.crt client.crt client.key


13.拷贝服务端配置文件,并编辑添加相关内容。

# cp /usr/share/doc/open***-2.3.6/sample/sample-config-files/server.conf /etc/open***/

# vim /etc/open***/server.conf 

local 192.168.98.88 #监听本地ip

port 11940      #监听端口这里使用11940

push "dhcp-option DNS 114.114.114.114" #open***可以在配置中支持DNS设置

push "dhcp-option DNS 8.8.4.4"

push "route 192.168.0.0 255.255.0.0" #本地内网网段


14. 服务端配置完成,启动程序,查看是否监听11940的udp端口,默认为udp,并且看到多出来一块网卡tun0,IP为10.8.0.1

# service  open*** start


# lsof -i :11940

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAMEopen*** 13420 root    7u  IPv4 6688438      0t0  UDP 192.168.98.88:11940 # netstat -anuActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address               Foreign Address             State                           

udp        0      0 192.168.98.88:11940         0.0.0.0:*   

# ifconfig tun0

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  

          inet addr:10.8.0.1  P-t-P:10.8.0.2  Mask:255.255.255.255

          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1

          RX packets:2949 errors:0 dropped:0 overruns:0 frame:0

          TX packets:2763 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:100

          RX bytes:299160 (292.1 KiB)  TX bytes:2198503 (2.0 MiB)

所有服务端都已经配置完毕,现在可以到客户端进行测试


windows客户端安装open***-install-2.3.0-I001-x86_64.exe客户端。

2.将客户端证书文件拷贝到安装目录的config目录下。

3.拷贝安装目录下sample-config下的client.o***也放到config下面。

并修改remote my-server-1 1194 改为 remote 119.119.119.119 11940


由于open***服务端在内网,所以还需到路由器上面做下端口映射,将119.119.119.119的11940映射到192.168.98.88的11940端口


4.启动客户端,可看到分配了一个10.8.0.5的ip,现在ping 192.168.98.88可以通,访问10.8.0.1也通。


客户端到open***服务器的网络已经连通,如果想访问内网所有设备,还需要在内网的路由器上面加一条路由条目,将访问10.8.0.0网段的指向192.168.98.88,这样外面就可以连接其他内网设备了。

这里是只开通一台机器来进行测试,把自己办公电脑添加到10.8.0.0的路由,实现拨入***后,连接自己办公电脑,所有操作均通过办公电脑来进行跳板操作。


在cmd命令行添加静态路由:route -p ADD 10.8.0.0 MASK 255.255.255.0 192.168.98.88

在外网连接×××后可通过远程桌面对办公电脑进行操作,从而对内网其他服务器进行操作。