1、windows下利用OpenVPN搭建VPN服务器一、OpenVPN是一款功能强大,可跨平台(支持Win 2000/XP/2003, Linux, Mac OS X, Solaris, FreeBSD, NetBSD, 和 OpenBSD)使用的SSL VPN器软件(具体说明见官方主页官方主页)。openvpn-2.1_beta16命令行版,下载地址也可以下图形版。二、安装与配置第一步:安装openvpn第二步: VPN器配置:说明:架设OPENVPN器,器方面做的工作比较多,客户端相对来说就比较简单。器采用RSA证书和密钥验证方式对客户端进行验证,默认情况下证书和用户是一对一的,多个用户使用
2、同一证书会被踢出。所以首先要做的工作就是证书的制作。在进行操作之前,首先进行初始化工作:(1)修改C:Program FilesOPENVPNeasy-rsavars.bat.sample的以下部分set HOME=%ProgramFiles%OpenVPNeasy-rsaset KEY_COUNTRY=USset KEY_PROVINCE=CAset KEY_CITY=SanFranciscoset KEY_ORG=FortFunstonset KEY_EMAIL=mail请根据自身情况修改,也可以不修改,改为set HOME=C:Program FilesOPENVPNeasy-rsase
3、t KEY_COUNTRY=CN #(国家)set KEY_PROVINCE=GuangDong #(省份)set KEY_CITY=ShenZhen #(城市)set KEY_ORG= #(组织)set KEY_EMAIL=admin #(邮件地址)上面#开始的是注释,请不要写到文件中。打开命令提示符:开始-运行.-键入cmd,回车,进入命令提示符或者 开始-程序-附件-命令提示符进入C:Program Filesopenvpneasy-rsa目录下:命令如下:(1)cd C:Program Filesopenvpneasy-rsainit-configvarsclean-all上面是初始化
4、工作,以后,在进行证书制作工作时,仍旧需要进行初始化,但只需要进入openvpneasy-rsa目录,运行vars就可以了,不需要上面那些步骤了。(2)下面开始证书的制作:生成根证书:(请输入红字部分)build-cabuild-dh生成端密钥:build-key-server server生成客户端密钥build-key client1build-key client2 /可以继续配置第二个VPN客户端密钥/生成的密钥存放于C:Program Filesopenvpneasyrsakeys目录下接下来开始配置器和客户端:(3)将生成的ca.crt,dh1024.pem,server.crt,
5、server.key复制到C:Program FilesOPENVPNKEY目录下,这四个文件是VPN端运行所需要的文件。(4)ca.crt,client.crt,client.key是VPN客户端所需要的文件,复制到客户端C:Program FilesOPENVPNKEY目录下(5)在C:Program FilesOpenVPNconfig目录下创建server.ovpn:器端文件示例:(server.ovpn)local 192.168.3.1 #建立VPN的IPport 443 #端口号,根据需要,自行修改,如果是用http代理连接,请不要修改proto tcp-server #通过TC
6、P协议连接dev tap #win下必须设为tapserver 192.168.0.0 255.255.255.0 # 虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段push route 0.0.0.0 0.0.0.0 #表示client通过VPN SERVER上网keepalive 20 180ca C:Program FilesOPENVPNKEYca.crt #CA证书存放位置,请根据实际情况自行修改cert C:Program FilesOPENVPNKEYserver.crt #器证书存放位置,请根据实际情况自行修改key C:Program FilesOPEN
7、VPNKEYserver.key #器密钥存放位置,请根据实际情况自行修改dh C:Program FilesOPENVPNKEYdh1024.pem #dh1024.pem存放位置,请根据实际情况自行修改push redirect-gateway def1push dhcp-option DNS 219.141.140.10 #DNS,请根据实际情况自行修改mode servertls-serverstatus C:Program FilesOPENVPNlogopenvpn-status.log #LOG记录文件存放位置,请根据实际情况自行修改comp-lzoverb 4(6)客户端设置:
8、在客户端安装完成之后,需要将 ca.crt client.crt client.key 这三个文件拷贝到C:Program Filesopenvpnkey目录下,这三个文件由端生成,所以,连接谁的器,就需要跟谁索取这三个文件然后,编辑一个 client.ovpn的配置文件存放到C:Program Filesopenvpnconfig目录下,客户端就可以进行连接了。客户端文件示例:(client.ovpn)clientdev tap #windows下面用tap,LINUX下用tunproto tcp-clientremote 192.168.3.1 443 #VPN器的或IP 端口resolv
9、retry infinitenobind#http-proxy 192.168.1.1 80 #这里填入你的代理器地址和端口mute-replay-warningsca C:Program FilesOPENVPNKEYca.crtcert C:Program FilesOPENVPNKEYclient.crt #这里改成每个客户端相应的证书key C:Program FilesOPENVPNKEYclient.key #这里改成每个客户端相应的密钥comp-lzoverb 4status openvpn-status.log(7)其它设置:上面的配置拔号成功后,VPN SERVER的IP:
10、192.168.0.1VPN client的IP:192.168.0.2ping 192.168.0.1 /相互之间应能ping通然后设置VPN SERVER上的”internet连接共享“来实现clinet通过VPN SERVER上网:(需要两块网卡)(8)VPN端命令行启动:C:Program FilesOpenVPNbinopenvpn C:Program FilesOpenVPNconfigserver.ovpn /启动VPN到443端口(9)VPN客户端命令行连接:C:Program FilesOpenVPNbinopenvpn C:Program FilesOpenVPNconfigclient.ovpn