您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > windows下利用OpenVPN搭建VPN服务器
windows下利用OpenVPN搭建VPN服务器2008/01/075:02|鬼仔|技术文章|占个座先信息来源:邪恶八进制信息安全团队()文章作者:pt007[at]vip.sina.com版权所有转载需注明作者注:文章首发I.S.T.O信息安全团队(),后由原创作者友情提交到邪恶八进制信息安全团队。一、OpenVPN是一款功能强大,可跨平台(支持Win2000/XP/2003,Linux,MacOSX,Solaris,FreeBSD,NetBSD,和OpenBSD)使用的SSLVPN服务器软件(具体说明见官方主页官方主页)。openvpn-2.1_beta16命令行版,下载地址也可以下图形版。二、安装与配置第一步:安装openvpn这一部分是服务端跟客户端都要做的工作,操作完全相同双击openvpn-2.1_beta16-install.exe进行安装,点击NEXT,IAgree,NEXT之后开始选择安装路径,我手动修改为C:\ProgramFiles\OpenVPN。点击Install开始安装,安装过程中,弹出硬件安装窗口,点击仍然继续,安装虚拟网卡。点击next,Finish完成安装。第二步:VPN服务器配置:说明:架设OPENVPN服务器,服务器方面做的工作比较多,客户端相对来说就比较简单。服务器采用RSA证书和密钥验证方式对客户端进行验证,默认情况下证书和用户是一对一的,多个用户使用同一证书会被踢出。所以首先要做的工作就是证书的制作。在进行操作之前,首先进行初始化工作:(1)修改C:\ProgramFiles\OPENVPN\easy-rsa\vars.bat.sample的以下部分setHOME=%ProgramFiles%\OpenVPN\easy-rsasetKEY_COUNTRY=USsetKEY_PROVINCE=CAsetKEY_CITY=SanFranciscosetKEY_ORG=FortFunstonsetKEY_EMAIL=mail@domain.com请根据自身情况修改,也可以不修改,改为setHOME=C:\ProgramFiles\OPENVPN\easy-rsasetKEY_COUNTRY=CN#(国家)setKEY_PROVINCE=GuangDong#(省份)setKEY_CITY=ShenZhen#(城市)setKEY_ORG=oovc.com#(组织)setKEY_EMAIL=admin@oovc.com#(邮件地址)上面#开始的是注释,请不要写到文件中。打开命令提示符:开始--运行...--键入cmd,回车,进入命令提示符或者开始--程序--附件--命令提示符进入C:\ProgramFiles\openvpn\easy-rsa目录下:命令如下:(1)cdC:\ProgramFiles\openvpn\easy-rsainit-configvarsclean-all上面是初始化工作,以后,在进行证书制作工作时,仍旧需要进行初始化,但只需要进入openvpn\easy-rsa目录,运行vars就可以了,不需要上面那些步骤了。(2)下面开始证书的制作:生成根证书:(请输入红字部分)build-cabuild-dh生成服务端密钥:build-key-serverserver生成客户端密钥build-keyclient1build-keyclient2//可以继续配置第二个VPN客户端密钥//生成的密钥存放于C:\ProgramFiles\openvpn\easy\rsa\keys目录下接下来开始配置服务器和客户端:(3)将生成的ca.crt,dh1024.pem,server.crt,server.key复制到C:\ProgramFiles\OPENVPN\KEY目录下,这四个文件是VPN服务端运行所需要的文件。(4)ca.crt,client.crt,client.key是VPN客户端所需要的文件,复制到客户端C:\ProgramFiles\OPENVPN\KEY目录下(5)在C:\ProgramFiles\OpenVPN\config目录下创建server.ovpn:服务器端文件示例:(server.ovpn)local192.168.3.1#建立VPN的IPport443#端口号,根据需要,自行修改,如果是用http代理连接,请不要修改prototcp-server#通过TCP协议连接devtap#win下必须设为tapserver192.168.0.0255.255.255.0#虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段pushroute0.0.0.00.0.0.0#表示client通过VPNSERVER上网keepalive20180caC:\\ProgramFiles\\OPENVPN\\KEY\\ca.crt#CA证书存放位置,请根据实际情况自行修改certC:\\ProgramFiles\\OPENVPN\\KEY\\server.crt#服务器证书存放位置,请根据实际情况自行修改keyC:\\ProgramFiles\\OPENVPN\\KEY\\server.key#服务器密钥存放位置,请根据实际情况自行修改dhC:\\ProgramFiles\\OPENVPN\\KEY\\dh1024.pem#dh1024.pem存放位置,请根据实际情况自行修改pushredirect-gatewaydef1pushdhcp-optionDNS219.141.140.10#DNS,请根据实际情况自行修改modeservertls-serverstatusC:\\ProgramFiles\\OPENVPN\\log\\openvpn-status.log#LOG记录文件存放位置,请根据实际情况自行修改comp-lzoverb4(6)客户端设置:在客户端安装完成之后,需要将ca.crtclient.crtclient.key这三个文件拷贝到C:\ProgramFiles\openvpn\key目录下,这三个文件由服务端生成,所以,连接谁的服务器,就需要跟谁索取这三个文件然后,编辑一个client.ovpn的配置文件存放到C:\ProgramFiles\openvpn\config目录下,客户端就可以进行连接了。客户端文件示例:(client.ovpn)clientdevtap#windows下面用tap,LINUX下用tunprototcp-clientremote192.168.3.1443#VPN服务器的域名或IP端口resolv-retryinfinitenobind#http-proxy192.168.1.180#这里填入你的代理服务器地址和端口mute-replay-warningscaC:\\ProgramFiles\\OPENVPN\\KEY\\ca.crtcertC:\\ProgramFiles\\OPENVPN\\KEY\\client.crt#这里改成每个客户端相应的证书keyC:\\ProgramFiles\\OPENVPN\\KEY\\client.key#这里改成每个客户端相应的密钥comp-lzoverb4statusopenvpn-status.log(7)其它设置:上面的配置拔号成功后,VPNSERVER的IP:192.168.0.1VPNclient的IP:192.168.0.2ping192.168.0.1//相互之间应能ping通然后设置VPNSERVER上的”internet连接共享“来实现clinet通过VPNSERVER上网:(需要两块网卡)(8)VPN服务端命令行启动:C:\ProgramFiles\OpenVPN\bin\openvpnC:\ProgramFiles\OpenVPN\config\server.ovpn//启动VPN到443端口(9)VPN客户端命令行连接:C:\ProgramFiles\OpenVPN\bin\openvpnC:\ProgramFiles\OpenVPN\config\client.ovpnLinux下OpenVPN的建设详细教程作者:未知文章来源:网络点击数:更新时间:2007-9-323:13:07到现在为止,一切准备就绪,下面开始写配置文件,为了缩小篇幅,把原有注释都去掉了。Server使用的配置文件server.conf----------------CUTHere-------------#申明本机使用的IP地址,也可以不说明;locala.b.c.d#申明使用的端口,默认1194port1194#申明使用的协议,默认使用UDP,如果使用HTTPproxy,必须使用TCP协议;prototcpprotoudp#申明使用的设备可选tap和tun,tap是二层设备,支持链路层协议。#tun是ip层的点对点协议,限制稍微多一些,本人习惯使用TAP设备devtap;devtun#OpenVPN使用的ROOTCA,使用build-ca生成的,用于验证客户是证书是否合法caca.crt#Server使用的证书文件certserver.crt#Server使用的证书对应的key,注意文件的权限,防止被盗keyserver.key#Thisfileshouldbekeptsecret#CRL文件的申明,被吊销的证书链,这些证书将无法登录crl-verifyvpncrl.pem#上面提到的生成的Diffie-Hellman文件dhdh1024.pem#这是一条命令的合集,如果你是OpenVPN的老用户,就知道这条命令的来由#这条命令等效于:#modeserver#OpenVPN工作在Server模式,可以支持多client同时动态接入#tls-server#使用TLS加密传输,本端为Server,Client端为tls-client##ifdevtun:#如果使用tun设备,等效于以下配置#ifconfig10.8.0.110.8.0.2#设置本地tun设备的地址#ifconfig-pool10.8.0.410.8.0.251#说明OpenVPN使用的地址池(用于分配给客户),分别是起始地址、结束地址#route10.8.0.0255.255.255.0#增加一条静态路由,省略下一跳地址,下一跳为对端地址,这里是:10.8.0.2#ifclient-to-client:#如果使用client-to-client这个选项#pushroute10.8.0.0255.255.255.0#把这条路由发送给客户端,客户连接成功后自动加入路由表,省略了下一跳地址:10.8.0.1#else#pushroute10.8.0.1#否则发送本条路由,这是一个主机路由,省略了子网掩码和下一跳地址,分别为:255.255.255.25510.8.0.1##ifdevtap:#如果使用tap设备,则等效于以下命令#ifconfig10.8.0.1255.255.255.0#配置tap设备的地址#ifconfig-pool10.8.0.210.8.0.254255.255.255.0#客户端使用的地址池,分别是起始地址、结束地址、子网掩码#pushroute-gateway10.8.0.1#把环境变量route-gateway传递给客户机#server10.8.0.0255.255.255.0#等效于以上命令#用于记录某个Client获得的IP地址,类似于dhcpd.lease文件,#防止openvpn重新启动后“忘记”Client曾经使用过的IP地址ifconfig-pool-persistipp.txt#Bridge状态下类似DHCPD的配置,为客户分配地
本文标题:windows下利用OpenVPN搭建VPN服务器
链接地址:https://www.777doc.com/doc-4484559 .html