站長新書 站長開講 首頁 最新文章 站長著作及審校 FreeBSD 筆記 Linux 筆記 Windows 筆記 虛擬化筆記 網管人雜誌 遊山玩水 關於本站
站長新書 VMware vSphere ICM 團購開跑了!!

Poptop-建立 PPTP 的 VPN 通道

前言

以下前言內容引用自 [D-Link 技術新知]

PPTP 與 L2TP 均為第二層的穿隧技術,適合具有 IP/IPX/AppleTalk 等多種協定的環境。IPsec、PPTP、L2TP 三者,最大的不同在於運用 IPsec 的技術,使用者可以同時使用 Internet 與 VPN 的多點傳輸功能 (包括 Internet/Intranet/Extranet/Remote Access...等),而 PPTP 及 L2TP 只能執行點對點 VPN 的功能,無法同時執行 Internet 的應用,使用時較不方便而在安全性方面,IPSec 會對整個傳輸資料做加密而 PPTP 及 L2TP 則是僅針對封包的再包 (Encapsulation) 並未對資料做加密處理,安全性相對較低。

實作環境

安裝及設定

本次實作的 [poptop] 其穿隧技術 (Tunneling) 為 PPTP。

步驟1.檢查 Kernel

在安裝 [poptop] 前先確定我們的核心是否有開啟 tun 裝置。

 #/usr/src/sys/i386/conf/GW       //GW 為 kernel name
 device  tun   # Packet tunnel.   //確定此行沒註解掉

步驟2.安裝 poptop 套件

切換至 Ports Tree 路徑安裝 poptop 套件

 #cd /usr/ports/net/poptop         //切換到安裝路徑
 #make install clean               //安裝套件並清除安裝過程中產生不必要檔案

步驟3.修改 poptop 設定檔 (pptpd.conf)

修改 poptop 設定檔 (pptpd.conf) 內容如下

 #vi /usr/local/etc/pptpd.conf     //修改內容如下
 option /etc/ppp/ppp.conf          //指定 ppp 設定檔路徑
 listen 61.60.59.58                //指定要開放 VPN 連結的 Public IP
 localip 192.168.88.1              //指定 VPN Client 屆時的 Gateway IP
 remoteip 192.168.88.50-60         //指定發給 VPN client IP Range
 pidfile /var/run/pptpd.pid        //指定 pid 檔案路徑

步驟4.修改 ppp.conf 設定檔

 #vi /etc/ppp/ppp.conf             //修改 ppp.conf 設定檔內容如下
 loop:
 set timeout 0
 set log phase chat connect lcp ipcp command
 set device localhost:pptp
 set dial
 set login
 ### Server (local) IP address, Range for Clients, and Netmask
 set ifaddr 192.168.88.1 192.168.88.50-192.168.88.60 255.255.255.0   //指定 VPN Client 的 Gateway IP 及發放的 IP Range
 set server /tmp/loop "" 0177
 loop-in:
 set timeout 0
 set log phase lcp ipcp command
 allow mode direct 
 pptp:
 load loop
 enable chap
 enable MSCHAPv2
 disable deflate pred1
 deny deflate pred1
 set mppe 128 stateless
 enable MPPE
 accept MPPE
 enable chap81
 disable pap
 enable proxy
 accept dns
 ### DNS Servers to assign client
 set dns 192.168.1.1                                                 //指定 VPN Client 的 DNS IP
 set device !/etc/ppp/secure

步驟5.建立 secure 裝置設定檔

建立裝置設定檔內容如下

 #vi /etc/ppp/secure       //加入如下二行
 #!/bin/sh
 exec /usr/sbin/ppp -direct loop-in

將該檔案權限設為 700 (安全性設定)

 #chmod 700 secure

步驟6.建立 ppp.secret 密碼檔

建立 VPN Client 密碼檔 (ppp.secret)

 #vi /etc/ppp/ppp.secret   //建立 VPN Client 帳號密碼檔
 weithenn 123              //id、pwd

步驟7.啟動 poptop 服務

鍵入如下指令啟動 poptop 服務

 #/usr/local/etc/rc.d/pptpd.sh start                               //啟動 poptop 服務

啟動 poptop 服務會開啟 Port 1723 (可參考 /etc/service) 也可利用 sockstat 來查看狀態

 #sockstat | grep pptpd
 root     pptpd        23468 15 tcp4   61.60.59.58:1723      *:*   //啟動 poptop 服務

參考

[poptop官網]

[Running PoPToP in FreeBSD]

[VPN How-To Wang, Chun-Pin]

[FreeBSD Diary-Creating a VPN using PPTP]

[PoPToP 安裝 (MS VPN)]

[網路層的護身符(上):IPSec簡介]

[網路層的護身符(下):IPSec協定與應用]

Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com