Monday, March 28, 2011

基于OpenVPN成立SSL VPN收集(毗连异地局域网+远程单点接入)


基于OpenVPN成立SSL VPN收集(毗连异地局域网+远程单点接入)系统情形: 处事端:RHEL5 [ 2.6.18-8.el5xen ] 用户端:Windows XP SP2 软件情形: openssl-0.9.8b-8.3.el5 (RHEL5自带) http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz http://openvpn.net/release/openvpn-2.0.9.tar.gz http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe 收集拓扑结构: http://blogimg.chinaunix.net/blog/upfile2/081114190351.jpg VPN处事器R1(济南): eth0 192.168.1.1/24 (作为LAN1的默认网关地址) eth1 64.3.2.1/24 (接入Internet) VPN处事器R2(青岛): eth0 192.168.2.1/24 (作为LAN2的默认网关地址) eth1 75.6.7.8/24 (接入Internet) VPN移动终端PC1: 使用Windows XP系统,接入Internet #################################################################### 一、设置装备摆设VPN处事器R1(济南) 1、安装lzo-2.03、openvpn-2.0.9软件包 使用尺度的tarball体例编译安装即可。 shellgt; tar … 继续阅读

基于OpenVPN成立SSL VPN收集(毗连异地局域网+远程单点接入)系统情形: 处事端:RHEL5 [ 2.6.18-8.el5xen ] 用户端:Windows XP SP2 软件情形: openssl-0.9.8b-8.3.el5 (RHEL5自带) http://www.oberhumer.com/opensource/lzo/download/lzo-2.03.tar.gz http://openvpn.net/release/openvpn-2.0.9.tar.gz http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe 收集拓扑结构: http://blogimg.chinaunix.net/blog/upfile2/081114190351.jpg VPN处事器R1(济南): eth0 192.168.1.1/24 (作为LAN1的默认网关地址) eth1 64.3.2.1/24 (接入Internet) VPN处事器R2(青岛): eth0 192.168.2.1/24 (作为LAN2的默认网关地址) eth1 75.6.7.8/24 (接入Internet) VPN移动终端PC1: 使用Windows XP系统,接入Internet #################################################################### 一、设置装备摆设VPN处事器R1(济南) 1、安装lzo-2.03、openvpn-2.0.9软件包 使用尺度的tarball体例编译安装即可。 shellgt; tar zxvf lzo-2.03.tar.gz -C /usr/src shellgt; cd /usr/src/lzo-2.03 shellgt; ./configure make make install shellgt; tar zxvf openvpn-2.0.9.tar.gz -C /usr/src shellgt; cd /usr/src/openvpn-2.0.9 shellgt; ./configure make make install shellgt; cp sample-scripts/openvpn.init /etc/init.d/openvpn shellgt; chkconfig –add openvpn shellgt; service openvpn status 2、建造证书和相关密钥文件 (参考/usr/src/openvpn-2.0.9/easy-rsa/README文件) 1)调整及预界说变量 shellgt; mkdir /etc/openvpn/ shellgt; cd /usr/src/openvpn-2.0.9/easy-rsa shellgt; vi vars export D=`pwd` export KER_CONFIG=$D/openssl.cnf export KEY_DIR=/etc/openvpn/keys/ #//改削生成的密钥等文件的保留位置 export KEY_SIZE=1024 export KEY_COUNTRY=CN #//以下为用于各密钥中的预界说信息 export KEY_PROVINCE=ShanDong export KEY_CITY=JiNan export KEY_ORG=OpenVPN-TEST export KEY_EMAIL=lvsheat#126.com shellgt; . vars shellgt; ./clean-all 2)建树证书、密钥等文件 shellgt; ./build-ca #//生成CA证书 shellgt; ./build-dh #//生成dh(Diffie-Hellman)文件 shellgt; ./build-key-server server_r1 #//生成R1处事器的密钥 shellgt; ./build-key client_r2 #//生成R2处事器的密钥 shellgt; ./build-key client_pc1 #//生成PC1用户端的密钥,以上各密钥的Common Name不要不异。 shellgt; openvpn –genkey –secret /etc/openvpn/keys/ta.key #//若不使用tls-auth,此项可不做 3、成立OpenVPN处事端设置装备摆设文件 可以参考/usr/src/openvpn-2.0.9/sample-config-files/server.conf文件。 1)成立r1-r2地道的server设置装备摆设文件 shellgt; vi /etc/openvpn/r1_r2_server.conf local 64.3.2.1 #//指定监听处事的公网接口地址 port 1194 #//指定监听的端口 proto udp dev tun ca keys/ca.crt cert keys/server_r1.crt key keys/server_r1.key dh keys/dh1024.pem tls-auth keys/ta.key 0 cipher BF-CBC #//若使用tls-auth,各客户端需与此连结一致 server 10.8.8.0 255.255.255.0 #//指定r1-r2 SSL VPN地道的虚拟子网 ifconfig-pool-persist ipp.txt push dhcp-option DNS 218.56.57.58 #//为r2指定DNS处事器地址 push dhcp-option DNS 202.106.0.20 #//为r2指定DNS处事器地址 push route 192.168.1.0 255.255.255.0 #//为r2添加访谒LAN1网段的路由记实 push route 10.9.9.0 255.255.255.0 #//为r2添加访谒r1-PC1地道虚拟收集的路由记实 route 192.168.2.0 255.255.255.0 #//为r1添加访谒LAN2网段的路由 client-config-dir ccd #//许可在ccd子目录中供给个体客户端的额外设置装备摆设文件(以客户端的Common Name命名 ) keepalive 10 120 comp-lzo max-clients 100 #//指定最年夜并发毗连数 user nobody group nobody persist-key persist-tun status /tmp/openvpn-status-r1r2.log log-append /tmp/openvpn-r1r2.log verb 3 2)成立r1-pc1地道的server设置装备摆设文件 shellgt; vi /etc/openvpn/r1_pc1_server.conf local 64.3.2.1 port 1195 #//指定一个区别于r1-r2地道设置装备摆设的端口 proto udp dev tun ca keys/ca.crt cert keys/server_r1.crt key keys/server_r1.key dh keys/dh1024.pem tls-auth keys/ta.key 0 cipher BF-CBC server 10.9.9.0 255.255.255.0 #//指定r1-pc1 SSL VPN地道的虚拟子网 ifconfig-pool-persist ipp.txt push dhcp-option DNS 218.56.57.58 #//为pc1指定DNS处事器地址 push dhcp-option DNS 202.106.0.20 #//为pc1指定DNS处事器地址 push route 192.168.1.0 255.255.255.0 #//为pc1添加访谒LAN1网段的路由记实 push route 192.168.2.0 255.255.255.0 #//为pc1添加访谒LAN2网段的路由记实 push route 10.8.8.0 255.255.255.0 #//为pc1添加访谒r1-r2地道虚拟收集的路由记实 route 192.168.2.0 255.255.255.0 #//为r1添加访谒LAN2网段的路由 client-config-dir ccd keepalive 10 120 comp-lzo max-clients 100 user nobody group nobody persist-key persist-tun status /tmp/openvpn-status-r1pc1.log log-append /tmp/openvpn-r1pc1.log verb 3 3)成立VPN客户端r2、pc1的自力设置装备摆设 shellgt; mkdir /etc/openvpn/ccd/ shellgt; vi /etc/openvpn/ccd/client_r2 #//使用密钥文件中R2的Common Name作为文件名 iroute 192.168.2.0 255.255.255.0 #//书记r2所毗连的LAN2局域网段 ifconfig-push 10.8.8.2 10.8.8.1 #//设置r2的IP、P-t-P地址 shellgt; vi /etc/openvpn/ccd/client_pc1 ifconfig-push 10.9.9.2 10.9.9.1 #//设置pc1的IP、P-t-P地址 4、开启路由及SNAT、启动OpenVPN处事 shellgt; sysctl -w net.ipv4.ip_forward=1 shellgt; iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j SNAT –to-source 64.3.2.1 shellgt; service openvpn start shellgt; netstat -anp | grep openvpn #//查看是否监听udp端口1194、1195 shellgt; ifconfig tun0 #//查看tun0的VPN接口信息( IP:10.8.8.1 P-P:10.8.0.2) shellgt; ifconfig tun1 #//查看tun1的VPN接口信息( IP:10.8.1.1 P-P:10.8.1.2) 二、设置装备摆设VPN处事器R2(青岛) 1、安装lzo-2.03、openvpn-2.0.9软件包 —-gt; 同R1。 2、下载证书和相关密钥文件 年夜R1处事器上下载ca.crt、client_r2.key、client_r2.crt、ta.key文件,并保留至/etc/openvpn/keys/目录。注重做好备份。 3、成立VPN用户端设置装备摆设文件 成立r1-r2地道的client设置装备摆设文件 shellgt; vi /etc/openvpn/r1_r2_client.conf client #//使用客户端模式 dev tun remote 64.3.2.1:1194 #//指定对端处事器的地址和端口(1194) proto udp resolv-retry infinite nobind user nobody group nobody persist-key persist-tun ca keys/ca.crt cert keys/client_r2.crt key keys/client_r2.key ns-cert-type server tls-auth keys/ta.key 1 cipher BF-CBC #//注重与r1的设置装备摆设连结一致 comp-lzo verb 3 4、开启路由及SNAT、启动OpenVPN处事 shellgt; sysctl -w net.ipv4.ip_forward=1 shellgt; iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth1 -j SNAT –to-source 75.6.7.8 shellgt; service openvpn start shellgt; ifconfig tun0 #//查看tun0的VPN接口信息( IP:10.8.8.2 P-P:10.8.8.1) 三、设置装备摆设VPN移动终端PC1 前提是能够接入Internet。 1、安装软件包 安装openvpn-2.0.9-gui-1.0.3-install.exe 2、下载证书和相关密钥文件 年夜R1处事器上下载ca.crt、client_pc1.crt、client_pc1.key、ta.key文件,并保留至C:Program FilesOpenVPNconfig目录。注重做好备份。 3、成立用户端设置装备摆设文件 用记事本成立C:Program FilesOpenVPNconfig
1-pc1_client.ovpn文件,内容如: client dev tun proto udp remote 64.3.2.1 1195 #//指定远程处事器的地址和端口(1195) resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert client01.crt key client01.key ns-cert-type server tls-auth keys/ta.key 1 cipher BF-CBC #//注重与r1的设置装备摆设连结一致 comp-lzo verb 3 4、毗连VPN处事器 右击系统托盘区的OpenVPN GUI的停笔,选择Connect即可。 毗连成功往后,可以在客户端的cmd中运行ipconfig /all查看VPN Client收集毗连信息。 四、测试VPN毗连 1、LAN1、LAN2两个局域网的主机能够经由过程SSL VPN地道进行互相通信(默认网关分袂设为R1、R2的内网接口地址)。 2、PC1能够经由过程SSL VPN地道访谒LAN1、LAN2中的主机。 3、以上可以使用traceroute呼吁进熟行单测试。 例如,在PC1中跟踪访谒LAN2中主机的路由:——–gt; C:Documents and SettingsAdministratorgt; tracert 192.168.2.163 Tracing route to Qingdao-Station163 [192.168.2.163] over a maximum of 30 hops: 1 Trace complete. C:Documents and SettingsAdministratorgt;





Published by
Published by xFruits
Original source : http://www.vpn123.tk/?p=209...

No comments:

Post a Comment