經過近半個月的無數次嘗試,實驗了好多個網路流傳的安裝方法,現將成功的方法記錄如下。
L2TP 一鍵安裝包
Zed Lau的一鍵安裝封裝 http://www.vpseek.com/automated-l2tp-over-ipsec-implement-script,用此安裝方法,特別省事。
安裝環境:Linode Centos 5.6 32bit,Linode CentOS 6.2 64bit
安裝步驟:
wget http://mirror.vpseek.com/auto-l2tp/1.2/centos/l2tp.sh
sh l2tp.sh
提示輸入ip range (Linode預設是沒有Private IP的,需要自己在後台添加,Dashboard -> Remote Access -> Add Private IPs)
要求輸入PSK (PSK是 l2tp client 共同使用的密匙,必填選項,IOS 和 Android 裡設定都是要用到的)
如圖,表示安裝過程已經結束。 特別注意紅框裡的輸出結果。
預設的使用者名稱是test,密碼是test123。
修改方法:
vi /etc/ppp/chap-secrets
內容格式:
# user server password ip
username l2tpd userpass *
(注意:ip那邊直接預設為星號*就可以了;vi的用法新手可能會抓狂,但是多練習就好了。)
服務端安裝結束。
下面設定手機串連VPN,以ios為例。
上面的 L2TP 一鍵安裝包 也是基於 openswan + xl2ptd 源碼編譯的,我最初也是參考 gkp 搭建VPN的,當時用的的64位的Centos 6.2,一直不成功。現在空間搬遷了,我索性把Linode的系統重新安裝了32位的Centos 5.6來做實驗。
基於 ipsec-tools 安裝
有人說用openswan做環境來安裝l2tp的vpn,Android串連時有問題。(原文:As Openswan is reported having issues with Android ICS (byte 7 of ISAKMP NAT-OA Payload must be zero))
http://wiki.nikoforge.org/L2TP/IPSec_VPN_Setup_on_Centos_6_(64-bit)_for_use_with_Android_ICS_and_iOS_5_Clients
所以我照這個方法搭建,搭建過程比 openswan + xl2ptd 順利,IOS能成功串連VPN,但是就是不能訪問外網。個人之前懷疑是Linode 區域網路的ip設定問題,但是經過上面方法測試後,否定了這個想法。
現在使用了DigitalOcean的VPS,網站也搬過去,Linode可以空出來盡情實驗了。小夥伴們看看我部落格訪問速度怎麼樣?
後話
建l2tp/ipsec實驗還在進行中。。。