環境介紹:
外網IP: 119.119.119.119
內網網絡:192.168.0.0/16
OPEN***: 192.168.98.88
內網辦公機:192.168.0.5
系統環境:
OPEN***:Centos6.6_64 2.6.32-504.12.2.el6.x86_64 open***-2.3.6
Client:Windows 7_64
Centos用作open***服務端,客戶端通過安裝windows版open***軟件進行連接內網。
禁用selinux,清空防火牆規則。
# sed -i '/SELINUX/s/enabled/disabled/' /etc/selinux/config
# grep disabled /etc/selinux/config
# disabled - No SELinux policy is loaded.
SELINUX=disabled
# iptables -F
# iptables -nL
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
2. 開啓路由轉發功能呢,保證撥入***後可連接到內部網絡。
# echo "net.ipv4.ip_forward = 1" >/etc/sysctl.conf ;sysctl -p
3. 安裝open***服務端,通過yum方式來進行安裝,這裏使用epel的yum源。
# rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel//6/x86_64/epel-release-6-8.noarch.rpm
# yum install open*** easy-rsa
4. 創建open***配置目錄,拷貝配置腳本到指定目錄下
# mkdir -p /etc/open***/easy-rsa/keys
# cp -rf /usr/share/easy-rsa/2.0/* /etc/open***/easy-rsa/
5. 準備創建CA證書文件,修改vars文件中變量值。國家、省、城市、組織、郵箱、單位
# vim /etc/open***/easy-rsa/vars
export KEY_COUNTRY="CN"
export KEY_PROVINCE="BJ"
export KEY_CITY="Beijing"
export KEY_ORG="TEST"
export KEY_EMAIL="[email protected]"
export KEY_OU="TEST"
6. 到easy-rsa目錄下,拷貝openssl配置文件,並且引用之前修改的文件,使變量生效。
# cd /etc/open***/easy-rsa/
# cp openssl-1.0.0.cnf openssl.cnf
# source ./vars
7. 初始化證書授權中心,創建CA證書,輸出信息中已經引用了之前所設置的變量值,這裏一路回車即可
# ./clean-all
# ./build-ca
8. 創建服務端證書和密鑰。
# ./build-key-server server
9. 創建客戶端證書和密鑰。
# ./build-key client
10. 創建Diffie Hellman 參數,Diffie Hellman 用於增強安全性,在Open***是必須的。
# ./build-dh
11.至此所需證書及密鑰都已經生成完畢。拷貝服務端所需證書到/etc/open***下
# cp dh2048.pem ca.crt server.crt server.key /etc/open***/
12.拷貝客戶端需要用到的證書文件,這裏使用sz命令進行下載到本地
# sz ca.crt client.crt client.key
13.拷貝服務端配置文件,並編輯添加相關內容。
# cp /usr/share/doc/open***-2.3.6/sample/sample-config-files/server.conf /etc/open***/
# vim /etc/open***/server.conf
local 192.168.98.88 #監聽本地ip
port 11940 #監聽端口這裏使用11940
push "dhcp-option DNS 114.114.114.114" #open***可以在配置中支持DNS設置
push "dhcp-option DNS 8.8.4.4"
push "route 192.168.0.0 255.255.0.0" #本地內網網段
14. 服務端配置完成,啓動程序,查看是否監聽11940的udp端口,默認爲udp,並且看到多出來一塊網卡tun0,IP爲10.8.0.1
# service open*** start
# lsof -i :11940
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEopen*** 13420 root 7u IPv4 6688438 0t0 UDP 192.168.98.88:11940 # netstat -anuActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address State
udp 0 0 192.168.98.88:11940 0.0.0.0:*
# ifconfig tun0
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:2949 errors:0 dropped:0 overruns:0 frame:0
TX packets:2763 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:299160 (292.1 KiB) TX bytes:2198503 (2.0 MiB)
所有服務端都已經配置完畢,現在可以到客戶端進行測試
windows客戶端安裝open***-install-2.3.0-I001-x86_64.exe客戶端。
2.將客戶端證書文件拷貝到安裝目錄的config目錄下。
3.拷貝安裝目錄下sample-config下的client.o***也放到config下面。
並修改remote my-server-1 1194 改爲 remote 119.119.119.119 11940
由於open***服務端在內網,所以還需到路由器上面做下端口映射,將119.119.119.119的11940映射到192.168.98.88的11940端口
4.啓動客戶端,可看到分配了一個10.8.0.5的ip,現在ping 192.168.98.88可以通,訪問10.8.0.1也通。
客戶端到open***服務器的網絡已經連通,如果想訪問內網所有設備,還需要在內網的路由器上面加一條路由條目,將訪問10.8.0.0網段的指向192.168.98.88,這樣外面就可以連接其他內網設備了。
這裏是只開通一臺機器來進行測試,把自己辦公電腦添加到10.8.0.0的路由,實現撥入***後,連接自己辦公電腦,所有操作均通過辦公電腦來進行跳板操作。
在cmd命令行添加靜態路由:route -p ADD 10.8.0.0 MASK 255.255.255.0 192.168.98.88
在外網連接***後可通過遠程桌面對辦公電腦進行操作,從而對內網其他服務器進行操作。