记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。

服务器端

安装openvpn

在这里http://swupdate.openvpn.org/community/releases/openvpn-install-2.3.4-I004-i686.exe下载openvpn

在服务器安装时记得勾选红框中的两个选项

安装完成后

编辑C:\Program Files (x86)\OpenVPN\easy-rsa目录下的vars.bat.sample文件,修改如下内容

然后切换到如下目录

cd /D C:\Program Files (x86)\OpenVPN\easy-rsa

init-config

vars

clean-all

生成根证书:

build-ca

build-dh

生成服务端证书:

build-key-server server  

生成客户端证书

build-key client1

将生成的(C:\Program Files (x86)\OpenVPN\easy-rsa\keys 目录下)

ca.crt,dh1024.pem,server.crt,server.key

复制到C:\Program Files (x86)\OpenVPN\config

C:\Program Files (x86)\OpenVPN\config创建server.ovpn文件

编辑该文件写入一下内容

右mode server
local 118.184.23.131   
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh1024.pem
server 172.16.1.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 0.0.0.0 0.0.0.0"     
push "redirect-gateway def1 bypass-dhcp"  
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
client-to-client
keepalive 10 120
comp-lzo
comp-noadapt
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3



击计算机,点击管理

在服务中启动openvpn

服务端设置完毕

客户端

安装openvpn

ca.crtclient1.crtclient1.keydh1024.pem copyconfig目录下

config目录下创建client.ovpn 编辑client1.ovpn写入以下内容

client
proto udp
dev tun
remote 118.184.23.131 1194   
ca ca.crt
cert client1.crt
key client1.key # This file should be kept secret
dh dh1024.pem
keepalive 10 120
comp-lzo
comp-noadapt
user daemon
group daemon
persist-key
persist-tun
status openvpn-status.log
verb 3

双击启动openvpn-gui

连接openvpn即可

 

 

这只是打通了隧道, 上网的话,通过2003 的NAT直接上就可以了.

亲测过,上面的配置只是与服务器建立vpn隧道,内网打通,但是服务器没有设置nat,所以客户端连接以后无法上网,如果需要通过连接服务器上网,需要进行下面的配置
1
、关闭Windows Firewall/Internet Connection Sharing (ICS)服务
 

 


2
、配置NAT


 

 
 


 



设置完成后,连接vpn,客户端即可通过服务器上网

只不过,脸上VPN之后,要等个1分钟左右,再上网,不知道为啥.

 

补上S 的配置

mode server

port 11194

proto udp

dev tun

ca ca.crt

cert server.crt

key server.key

dh dh1024.pem

server 10.9.8.0 255.255.255.0

ifconfig-pool-persist ipp.txt

push "redirect-gateway def1"

push "dhcp-option DNS 8.8.8.8"

push "dhcp-option DNS 8.8.4.4"

client-to-client

keepalive 10 120

comp-lzo

comp-noadapt

user nobody

group nobody

persist-key

persist-tun

status openvpn-status.log

verb 3

 

其中in个10.9.8.0 只是自己瞎设置的内网而已(别跟实际的冲突了就行)

本机我只有一个外网的网卡

 

C的配置:

 

client

proto udp

dev tun

remote *.*.*.* 11194 #这是服务器的外网IP

ca ca.crt

cert client1.crt

key client1.key # This file should be kept secret

dh dh1024.pem

keepalive 10 120

comp-lzo

comp-noadapt

user daemon

group daemon

persist-key

persist-tun

status openvpn-status.log

verb 3

 

这样 windows客户端就可以连接并上网了

 

之后,要弄手机的,所以把证书都合并到客户端的配置里了.

client

proto udp

dev tun

remote *.*.*.* 11194

<ca>

-----BEGIN CERTIFICATE-----

MIIDwjCCAyugAwIBAgIJANPmrIVMaKtTMA0GCSqGSIb3DQEBBQUAMIGdMQswCQYD

ChMmkJnU4c2g1H7hajM1BBFDtd5k3qaPykzWixtPc+uin4wt8lCF7F6gwe5NqCJU

lmb9ueM8zNcDu+s/3rXvWVA4uetVdICcoS7+T29AP68ptyJ8tPrV22JK2bXM27BE

ghrl7Pmm

-----END CERTIFICATE-----

</ca>

<cert>

-----BEGIN CERTIFICATE-----

MIIEBzCCA3CgAwIBAgIBAjANBgkqhkiG9w0BAQQFADCBnTELMAkGA1UEBhMCVVMx

h0nkud9BD8BtTbqf83Y8nqvnVyWZP9o9l0IZ

-----END CERTIFICATE-----

</cert>

 

<key>

-----BEGIN PRIVATE KEY-----

MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAMsu2cgOUZVp7KX1

jw5/18Mc3iIY9Et5ouHN1t/OqQkttgNuSI+xaUgtb6hm/e2ZoQ/yeEp5AkAS/sHM

WKRQy27EXueQMIxi5ONxkqoU712ujdra8lbiJ2FbTZoMeRWyAVjmFZapfQTbCvhS

cP31CFEl6BmiOSnt

-----END PRIVATE KEY-----

</key>

 

key-direction 1

 

keepalive 10 120

comp-lzo

comp-noadapt

user daemon

group daemon

persist-key

persist-tun

status openvpn-status.log

verb 3

 

如上.

用记事本打开ca.crt把文件内容复制到<ca></ca>的中间,

用记事本打开client.crt把文件内容复制到<cert></cert>的中间,

用记事本打开client.key把文件内容复制到<key></key>的中间,
这个是从网上招来的,下面的干吗用,我也不知道,所以,我就没设置了,但是也一样能用.
用记事本打开ta.key把文件内容复制到<tls-auth></tls-auth>的中间,

就搞定了.

 




转载请标明出处【win2003 配置openvpn,支持手机客户端android】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论