Open×××的安装与配置... 1

一,基本安装... 1

1.1相关软件包: 1

1.2具体安装... 1

二,网络配置... 1

三,具体配置... 2

3.1创建证书配置文件: 2

3.2建立服务器的认证书和密匙: 2

3.3建立客户端证书: 2

3.4创建Diffie Hellman参数: 2

3.5拷贝证书相关的文件:... 2

3.6配置服务端: 3

3.7启动服务端open***. 3

3.8配置client端: 4

3.9制作启动服务... 5

四,问题总结: 5

Open×××的安装与配置

一,基本安装

1.1相关软件包:

http://open***.net/

Lzo-1.08.targz

Open***-2.09.tar.gz

openssl

1.2具体安装

# cd /root

# tar zxvf lzo-1.08.tar.gz

# cd lzo-1.08

# ./configure

# make

# make install

# cd /root

# tar zxvf open***-2.0_beta7.tar.gz

# cd open***-2.0

# ./configure --with-lzo-headers=/usr/local/include --with-lzo-lib=/usr/local/lib

# make

#cp –Rf open***-2.0 /etc/open***

二,网络配置

网络规划:

***使用路由模式还是网桥模式

建议使用路由模式.

私有子网网段的规划

建立×××往往会把各个地方的私有子网网段连接在一起.

互联网IP地址分配机构(IANA)已经保留了以下3个网段为私有子网网段所用(RFC 1918):

10.0.0.0 10.255.255.255 (10/8 prefix)

172.16.0.0 172.31.255.255 (172.16/12 prefix)

192.168.0.0 192.168.255.255 (192.168/16 prefix)

三,具体配置

3.1创建证书配置文件:

下面是linux/bsd/unix系统建立PKI:

#cd /etc/open***/easy-rsa

#vi vars

export KEY_COUNTRY=CN

export KEY_PROVINCE=BJ

export KEY_CITY=Bj

export KEY_ORG="xxxx"

export [email protected]

#. ./vars (注意. .之间有空格)

#./clean-all

#./build-ca

最后的命令build-ca将认证CA证书,这些密匙跟openssl紧密结合.

3.2建立服务器的认证书和密匙:

#./build-key-server server

3.3建立客户端证书:

#./build-key client1

#./build-key client2

#./build-key client3

如果你想保护你的客户端密匙,请运行build-key-pass脚本.

为了区分每个客户端,必须用适当的名称命名”Common Name”, 比如. "client1", "client2", or "client3". 通常是为每个客户端指定唯一的”common name”.

3.4创建Diffie Hellman参数:

open***服务必须创建Diffe Hellman:

#./build-dh

#cd /etc/open***

#mkdir conf keys

#cd easy-rsa/keys

3.5拷贝证书相关的文件:

#cp ca.crt /etc/open***/keys

#cp server.crt /etc/open***/keys

#cp server.key /etc/open***/keys

#cp dh1024.pem /etc/open***/keys

3.6配置服务端:

#cd sample-config-files/

#cp server.conf /etc/open***/conf/

#cd /etc/open***/conf

#cp server.conf server.conf.cao

#vi server.conf

---------------------------cut begin-----------------------------------------------------------

port 1194

proto tcp

dev tun

ca /etc/open***/keys/ca.crt

cert /etc/open***/keys/server.crt

key /etc/open***/keys/server.key # This file should be kept secret

dh /etc/open***/keys/dh1024.pem

server 172.16.0.0 255.255.255.0

ifconfig-pool-persist ipp.txt

push "route 172.16.0.0 255.255.255.0"

push "route 172.16.0.0 255.255.255.0"

client-config-dir /etc/open***/ccd

route 172.16.0.0 255.255.255.0

client-to-client

keepalive 10 120

comp-lzo

user nobody

group nobody

persist-key

persist-tun

status open***-status.log

verb 3

plugin /etc/open***/plugin/simple.so

-------------------------------cut end------------------------------------------------

3.7启动服务端open***

#mkdir ccd

#cd ccd

#vi lin

ifconfig-push 172.16.0.6 172.16.0.7

#./open*** --config conf/server.conf

3.8配置client端:

#cd /etc/open***

#mkdir conf

#cd sample-config-files/

#grep –v “^#” client.conf > 1.conf

#cp 1.conf /etc/open***/conf/client.conf

#cd ../

#vi conf/client.conf

-------------------------------------cut begin-----------------------------------------------

client

;dev tap

dev tun

;dev-node MyTap

proto tcp

;proto udp

remote 192.168.13.211 1194

;remote my-server-2 1194

;remote-random

resolv-retry infinite

nobind

user nobody

group nobody

persist-key

persist-tun

;http-proxy-retry # retry on connection failures

;http-proxy [proxy server] [proxy port #]

;mute-replay-warnings

ca /etc/open***/keys/ca.crt

cert /etc/open***/keys/lin.crt

key /etc/open***/keys/lin.key

;ns-cert-type server

;tls-auth ta.key 1

;cipher x

comp-lzo

verb 3

--------------------------------cut end---------------------------------------------

3.9制作启动服务

#cd /etc/open***

#cd sample-scripts/

#cp open***.init /etc/rc.d/init.d/open***

#chkconfig –add open***

#cd /etc/open***/conf

#cp server.conf ../ //将配置文件拷贝到/etc/open***根目录下即可.

#service open*** start 即可即动open*** 服务.

客户端启动服务制作类似于服务器的上述过程.

四,问题总结:

1. 在sever.conf/client.conf 里的证书keys相关的文件要写编对路径.

2. 协议选中tcp时,去掉udp协议.将udp协议注释掉.

3. ./build-ca,./build-key-server //这两个的common name必须是一样的.

4. ./build-key client ..不同的client不一样的common name 不能和上面的

common name一样, cd keys index.txt serils下有很多相关的记录.

5. 考虑证书生效时间问题,要考虑服务端和客户端的时间同步问题,具体设置时方法:

Eg: date -s 20:30:30 #设置系统时间为20:30:30, clock –w #将系统时间(如由date设置的时间)写入Bios;利用网络时间同步时间: ntpdate pool.ntp.org