2012-09-03

用DD-WRT快速建立PPTP VPN Server

Source : 

蘇老在噗浪碎碎念

 

ddwrt
之前在部落格曾經寫過關於用Fortigate 建立VPN 的一系列文章,但這是因為公司申請中華電信資安艦隊方案所獲贈的機器(當然,羊毛還是出在羊身上...),一般小型企業或家庭不太可能花錢砸設備,那如果想要自建VPN Server 該怎麼辦?

還好,網路上有DD-WRT 這公開的軔體能刷在特定的IP 分享器使用,裡面提供的功能包羅萬象,就看分享器內建的ROM 有多大,能使用的功能就有多少。
注意!刷非原廠軔體不在保固範圍內,不過我好像買來第一天就都改刷了...

所以這次就是要用DD-WRT 內建PPTP Server 來完成任務。有支援的軔體版本請參考官方連結

設定方式非常簡單,兩張圖就講完。
進入分享器的頁面後,找 [伺服器] -> [VPN],然後點選啟用 [PPTP 伺服器]。

instvpn01

參考下面說明及圖片進行設定。
伺服器IP 欄位請輸入IP分享器的內部IP
以本文為例,則是 192.168.1.254,也就是指定IP分享器為Gateway。

用戶端IP 欄位請輸入希望給予的IP 範圍,建議設定為同網段範圍,格式如:

view sourceprint?

1.192.168.1.161-165

這部份在經過惡搞後發現,輸入跟分享器不同網段,VPN 還是會連接並取得設定的IP ,但你會發現就被關在那個網段裡面了,連Internet 都上不了。

CHAP-Secrets 欄位則是用來輸入相關的帳號密碼,格式為:

view sourceprint?

1.帳號1* 密碼 *

2.帳號2* 密碼 *

如果需要給予多筆帳號,可以分行建立。請注意密碼的前後務必給予一個空格,否則就會跟我當初測試時一樣鬼打牆。

instvpn02

最後請點選 [儲存重啟],使PPTP Server 功能生效,這樣就完成了伺服器端的設定。

接著在用戶端進行設定連線及測試。
到 [控制台] -> [網路及網際網路] -> [網路和共用中心],點選 [設定新的連線和網路]。

w7instvpn01

 

點選 [連線到工作地點]。

w7instvpn02

點選 [使用我的網際網路連線 (VPN) ]。

w7instvpn03

這部份的資訊在連線時很重要,請輸入該IP分享器的對外或網址。「目的地名稱」則是用來建立連線時的識別名稱。

w7instvpn04

輸入帳號密碼後即完成在用戶端的連線設定。

w7instvpn05

而在Windows 7 裡最快的連線步驟,就是用滑鼠左鍵點擊右下角的網路圖示,再依據指示就能成功連線。
圖中的「PPTP」就是當初建立的「目的地名稱」。

pptp_cont01pptp_cont02

 

最後要說的是,以台灣目前的網路環境,一般家用的ADSL/FTTB大都屬於浮動IP,所以在連線使用VPN 可能會有些不方便。如果像是使用中華電信的用戶,其實可以轉申請浮動轉固定的服務,或者可以申請Dyndns 的動態DNS 服務,然後在DD-WRT 上進行設定,這樣就會比較容易在外面連線到對外服務的IP 分享器,然後與內部網路進行連接。

另外特別提醒的是,如果有考慮開啟VPN Server,建議盡量將內部網路的網段設定至較為特別的位置,避開使用類似192.168.0.0/24或192.168.1.0/24等網段,因為這些網段都常在旅館或咖啡廳被使用,會導致兩端在建立VPN 連線後,都位在同樣網段時,很容易造成存取或連線上的錯誤。

用下面這幾張圖來說明會比較容易。
假設右端在企業外部的電腦與左端的分享器建立起PPTP VPN 後,取得的IP 為 192.168.1.162,那麼當他要存取左端192.168.1.1 或192.168.1.159 這兩台主機的資源時,會在右端尋找還是自動找到左端呢?

vpn_visio

取得的IP 狀態。

vpn_ipconfig

其實從路由表來看,會比較清楚些。在建立VPN 連線後,會以左端的企業內部環境為優先,右端的內部資源可能就無法正常存取了。

vpn_routeprint

以本文的環境範例來說,在 DD-WRT 的系統基本設定頁面,路由器的網路設定除了基本的 IP 必須設定外,也請務必輸入閘道(Gateway)的值,也就是路由器本身,否則將可能造成撥進 VPN 後,用戶端無法透過該路由器上網。

2012-2-1-21-47-48-550x510

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.