在Windows下安装OpenVPN经验分享

这里我仅仅做了在Windows 2003 Server上的OpenVPN客户端,其实要做成Server的话,也差不多。

系统环境:Windows 2003 Server。双路网卡,一路接192.168.0.0/24网段,此网段出局,网关为192.168.0.101。另一路接192.168.1.0/24网段。让此台Win2k3作为Client段接入之前交代过的OpenVPN Server。OpenVPN Server的IP地址为123.123.123.233。

在Windows下使用的是基于NT系统的安装包
openvpn-2.0.9-gui-1.0.3-install.exe 下载地址: http://www./softs/120505.html
安装:双击+下一步+完成(这里我使用的默认安装路径 C:/Program Files/OpenVPN )

1.首先通过找到安装的路径,并且查看下面有些什么东西。可以通过资源浏览器或者Cmd,个人认为Cmd可能看的比较清楚。(另外下面dir出来的东西当中很多其实是默认没有的,是我后来加进去的,比如一些Client的证书密钥以及ta密钥等等,要添加什么东西,放在什么位置,之后我都会详细讲。)
---------------------------------------------------------------
Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.
切换工作目录到OpenVPN的默认安装路径下
C:/Documents and Settings/Administrator>cd C:/Program Files/OpenVPN
通过dir命令看看安装路径下面有些什么内容
C:/Program Files/OpenVPN>dir
Volume in drive C is system
Volume Serial Number is 785C-92D5
Directory of C:/Program Files/OpenVPN
2007-08-28 16:48 .
2007-08-28 16:48 ..
2007-08-28 16:34 bin
2007-08-27 14:09 1,233 ca.crt (这个是CA根证书文件,是从Server端拿过来的。和Server端用的是同一个CA根证书)
2007-08-28 17:33 config (存放OpenVPN主配置文件的目录,无论是作为Client还是Server)
2007-08-28 16:34 driver
2007-08-28 16:34 easy-rsa
2006-10-01 20:37 83 INSTALL-win32.txt
2007-08-28 16:39 3,530 kcvpn1.crt (这个是Client端的证书文件,是根据CA根证书签发的)
2007-08-28 16:39 684 kcvpn1.csr (这个?lient端的SSL请求连接证书文件,也是根据CA根证书签发的)
2007-08-28 16:39 887 kcvpn1.key (这个是Client端的密钥文件,也是根据CA根证书签发的)
2005-04-21 17:54 28,387 license.txt
2007-08-28 16:45 log
2005-08-18 14:20 8,705 OpenVPN GUI ReadMe.txt
2004-05-16 15:30 766 openvpn.ico
2007-08-28 16:34 sample-config
2007-08-27 14:09 636 ta.key (这个是ta.key密钥文件,从Server那里拿过来的,和Server端用的是同一个ta密钥文件)
2007-08-28 16:35 72,907 Uninstall.exe
10 File(s) 117,818 bytes
8 Dir(s) 1,629,716,480 bytes free
------------------------------------------------------------------------
还记得在一套OpenVPN系统中一个Client需要从服务器那里得到些什么吗?
当然就是5个文件:
(1)CA根证书文件
(2)TA密钥文件
(3)Client端的证书文件
(4)Client端的密钥文件
(5)Client端的SSL请求连接文件
还有一样东西就是根据自己的Server实际情况配置的:
(6)Client主配置文件。(注意,与Linux系统不同的是在Windows系统下主配置文件后缀名为.ovpen,而在Linux系统下后缀名为.conf)
所以基本上一共需要以上这6样东西。

2.整备Client主配置文件
在Windows系统下,OpenVPN的主配置文件是放在安装目录下的一个叫config的目录中的。
转到安装路径下的一个叫config的目录下,里面放的就是VPN Client端的配置文件。
C:/Program Files/OpenVPN>cd config
查看整个文件下的内容
C:/Program Files/OpenVPN/config>dir
------------------------------------------------------------------------------------
Volume in drive C is system
Volume Serial Number is 785C-92D5
Directory of C:/Program Files/OpenVPN/config
2007-08-28 17:33 .
2007-08-28 17:33 ..
2007-08-28 17:33 383 client.ovpn (默认安装好后是没有这个文件的,需要手动创造编辑,并且后缀名为.ovpn)
2007-08-28 17:24 385 client.ovpn.bak (这个文件也是默认没有的,是我对主配置文件的模版备份,请养成良好的习惯)
2007-08-28 16:34 213 README.txt
3 File(s) 981 bytes
2 Dir(s) 1,638,834,176 bytes free
C:/Program Files/OpenVPN/config>
----------------------------------------------------------

3.编辑client.ovpn这个主配置文件
----------------------------------------------------------
dev tun
dev-node VPN
(设定VPN的网络接口名。注意在Windows系统中必须要有这一条,在启动OpenVPN进程的时候会启动一个虚拟虚拟网络接口,它必须要有一个名字,可以随便起,当运行OpenVPN进程时,可以通过ipconfig/all来看到多出来这个名字的网络连接。而在Linux系统中就不需要配置这一项,会自动启动一个tun0的网络接口。)

proto udp

remote 123.123.123.233 9988

resolv-retry infinite

nobind

#user nobody
#group nobody
(注意在Windows系统中这两行必须注释掉,这是在Linux系统中指定OpenVPN服务的宿主用户的,而在Windows系统中用不上,如果不注释的话会引起报错)

persist-key
persist-tun

ca "C://Program Files//OpenVPN//ca.crt"
cert "C://Program Files//OpenVPN//kcvpn1.crt"
key "C://Program Files//OpenVPN//kcvpn1.key"
(这里就是指定根证书CA,客户端证书,客户端密钥的路径。顺便提一下,由于我对Windows命令行下的路径表示不是很熟悉,所以这里我一共吃药3次。也希望大家能够注意一下:1.首先,不像Linux下有默认的主配置路径/etc/openvpn/,至少我用Set命令没有看到过OpenVPN在Windows下所用的变量路径,以致于直接打文件名的话在运行OpenVPN的时候会提示你找不到正确证书和密钥这样错误,所以必须要在这里打上绝对路径,?濉?.其次,在Windows系统中路径使用的是反斜杠杆,但是在配置文件中,你必须要像我这样使用双反斜杠表示,单斜杠就会报错,?濉?.最后,即时你注意到了上面两点也还是不够,你会发现如“Program Files”这样的目录名当中有空格,因此你必须要像我这样在输入完整的路径之后加上双引号才行,否则也会抱错,?澹?/font>

ns-cert-type server

tls-auth "C://Program Files//OpenVPN//ta.key" 1
(指定TA密钥的路径,请使用绝对路径来表示,路径格式要求请参考上面。另外作为Client的话后面要跟上参数1,如果作为Server的话后面要跟上参数0)

comp-lzo

verb 3

;mute 20
---------------------------------------------
这里我偷懒,我直接把一些证书密钥直接丢安装路径下了,其实可以做的规范些,就是自己在安装路径下建立一个Key或者别的名字的目录,将证书密钥这些文件都统一整理到这个目录下,然后再在主配置文件中写明这些文件的位置(反正也是要打绝对路径的- -),还是那句话,请严格仔细的核准主配置文件中的文件路径。

4.未启动OpenVPN进程时先察看网络接口。
这个是我这台主机上原有的网络接口信息。安装好OpenVPN-GUI后会多出一张网络接口,不过默认是未连接的。
------------------------------------------------------
Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.
C:/Documents and Settings/Administrator>ipconfig/all
Windows IP Configuration
Host Name . . . . . . . . . . . . : kserver
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Unknown
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter VPN:
Media State . . . . . . . . . . . : Media disconnected
Description . . . . . . . . . . . : TAP-Win32 Adapter V8
Physical Address. . . . . . . . . : 00-FF-6F-CB-56-CF

Ethernet adapter NET1:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Broadcom 440x 10/100 Integrated Controller
Physical Address. . . . . . . . . : 00-18-8B-82-52-1A
DHCP Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.1.102
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
DNS Servers . . . . . . . . . . . : 202.96.209.5
202.96.209.133
Ethernet adapter NET0:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : ADMtek AN983 10/100 PCI Adapter
Physical Address. . . . . . . . . : 00-E0-4C-B3-F3-43
DHCP Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.0.198
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
DNS Servers . . . . . . . . . . . : 192.168.0.201
202.96.209.133
C:/Documents and Settings/Administrator>
--------------------------------------------------

5.运行OpenVPN进程
运行方法很多:
(1)可以通过图形界面的方式用鼠标点击操作 C:/Program Files/OpenVPN/bin/openvpn-gui.exe
(2)也可以在Cmd命令行里输入执行命令 openvpn-gui --connect client.ovpn
(3)也可以用鼠标右击你的client.ovpn主配置文件(如果是服务端的话右击server.ovpn文件),然后在弹出的快捷菜单中选中“Start OpenVPN on this config file”。

6.查看成功运行OpenVPN后的信息
显示
--------------------------------------------------------
Thu Aug 30 08:52:41 2007 OpenVPN 2.0.9 Win32-MinGW [SSL] [LZO] built on Oct 1 2
006
Thu Aug 30 08:52:41 2007 IMPORTANT: OpenVPN's default port number is now 1194, b
ased on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earl
ier used 5000 as the default port.
Thu Aug 30 08:52:41 2007 Control Channel Authentication: using 'C:/Program Files
/OpenVPN/ta.key' as a OpenVPN static key file
Thu Aug 30 08:52:41 2007 Outgoing Control Channel Authentication: Using 160 bit
message hash 'SHA1' for HMAC authentication
Thu Aug 30 08:52:41 2007 Incoming Control Channel Authentication: Using 160 bit
message hash 'SHA1' for HMAC authentication
Thu Aug 30 08:52:41 2007 LZO compression initialized
Thu Aug 30 08:52:41 2007 Control Channel MTU parms [ L:1542 D:166 EF:66 EB:0 ET:
0 EL:0 ]
Thu Aug 30 08:52:41 2007 Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:
0 EL:0 AF:3/1 ]
Thu Aug 30 08:52:41 2007 Local Options hash (VER=V4): '504e774e'
Thu Aug 30 08:52:41 2007 Expected Remote Options hash (VER=V4): '14168603'
Thu Aug 30 08:52:41 2007 UDPv4 link local: [undef]
Thu Aug 30 08:52:41 2007 UDPv4 link remote: 123.123.123.233:9988
Thu Aug 30 08:52:41 2007 TLS: Initial packet from 123.123.123.233:9988, sid=2080
0d3a 0b281635
Thu Aug 30 08:52:41 2007 VERIFY OK: depth=1, /C=CN/ST=Shanghai/L=Shanghai/O=Center/O

[email=U=Center/CN=VPN01/emailAddress=kanecruisesisgod@hotmail.com]U=Center/CN=VPN01/emailAddress=kanecruisesisgod@hotmail.com[/email]
Thu Aug 30 08:52:41 2007 VERIFY OK: nsCertType=SERVER
Thu Aug 30 08:52:41 2007 VERIFY OK: depth=0, /C=CN/ST=Shanghai/O=Center/OU=Center/CN=VPN

[email=SRV01/emailAddress=kanecruisesisgod@hotmail.com]SRV01/emailAddress=kanecruisesisgod@hotmail.com[/email]
Thu Aug 30 08:52:42 2007 Data Channel Encrypt: Cipher 'BF-CBC' initialized with
128 bit key
Thu Aug 30 08:52:42 2007 Data Channel Encrypt: Using 160 bit message hash 'SHA1'
for HMAC authentication
Thu Aug 30 08:52:42 2007 Data Channel Decrypt: Cipher 'BF-CBC' initialized with
128 bit key
Thu Aug 30 08:52:42 2007 Data Channel Decrypt: Using 160 bit message hash 'SHA1'
for HMAC authentication
Thu Aug 30 08:52:42 2007 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES2
56-SHA, 1024 bit RSA
Thu Aug 30 08:52:42 2007 [VPNSRV01] Peer Connection Initiated with 123.123.123.233:9988
Thu Aug 30 08:52:43 2007 SENT CONTROL [VPNSRV01]: 'PUSH_REQUEST' (status=1)
Thu Aug 30 08:52:43 2007 PUSH: Received control message: 'PUSH_REPLY,route 111.111.111.36 255.255.255.0,route 222.222.0.98 255.255.0.0,route 123.123.123.2
34 255.255.255.255,route 10.99.0.0 255.255.255.0,ping 10,ping-restart 120,ifconf
ig 10.99.0.10 10.99.0.9'
Thu Aug 30 08:52:43 2007 OPTIONS IMPORT: timers and/or timeouts modified
Thu Aug 30 08:52:43 2007 OPTIONS IMPORT: --ifconfig/up options modified
Thu Aug 30 08:52:43 2007 OPTIONS IMPORT: route options modified
Thu Aug 30 08:52:43 2007 TAP-WIN32 device [VPN] opened: //./Global/{6FCB56CF-B12
5-4D24-91A3-822CE03972DD}.tap
Thu Aug 30 08:52:43 2007 TAP-Win32 Driver Version 8.4
Thu Aug 30 08:52:43 2007 TAP-Win32 MTU=1500
Thu Aug 30 08:52:43 2007 Notified TAP-Win32 driver to set a DHCP IP/netmask of 1
0.99.0.10/255.255.255.252 on interface {6FCB56CF-B125-4D24-91A3-822CE03972DD} [D
HCP-serv: 10.99.0.9, lease-time: 31536000]
Thu Aug 30 08:52:43 2007 Successful ARP Flush on interface [2] {6FCB56CF-B125-4D
24-91A3-822CE03972DD}
Thu Aug 30 08:52:43 2007 TEST ROUTES: 0/0 succeeded len=4 ret=0 a=0 u/d=down
Thu Aug 30 08:52:43 2007 Route: Waiting for TUN/TAP interface to come up...
Thu Aug 30 08:52:44 2007 TEST ROUTES: 0/0 succeeded len=4 ret=0 a=0 u/d=down
Thu Aug 30 08:52:44 2007 Route: Waiting for TUN/TAP interface to come up...
Thu Aug 30 08:52:45 2007 TEST ROUTES: 4/4 succeeded len=4 ret=1 a=0 u/d=up
Thu Aug 30 08:52:45 2007 route ADD 111.111.111.36 MASK 255.255.255.0 10.99.0.9
Thu Aug 30 08:52:45 2007 route ADD 222.222.0.98 MASK 255.255.0.0 10.99.0.9
Thu Aug 30 08:52:45 2007 route ADD 123.123.123.234 MASK 255.255.255.255 10.99.0.
9
Thu Aug 30 08:52:45 2007 Route addition via IPAPI succeeded
Thu Aug 30 08:52:45 2007 route ADD 10.99.0.0 MASK 255.255.255.0 10.99.0.9
Thu Aug 30 08:52:45 2007 Route addition via IPAPI succeeded
Thu Aug 30 08:52:45 2007 Initialization Sequence Completed
----------------------------------------------------------------------------
(连接成功)连接成功的话,你应该在桌面右下角的托盘当中看到一个小电脑它的小屏幕颜色从红(未连接)-黄(正在连接)-绿(已经连接上)这样的过程。
再察看网络接口
-------------------------------------------------------------------------------
Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.
C:/Documents and Settings/Administrator>ipconfig/all
Windows IP Configuration
Host Name . . . . . . . . . . . . : kserver
Primary Dns Suffix . . . . . . . :
Node Type . . . . . . . . . . . . : Unknown
IP Routing Enabled. . . . . . . . : No
WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter VPN:
(这个名字叫“VPN”的网路接口就是通过OpenVPN运行起来的虚拟网络接口,并且这个“VPN”的名字也是由之前主配置文件中dev-node配置项定义的。)
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : TAP-Win32 Adapter V8
Physical Address. . . . . . . . . : 00-FF-6F-CB-56-CF
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IP Address. . . . . . . . . . . . : 10.99.0.10
(这个IP地址也是连接成功后由Server分配的)
Subnet Mask . . . . . . . . . . . : 255.255.255.252
Default Gateway . . . . . . . . . :
DHCP Server . . . . . . . . . . . : 10.99.0.9
Lease Obtained. . . . . . . . . . : 2007年8月30日 8:52:44
Lease Expires . . . . . . . . . . : 2008年8月29日 8:52:44

Ethernet adapter NET1:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : Broadcom 440x 10/100 Integrated Controller
Physical Address. . . . . . . . . : 00-18-8B-82-52-1A
DHCP Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.1.102
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.1.1
DNS Servers . . . . . . . . . . . : 202.96.209.5
202.96.209.133
Ethernet adapter NET0:
Connection-specific DNS Suffix . :
Description . . . . . . . . . . . : ADMtek AN983 10/100 PCI Adapter
Physical Address. . . . . . . . . : 00-E0-4C-B3-F3-43
DHCP Enabled. . . . . . . . . . . : No
IP Address. . . . . . . . . . . . : 192.168.0.198
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :
DNS Servers . . . . . . . . . . . : 192.168.0.201
202.96.209.133
C:/Documents and Settings/Administrator>
---------------------------------------------------------------------------
察看路由表
------------------------------------------------------------------------
C:/Documents and Settings/Administrator>route PRINT
IPv4 Route Table
===========================================================================
Interface List
0x1 ........................... MS TCP Loopback interface
0x2 ...00 ff 6f cb 56 cf ...... TAP-Win32 Adapter V8
0x10004 ...00 18 8b 82 52 1a ...... Broadcom 440x 10/100 Integrated Controller
0x10005 ...00 e0 4c b3 f3 43 ...... ADMtek AN983 10/100 PCI Adapter
===========================================================================
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.102 20
10.99.0.0 255.255.255.0 10.99.0.9 10.99.0.10 1
10.99.0.8 255.255.255.252 10.99.0.10 10.99.0.10 30
10.99.0.10 255.255.255.255 127.0.0.1 127.0.0.1 30
10.255.255.255 255.255.255.255 10.99.0.10 10.99.0.10 30
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
192.168.0.0 255.255.255.0 192.168.0.198 192.168.0.198 20
192.168.0.198 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.0.255 255.255.255.255 192.168.0.198 192.168.0.198 20
192.168.1.0 255.255.255.0 192.168.1.102 192.168.1.102 20
192.168.1.102 255.255.255.255 127.0.0.1 127.0.0.1 20
192.168.1.255 255.255.255.255 192.168.1.102 192.168.1.102 20
123.123.123.234 255.255.255.255 10.99.0.9 10.99.0.10 1
111.111.111.0 255.255.255.0 10.99.0.9 10.99.0.10 1
222.222.0.0 255.255.0.0 10.99.0.9 10.99.0.10 1
224.0.0.0 240.0.0.0 10.99.0.10 10.99.0.10 30
224.0.0.0 240.0.0.0 192.168.0.198 192.168.0.198 20
224.0.0.0 240.0.0.0 192.168.1.102 192.168.1.102 20
255.255.255.255 255.255.255.255 10.99.0.10 10.99.0.10 1
255.255.255.255 255.255.255.255 192.168.0.198 192.168.0.198 1
255.255.255.255 255.255.255.255 192.168.1.102 192.168.1.102 1
Default Gateway: 192.168.1.1
===========================================================================
Persistent Routes:
None
C:/Documents and Settings/Administrator>
--------------------------------------------------------------------------
这里10.99.0.0网段出现,还有其他的一些新增路由如111.111.111.0/24和222.222.0.0/16这些路由,这些都是由Server那里Push过来的。并且他们的Metric是1,因此他们是优先匹配这些路由出局的。
ping远端VPN Server主机虚拟地址
C:/Documents and Settings/Administrator>ping 10.99.0.1
Pinging 10.99.0.1 with 32 bytes of data:
Reply from 10.99.0.1: bytes=32 time=22ms TTL=64
Reply from 10.99.0.1: bytes=32 time=22ms TTL=64
Reply from 10.99.0.1: bytes=32 time=22ms TTL=64
Reply from 10.99.0.1: bytes=32 time=21ms TTL=64
Ping statistics for 10.99.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 21ms, Maximum = 22ms, Average = 21ms
C:/Documents and Settings/Administrator>
连接成功

(0)

相关推荐

  • windows 下安装secureCRT

    secureCRT是一款小巧好用的服务器登录软件,那么如何在windows下安装呢?下面小编给大家分享一下. 操作方法 01 首先点击secureCRT安装程序,会进入到协议同意界面,直接点击同意,然 ...

  • 怎样在windows下安装tomcat

    在windows下安装tomcat,一共6个步骤. 步骤/方法 01 双击.exe安装程序,显示如下图所示的欢迎页面. 02 点击next按扭出现如下图所示的页面 03 点击I Agree进入下一步安 ...

  • Windows下安装python的scipy等科学计算包

    如果要使用python进行科学计算.数据分析等,一定要安装scipy.seaborn.numpy等等包. 但Windows下安装python的第三方库经常会出现问题.此前,已介绍过Windows下如何 ...

  • 图解Windows下安装ElasticSearch

    本篇将和大家介绍Windows下安装ElasticSearch,希望对大家的工作和学习有所帮助! 安装Java SE环境 01 安装Java SE环境,从Java Se Download下载和安装Ja ...

  • 图解Windows下安装WebLogic

    Oracle 的Weblogic分开发者版本和生产版本,有32位和64位.一般生产版本的weblogic是64位的,安装文件是一个大小为1G多的jar包.去oracle官网上下载64版weblogic ...

  • windows下安装和配置多个版本的JDK

    如何在windows下安装和配置多个版本的jdk,本文将带你在windows下安装jdk,配置环境变量,以及不同jdk版本之间切换 jdk的安装 01 在oracle官网下载跟系统相匹配的jdk,如下 ...

  • windows下安装Django

    Django是一个开放源代码的Web应用框架,由Python写成.采用了MVC的软件设计模式,即模型M,视图V和控制器C.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是C ...

  • 怎样在windows下安装Perl

    若要使用Perl.首先必须安装Perl.Perl的安装是非常容易的,并且不会出错.实际上作为安装步骤的一部分,Perl应该进行自我测试.以确保它安装成功.安装的操作过程可以有很大的差别,这要根据你运行 ...

  • Windows 下安装配置网卡

    操作方法 01 Windows 下安装配置网卡 随着网络应用的日益广泛,越来越多的用户使用网络上共享的资源,在组建一个家庭网络或者小型办公网络时,网卡必不可少的硬件设备,必须在每台所要连接的机器上安装 ...