windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx

上传人:b****2 文档编号:4739723 上传时间:2023-05-04 格式:DOCX 页数:53 大小:196.77KB
下载 相关 举报
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第1页
第1页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第2页
第2页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第3页
第3页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第4页
第4页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第5页
第5页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第6页
第6页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第7页
第7页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第8页
第8页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第9页
第9页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第10页
第10页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第11页
第11页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第12页
第12页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第13页
第13页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第14页
第14页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第15页
第15页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第16页
第16页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第17页
第17页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第18页
第18页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第19页
第19页 / 共53页
windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx_第20页
第20页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx

《windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx(53页珍藏版)》请在冰点文库上搜索。

windows下利用OpenVPN搭建VPN服务器Word格式文档下载.docx

setKEY_PROVINCE=CA

setKEY_CITY=SanFrancisco

setKEY_ORG=FortFunston

setKEY_EMAIL=mail@

请根据自身情况修改,也可以不修改,改为

setHOME=C:

\ProgramFiles\OPENVPN\easy-rsa

setKEY_COUNTRY=CN#(国家)

setKEY_PROVINCE=GuangDong#(省份)

setKEY_CITY=ShenZhen#(城市)

setKEY_ORG=#(组织)

setKEY_EMAIL=admin@#(邮件地址)

上面#开始的是注释,请不要写到文件中。

打开命令提示符:

开始-->

运行...-->

键入cmd,回车,进入命令提示符

或者开始-->

程序-->

附件-->

命令提示符

进入C:

\ProgramFiles\openvpn\easy-rsa目录下:

命令如下:

(1)cdC:

\ProgramFiles\openvpn\easy-rsa

init-config

vars

clean-all

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

(2)下面开始证书的制作:

生成根证书:

(请输入红字部分)

build-ca

build-dh

生成服务端密钥:

build-key-serverserver

生成客户端密钥

build-keyclient1

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的IP

port443#端口号,根据需要,自行修改,如果是用http代理连接,请不要修改

prototcp-server#通过TCP协议连接

devtap#win下必须设为tap

server192.168.0.0255.255.255.0#虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段

push"

route0.0.0.00.0.0.0"

#表示client通过VPNSERVER上网

keepalive20180

ca"

C:

\\ProgramFiles\\OPENVPN\\KEY\\ca.crt"

#CA证书存放位置,请根据实际情况自行修改

cert"

\\ProgramFiles\\OPENVPN\\KEY\\server.crt"

#服务器证书存放位置,请根据实际情况自行修改

key"

\\ProgramFiles\\OPENVPN\\KEY\\server.key"

#服务器密钥存放位置,请根据实际情况自行修改

dh"

\\ProgramFiles\\OPENVPN\\KEY\\dh1024.pem"

#dh1024.pem存放位置,请根据实际情况自行修改

redirect-gatewaydef1"

dhcp-optionDNS219.141.140.10"

#DNS,请根据实际情况自行修改

modeserver

tls-server

status"

\\ProgramFiles\\OPENVPN\\log\\openvpn-status.log"

#LOG记录文件存放位置,请根据实际情况自行修改

comp-lzo

verb4

(6)客户端设置:

在客户端安装完成之后,需要将ca.crtclient.crtclient.key这三个文件拷贝到C:

\ProgramFiles\openvpn\key目录下,这三个文件由服务端生成,所以,连接谁的服务器,就需要跟谁索取这三个文件

然后,编辑一个client.ovpn的配置文件存放到C:

\ProgramFiles\openvpn\config目录下,客户端就可以进行连接了。

客户端文件示例:

(client.ovpn)

client

devtap#windows下面用tap,LINUX下用tun

prototcp-client

remote192.168.3.1443#VPN服务器的域名或IP端口

resolv-retryinfinite

nobind

#http-proxy192.168.1.180#这里填入你的代理服务器地址和端口

mute-replay-warnings

\\ProgramFiles\\OPENVPN\\KEY\\client.crt"

#这里改成每个客户端相应的证书

\\ProgramFiles\\OPENVPN\\KEY\\client.key"

#这里改成每个客户端相应的密钥

statusopenvpn-status.log

(7)其它设置:

上面的配置拔号成功后,VPNSERVER的IP:

192.168.0.1

VPNclient的IP:

192.168.0.2

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

然后设置VPNSERVER上的”internet连接共享“来实现clinet通过VPNSERVER上网:

(需要两块网卡)

(8)VPN服务端命令行启动:

"

\ProgramFiles\OpenVPN\bin\openvpn"

"

\ProgramFiles\OpenVPN\config\server.ovpn"

//启动VPN到443端口

(9)VPN客户端命令行连接:

\ProgramFiles\OpenVPN\config\client.ovpn"

Linux下OpenVPN的建设详细教程

作者:

未知文章来源:

网络点击数:

更新时间:

2007-9-323:

13:

07

到现在为止,一切准备就绪,下面开始写配置文件,为了缩小篇幅,把原有注释都去掉了。

Server使用的配置文件server.conf

----------------CUTHere-------------

#申明本机使用的IP地址,也可以不说明

;

locala.b.c.d

#申明使用的端口,默认1194

port1194

#申明使用的协议,默认使用UDP,如果使用HTTPproxy,必须使用TCP协议

prototcp

protoudp

#申明使用的设备可选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这个选项

#push"

route10.8.0.0255.255.255.0"

#把这条路由发送给客户端,客户连接成功后自动加入路由表,省略了下一跳地址:

10.8.0.1

#else

route10.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#客户端使用的地址池,分别是起始地址、结束地址、子网掩码

route-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的配置,为客户分配地址,由于这里工作在路由模式,所以不使用

server-bridge10.8.0.4255.255.255.010.8.0.5010.8.0.100

#通过VPNServer往Clientpush路由,client通过pull指令获得Serverpush的所有选项并应用

route192.168.10.0255.255.255.0"

route192.168.20.0255.255.255.0"

#VPN启动后,在VPNServer上增加的路由,VPN停止后自动删除

route10.9.0.0255.255.255.252

#Runscriptorshellcommandcmdtovalidateclient

#virtualaddressesorroutes.具体查看manual

learn-address./script

#其他的一些需要PUSH给Client的选项

#使Client的默认网关指向VPN,让Client的所有Traffic都通过VPN走

redirect-gateway"

#DHCP的一些选项,具体查看Manual

dhcp-optionDNS10.8.0.1"

dhcp-optionWINS10.8.0.1"

#如果可以让VPNClient之间相互访问直接通过openvpn程序转发,

#不用发送到tun或者tap设备后重新转发,优化ClienttoClient的访问效率

client-to-client

#如果Client使用的CA的CommonName有重复了,或者说客户都使用相同的CA

#和keys连接VPN,一定要打开这个选项,否则只允许一个人连接VPN

duplicate-cn

#NAT后面使用VPN,如果VPN长时间不通信,NATSession可能会失效,

#导致VPN连接丢失,为防止之类事情的发生,keepalive提供一个类似于ping的机制,

#下面表示每10秒通过VPN的Control通道ping对方,如果连续120秒无法ping通,

#认为连接丢失,并重新启动VPN,重新连接

#(对于modeserver模式下的openvpn不会重新连接)。

keepalive10120

#上面提到的HMAC防火墙,防止DOS攻击,对于所有的控制信息,都使用HMACsignature,

#没有HMACsignature的控制信息不予处理,注意server端后面的数字肯定使用0,client使用1

tls-authta.key0#Thisfileissecret

#对数据进行压缩,注意Server和Client一致

#定义最大连接数

max-clients100

#定义运行openvpn的用户

usernobody

groupnobody

#通过keepalive检测超时后,重新启动VPN,不重新读取keys,保留第一次使用的keys

persist-key

#通过keepalive检测超时后,重新启动VPN,一直保持tun或者tap设备是linkup的,

#否则网络连接会先linkdown然后linkup

persist-tun

#定期把openvpn的一些状态信息写到文件中,以便自己写程序计费或者进行其他操作

#记录日志,每次重新启动openvpn后删除原有的log信息

log/var/log/openvpn.log

#和log一致,每次重新启动openvpn后保留原有的log信息,新信息追加到文件最后

log-appendopenvpn.log

#相当于debuglevel,具体查看manual

verb3

--------------CutHere-----------------

把server.conf文件保存到/etc/opennvpn目录中,并把使用easy-rsa下的脚本什成的key都复制到/etc/openvpn目录下,命令如下:

#cd/etc/openvpn

#cpeasy-rsa/keys/ca.crt.

#cpeasy-rsa/keys/server.crt.

#cpeasy-rsa/keys/server.key.

#cpeasy-rsa/keys/dh1024.pem.

#cpeasy-rsa/keys/ta.key.

#cpeasy-rsa/keys/vpncrl.pem.

创建OpenVPN启动脚本,可以在源代码目录中找到,在sample-scripts目录下的openvpn.init文件,将其复制到/etc/init.d/目录中,改名为openvpn

然后运行:

#chkconfig--addopenvpn

#chkconfigopenvpnon

立即启动openenvpn

#/etc/init.d/openvpnstart

接下来配置客户端的配置文件client.conf:

Linux或Unix下使用扩展名为.confWindows下使用的是.ovpn,并把需要使用的keys复制到配置文件所在目录ca.crtelm.crtelm.keyta.key

-------------CutHere---------------------

#申明我们是一个client,配置从server端pull过来,如IP地址,路由信息之类“Server使用push指令push过来的”

#指定接口的类型,严格和Server端一致

#WindowsneedstheTAP-Win32adaptername

#fromtheNetworkConnectionspanel

#ifyouhavemorethanone.OnXPSP2,

#youmayneedtodisablethefirewall

#fortheTAPadapter.

dev-nodeMyTap

#使用的协议,与Server严格一致

#设置Server的IP地址和端口,如果有多台机器做负载均衡,可以多次出现remote关键字

remote61.1.1.21194

remotemy-server-21194

#随机选择一个Server连接,否则按照顺序从上到下依次连接

remote-random

#始终重新解析Server的IP地址(如果remote后面跟的是域名),

#保证ServerIP地址是动态的使用DDNS动态更新DNS后,Client在自动重新连接时重新解析Server的IP地址

#这样无需人为重新启动,即可重新接入VPN

#在本机不邦定任何端口监听incoming数据,Client无需此操作,除非一对一的VPN有必要

#运行openvpn用户的身份,旧版本在win下需要把这两行注释掉,新版本无需此操作

#在Client端增加路由,使得所有访问内网的流量都经过VPN出去

#当然也可以在Server的配置文件里头设置,Server配置里头使用的命令是

route192.168.0.0255.255.255.0"

route192.168.0.0255.255.0.0

#和Server配置上的功能一样如果使用了chroot或者su功能,最好打开下面2个选项,防止重新启动后找不到keys文件,或者nobody用户没有权限启动tun设备

#如果你使用HTTP代理连接VPNServer,把Proxy的IP地址和端口写到下面

#如果代理需要验证,使用http-proxyserverport[authfile][auth-method]

#其中authfile是一个2行的文本文件,用户名和密码各占一行,auth-method可以省略,详细信息查看Manual

http-proxy-retry#retryonconnectionfailures

http-proxy[proxyserver][proxyport#]

#对于无线设备使用VPN的配置,看看就明白了

#Wirelessnetworksoftenproducealot

#ofduplicatepackets.Setthisflag

#tosilenceduplicatepacketwarnings.

#RootCA文件的文件名,用于验证ServerCA证书合法性,通过easy-rsa/build-ca生成的ca.crt,和Server配置里的ca.crt是同一个文件

#easy-rsa/build-key生成的keypair文件,上面生成key部分中有提到,不同客户使用不同的keys修改以下两行配置并使用他们的keys即可。

certelm.crt

keyelm.key

#Server使用build-key-server脚本什成的,在x509v3扩展中加入了ns-cert-type选项

#防止VPNclient使用他们的keys+DNShack欺骗vpnclient连接他们假冒的VPNServer

#因为他们的CA里没有这个扩展

ns-cert-typeserver

#和Server配置里一致,ta.key也一致,注意最后参数使用的是1

tls-authta.key1

#压缩选项,和Server严格一致

#Setlogfileverbosity.

--------

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2