2011年12月29日 星期四

Linux下以l2tp方式撥入VPN網路

  1、下載l2tp用戶端

  wget ftp://ftp.xelerance.com/xl2tpd/xl2tpd-1.1.12.tar.gz

  2、解壓

  tar zxvf xl2tpd-1.1.12.tar.gz

  3、進入解壓目錄,並編譯和安裝

  cd xl2tpd-1.1.12

  make; make install

  4、在/etc目錄下建立xl2tpd目錄,並在該目錄下建立l2tp的設定檔xl2tpd.conf

  mkdir /etc/xl2tpd

  vim /etc/xl2tpd.conf

  xl2tpd.conf檔的內容如下:

[global]
port = 1701

[lac myvpn]
lns = vpnserver ip or domain name
refuse pap = yes
require authentication = no
name = myaccount
ppp debug = yes
pppoptfile = /etc/ppp/options.myvpn_l2tp

這裡假設你的vpn的帳號為myaccount

  5、在/etc/ppp目錄下建立options.myvpn_l2tp文件。

  vi /etc/ppp/options.myvpn_l2tp

該檔的內容如下:

asyncmap 0
noauth
crtscts
lock
hide-password
modem
netmask 255.255.255.0
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
ipcp-accept-local
ipcp-accept-remote

  6、在/etc/ppp/chap-secrets檔中加入myaccount的密碼:

myaccount * mypassword *

  7、運行xl2tpd程式。

  xl2tpd

  如果你需要看到程式的輸出資訊,可以在後面加上參數D,如:

  xl2tpd -D

此時輸出上可能會出現This binary does not support kernel L2TP. 不用理會它,沒什麼影響,但是如果報告:Open_controlfd: Unable to open /var/run/xl2tpd/l2tp-control for reading.的錯誤,則需要手動的在/var/run目錄下建立一個名為xl2tpd的目錄:

mkdir /var/run/xl2tpd

  8、新開一終端,使用以下方法開始撥號:

echo "c vpnlife" > /var/run/xl2tpd/l2tp-control

如果配置正確無誤,則可正常撥入虛擬網管的l2tp VPN網路中了,此時如果用ifconfig查看連接情況,可以看到多了一條ppp連接,並能正確分到IP位址了。

  9、添加路由

  雖然已經撥號上來了,但此時,如果你要訪問你的虛擬區域網路資源,你必需添加一條路由才行,這裡假設你撥號上來的連接名為ppp0,並此你的虛擬區域網路的IP段為192.168.163.0,那麼,你需要加入以下命令:

route add -net 192.168.163.0 netmask 255.255.255.0 dev ppp0

  至此,在Linux系統下以l2tp方式撥入虛擬網管的VPN網路中了。

  以上操作過程在Ubutun 8.1Fedora 78910下操作通過。

1 則留言:

  1. 你好
    我想請問一下
    如果我想建立出多條VPN該怎做呢?

    例如有公司A與公司B
    我想同時連上這兩間(他們虛擬網段不同)
    那我該怎做呢?

    謝謝@@"

    回覆刪除

DNSSEC安全技術簡介 作者:游子興 / 臺灣大學計算機及資訊網路中心網路組約聘幹事 DNS 是一套已經廣泛使用的Internet 服務,但因先天的技術限制導致容易成為駭客攻擊的目標。本文主要在介紹DNSSEC 之緣起與技術背景,及其使用的加解密技術如何確保資料的完整...