軟體簡介
軟體開發者為 James Yonan ,以 GPL 方式發佈。是一套很有名的開源軟體。軟體功能可以在,Routed 或 Bridged 的環境及遠端存取設備上,建立 P to P 或著 Site to Site 的,加密安全連線。軟體使用 SSL/TLS 方式進行加密,可穿越 NAT 及有Firewalls 的環境。
Logo Ref Open VPN Project
OpenVPN 允許在 P-to-P 進行身份認證時,使用預設的共享密鑰,證書或使用者帳號/密碼。
當使用VPN Server 管理多個登入使用者時,OpenVPN 允許 Server 對每一個不同的使用者,簽發憑證以進行認證作業。
OpenVPN 使用OpenSSL 加密庫及 SSLv3/TLSv1 通訊進行加密,同時包含了許多安全性及控制功能。
目前軟體可在Solaris, Linux, OpenBSD, FreeBSD, NetBSD, QNX, Mac OS X, Windows 2000/XP/Vista 上執行。
在 Windows Mobile, Android, iPhone等行動裝置,雖然有支援多種VPN作業,但並不包含OpenVPN。
軟體必須進行安裝程序及透過手動設定組態檔案,無法使用一般的圖形安裝方式,當伺服器及使用者端在連接時,會依所使用的認證方式,選擇性的使用不同的組態檔,及使用1個或多個的密鑰做認證。
有些電腦玩家,會由網際網路,利用OpenVPN,連入區域網路,以使用在區域網路內才可進行的區網遊戲。
以上是OpenVPN 的簡單介紹,接著要來進行建置作業。
OpenVPN Server
一樣是做在Xen 虛機上,OS 使用 CentOS 5.4 ,連接3個網段 192.168.2.0/24 及 10.8.0.0/24 ,10.8.10.0/24,希望完成下面的測試角本。
底層主機使用FC8,在上面建立兩台虛機做測試。第1台為VPN Server ,第2台為小瑞的袐密花園,只有連上第1台的VPN Server ,建立了加密通道,才可以連至那台 Private Garden。要建立VPN 連線,還會通過一個NAT ,說明了本篇第1段所說的 “軟體使用 SSL/TLS 方式進行加密,可穿越 NAT 及有Firewalls 的環境” 。
先用Xen 做一個CentOS 5.4
先在底層Host OS 下,建立一個新作業系統要用的Logical volume,vps05LV00 20G
[root@rico ~]# lvcreate -n vps05LV00 -L 20G /dev/VolGroup00
Logical volume "vps05LV00" created
[root@rico ~]#
接著,之前已經有做過了一個CentOS 5.4 x86_64 的作業系統,直接複製一份。
[root@rico ~]# dd if=/dev/VolGroup00/centos5x64 of=/dev/VolGroup00/vps05LV00
41943040+0 records in
41943040+0 records out
21474836480 bytes (21 GB) copied, 1788.66 s, 12.0 MB/s
先把底層那台的VNC server 啟動一下,以方便,等等連進去查看,虛機啟動狀況。
[root@rico ~]#vncserver :10
編寫一下,開啟虛機的Script。設定檔名openvpn.xen , 半虛擬化,1顆CPU,512MB RAM,2張網卡,20G的HDD(前面己預先裝好的CentOS5.4作業系統。
[root@rico ~]#vi openvpn.xen
# ip 192.168.2.198 / 192.168.100.1
# host: openvpn.nuface.tw
# vps05LV00 : 20G
name = "openvpn"
memory = "512"
vcpus = 1
vif = [ 'type=bridge, bridge=eth0','type=bridge, bridge=virbr0' ]
disk = [ 'phy:/dev/VolGroup00/vps05LV00,xvda,w']
root = "/dev/xvda1 ro"
# Sets runlevel 4.
extra = "4"
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'
bootloader = "/usr/bin/pygrub"
vfb = [ 'type=vnc,vncunused=1']
啟動這台虛機。
[root@rico ~]#xm create openvpn.xen
連入VNC 去查看啟動狀況。
成功啟動,登入作業系統,修改網卡設定值 。
[root@rico ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Xen Virtual Ethernet
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.2.198
NETMASK=255.255.255.0
ONBOOT=yes[root@rico ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth1
# Xen Virtual Ethernet
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.100.1
NETMASK=255.255.255.0
ONBOOT=yes
Note,把HWADDR=XX:XX:XX:XX:XX:XX Mark 掉,不要指定HWADDR,由外層的Host OS 指定即可,如果在內層也指定的話,內外如果MAC 不同,會啟動另一個ifconfig 的設定,IP 就會跑掉。
搞定後,重啟network 。
[root@rico ~]#/etc/init.d/network restart
網路設定好後,連入做設定VPN 作業。
欲知後事,第2集,待續!
分類:MIS易筋經,網路篇
標籤:CentOS 5.4, Open VPN, OpenVPN, site to site, Xen
[…] 前情提要:OpenVPN 建置筆記(第1集) […]