2020-12-03 06:38:09 登录注册 RSS

当前位置: 公理网 >> 曝光信息 >> windows下利用OpenVPN搭建VPN服务器

windows下利用OpenVPN搭建VPN服务器
发布时间:2018-11-03| 来源:公理网 | 点击发表评论

注:文章首发I.S.T.O信息安全团队(http://blog.csdn.net/I_S_T_O),后由原创作者友情提交到邪恶八进制信息安全团队。

一、OpenVPN是一款功能强大,可跨平台(支持Win2000/XP/2003,Linux,MacOSX,Solaris,FreeBSD,NetBSD,和OpenBSD)使用的SSLVPN服务器软件(具体说明见官方主页官方主页)。

openvpn-2.1_beta16命令行版,下载地址http://openvpn.net/download_action.php?openvpn-2.1_beta16-install.exe
也可以下图形版。

二、安装与配置

第一步:安装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=CA[email protected]domain.com
请根据自身情况修改,也可以不修改,改为

setHOME=C:\ProgramFiles\OPENVPN\easy-rsasetKEY_COUNTRY=CN#(国家)setKEY_PROVINCE=GuangDong#(省份)setKEY_CITY=ShenZhen#(城市)setKEY_ORG=oovc.com#(组织)[email protected]#(邮件地址)
上面#开始的是注释,请不要写到文件中。
打开命令提示符:

开始--运行...--键入cmd,回车,进入命令提示符

或者开始--程序--附件--命令提示符

进入C:\ProgramFiles\openvpn\easy-rsa目录下:
命令如下:
(1)cdC:\ProgramFiles\openvpn\easy-rsa
init-config
vars
clean-all

上面是初始化工作,以后,在进行证书制作工作时,仍旧需要进行初始化,但只需要进入openvpn\easy-rsa目录,运行vars就可以了,不需要上面那些步骤了。

(2)下面开始证书的制作:
生成根证书:(请输入红字部分)
build-ca
20080107/170119_1018045619_tsxwdlbx.jpg"alt=""/>
build-dh

生成服务端密钥:
build-key-serverserver
20080107/170114_92469035_inpjkubj.jpg"alt=""/>
20080107/170122_1781965421_eymrvvct.jpg"alt=""/>
20080107/170124_859608368_dnlkwfsp.jpg"alt=""/>

生成客户端密钥
build-keyclient1
20080107/170121_1175540765_dcqzidul.jpg"alt=""/>
20080107/170126_1045896608_gqjnveay.jpg"alt=""/>

build-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#虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段push"route0.0.0.00.0.0.0"#表示client通过VPNSERVER上网keepalive20180ca"C:\\ProgramFiles\\OPENVPN\\KEY\\ca.crt"#CA证书存放位置,请根据实际情况自行修改cert"C:\\ProgramFiles\\OPENVPN\\KEY\\server.crt"#服务器证书存放位置,请根据实际情况自行修改key"C:\\ProgramFiles\\OPENVPN\\KEY\\server.key"#服务器密钥存放位置,请根据实际情况自行修改dh"C:\\ProgramFiles\\OPENVPN\\KEY\\dh1024.pem"#dh1024.pem存放位置,请根据实际情况自行修改push"redirect-gatewaydef1"push"dhcp-optionDNS219.141.140.10"#DNS,请根据实际情况自行修改modeservertls-serverstatus"C:\\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-warningsca"C:\\ProgramFiles\\OPENVPN\\KEY\\ca.crt"cert"C:\\ProgramFiles\\OPENVPN\\KEY\\client.crt"#这里改成每个客户端相应的证书key"C:\\ProgramFiles\\OPENVPN\\KEY\\client.key"#这里改成每个客户端相应的密钥comp-lzoverb4statusopenvpn-status.log
(7)其它设置:
上面的配置拔号成功后,VPNSERVER的IP:192.168.0.1

VPNclient的IP:192.168.0.2

ping192.168.0.1//相互之间应能ping通

然后设置VPNSERVER上的”internet连接共享“来实现clinet通过VPNSERVER上网:(需要两块网卡)
20080107/170128_1314126300_hmxmckbl.jpg"alt=""/>

(8)VPN服务端命令行启动:
"C:\ProgramFiles\OpenVPN\bin\openvpn""C:\ProgramFiles\OpenVPN\config\server.ovpn"//启动VPN到443端口

(9)VPN客户端命令行连接:
"C:\ProgramFiles\OpenVPN\bin\openvpn""C:\ProgramFiles\OpenVPN\config\client.ovpn"








在Windows下配置Apache+OpenSSL?

1.下载包含OpenSSL的ApacheHttpServer。目前的最新版是apache_2.2.8-win32-x86-openssl-0.9.8g.msi


2.安装Apache。最好装在磁盘的根目录下,例如:C:\Apache2.2\。安装时必须制定一个域名,如果只是本机测试,可以在hosts文件中随便加入一个域名指向本机IP就可以了。


3.打开文件:%安装目录%\conf\httpd.conf,将下面两行的注释去掉:


LoadModulessl_modulemodules/mod_ssl.so


Includeconf/extra/httpd-ssl.conf


4.在Console中切换到目录:%安装目录%\bin。运行下面三行命令:(在执行第一个命令时,会被问很多问题,最重要的是CommonName项的值要和你的网站域名相同。例如test.com,www.test.com之类的。)


1、检查OpenSSL环境


????检查在Apache安装路径的bin下是否有以下文件:


????openssl.exe


????ssleay32.dll


????libeay32.dll

?


2、生成私钥


???运行-cmd-进入apache安装bin路径


???a、Windwos系统,需先设置Openssl环境变量:setOPENSSL_CONF=x:\apache2.2\conf\openssl.cnf(具体视openssl.cnf所在路径为准),否则会出现:WARNING:can'topenconfigfile:/usr/local/ssl/openssl.cnf信息提示。还有在windows系统下.cnf默认会被当成快捷方式,看不到扩展名。


opensslreq-new-outserver.csr-config..\conf\openssl.cnf


opensslrsa-inprivkey.pem-outserver.key


opensslx509-inserver.csr-outserver.crt-req-signkeyserver.key-days3650


5.完成之后,将目录中的server.key和server.crt拷贝到%安装目录%\conf目录中。


6.重启ApacheHttpServer服务。


7.访问https://test.com。(假设安装时使用此域名。)


4411741-混混噩噩"src="http://www.zhangdi.name/wp-content/gallery/misc/thumbs/thumbs_https.gif"border="0"/>


如果Apache服务启动失败,尝试运行%安装目录%\bin\httpd.exe,可以看到错误信息,对于修正错误会很有帮助。






最新新闻

手机浏览

公理网 版权所有

公理网 Total 0.060775(s) query 6, 报料QQ:点击这里

给我发消息