酷!學園
2010-03-18 03:33 *
歡迎光臨, 訪客. 請先 登入註冊一個帳號.
您忘了 啟用您的帳號嗎?

請輸入帳號, 密碼以及預計登入時間
新聞:
 
   首頁 | Study-Area | 鳥園 | 鳥哥的Linux私房菜   說明 搜尋 日曆 登入 註冊  
頁: [1] 2
  列印  
作者 主題: 安裝及架設VPN-PPTP  (閱讀 66182 次)
0 會員 以及 1 訪客 正在閱讀本篇主題.
zoob
鑽研的研究生
*****
文章: 776


檢視個人資料 個人網站
« 於: 2003-05-14 21:09 »

安裝及架設VPN-PPTP

作者: zoob (vincent@myunix.adsldns.org)

版權聲明:可以任意轉載,轉載時請務必標明原始出處和作者資訊

前言

PoPToP是在Linux上建置VPN的其中一種方法,它可以讓Linux、Windows 95、98、NT、2000可利用現有套件簡單的撥號網路與VPN Server建立安全的VPN通道。目前可支援40及128位元的加密方式。PoPTop是適用於GPL授權方式的軟體。

PoPToP的首頁: http://www.moretonbay.com/con/pptp.html

安裝環境

Redhat 7.3(Kernel 2.4.20)
PPP-2.4.1
PPTP-1.1.4

一、設定及啟動PPP、PPTP

安裝PPP

(1)首先請先至 http://public.planetmirror.com/pub/mppe/ 下載 ppp-2.4.1-3mppe.src.rpm

(2)rpm -ivh ppp-2.4.1-3mppe.src.rpm

(3)cd /usr/src/redhat/SOURCE

(4)解壓縮ppp-mppe-2.4.1.tar.gz

(5)cd ppp-mppe-2.4.1

(6)./configure;make;make install

安裝pptpd

(1)首先請先至 http://sourceforge.net/project/showfiles.php?group_id=44827 下載 pptpd-1.1.4-b3.tar.gz

(2)解壓縮pptpd-1.1.4-b3.tar.gz

(3)./configure;make;make install


設定/etc/ppp/chap-secrets

增加帳號及密碼,範例如下:

程式碼:
# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
vincent         *       1234                  *


設定/etc/pptpd.conf

範例如下:

程式碼:
debug
option /etc/ppp/options.pptp
localip 192.168.0.1
remoteip 192.168.1.1-100


註:localip和remoteip的最大連接數為100個,超過的話,將會忽略連接要求

設定/etc/ppp/options.pptp

此處的檔案名稱可隨意取名,但是須與/etc/pptpd.conf裡面的option選項的檔案相符合,範例如下:

lock
debug
auth
+chap
proxyarp


Enable IPforward

程式碼:
echo 1 > /proc/sys/net/ipv4/ip_forward


啟動pptpd

程式碼:
pptpd -d


注意/var/log/messages有無錯誤訊息

啟動成功後,會多出一interface,叫做ppp0

新增Windows 2000的「虛擬私人連線」

(1)新增連線
「桌面」->在「網路上芳鄰」按滑鼠右鍵->「內容」->「建立新連線」->「透過Internet連線到私人網路」->輸入主機名稱(192.168.0.1)->完成

(2)設定連線

請將連線內容裡「安全性」的「要求資料加密」取消選取->「確定」

(3)測試連線

Double Click該連線,輸入「使用者名稱」及「密碼」->連線

連線成功後,會多出一虛擬介面叫做「PPP adapter 虛擬私人連線:」
它的Ip address為192.168.1.xx

檢查是否能ping到192.168.0.1及192.168.1.0其它的ip

以上步驟只是讓你能建立PPTP連線,並未有加密的功能。如要增加加密功能,請參考以下步驟

二、PPP+MPPE

重新編譯Kernel

http://public.planetmirror.com/pub/mppe/ 下載linux-2.4.19-openssl-0.9.6b-mppe.patch.gz

(1)cd /usr/src/linux-2.4.20

(2)zcat /tmp/linux-2.4.19-openssl-0.9.6b-mppe.patch.gz | patch -p1

(3)開始compile kernel,這裡不加以敘述過程
請注意在compile kernel,在Network Device裡,一定要將下列項目編譯為Modules

    <M>   PPP support for async serial ports
    <M>   PPP support for sync tty ports
    <M>   PPP Deflate compression
    <M>   PPP BSD-Compress compression


(4)Compile Kernel完畢後,請在/etc/modules.conf加入以下敘述

    alias char-major-108 ppp_generic
    alias /dev/ppp ppp_generic
    alias tty-ldisc-3 ppp_async
    alias tty-ldisc-14 ppp_synctty
    alias ppp-compress-18 ppp_mppe
    alias ppp-compress-21 bsd_comp
    alias ppp-compress-24 ppp_deflate
    alias ppp-compress-26 ppp_deflate


(5)重新開機

(6)重新編譯ppp

請至 http://public.planetmirror.com/pub/mppe/ 下載 ppp-2.4.1-MSCHAPv2-fix.patch.gz  至 /tmp目錄

1. 至 /usr/src/redhat/SOURCE/ppp-mppe-2.4.1目錄下執行以下指令

程式碼:
zcat /tmp/ppp-2.4.1-MSCHAPv2-fix.patch.gz | patch -p1
./configure
make
make install


(7)修改/etc/ppp/options.pptp

    lock
    debug
    proxyarp
    auth
    +chap
    +chapms
    +chapms-v2
    mppe-40
    mppe-128
    mppe-stateless
    ms-wins 192.168.1.2
    ms-dns 192.168.1.2


(8)重新啟動pptpd daemon

程式碼:
killall pptpd;pptpd -d


(9)建立VPN-PPTP連線

Windows 2000、XP

新增Windows 2000的「虛擬私人連線」

1.新增連線
「桌面」->在「網路上芳鄰」按滑鼠右鍵->「內容」->「建立新連線」->「透過Internet連線到私人網路」->輸入主機名稱(192.168.0.1)->完成

2.設定連線

請將勾選連線內容裡「安全性」的「要求資料加密」->「確定」

3.測試連線

Double Click該連線,輸入「使用者名稱」及「密碼」->連線

連線成功後,會多出一虛擬介面叫做「PPP adapter 虛擬私人連線:」
它的Ip address為192.168.1.xx

檢查是否能ping到192.168.0.1及192.168.1.0其它的ip

在右下角的網路連線圖示裡,點選滑鼠右鍵->選擇「狀態」->選擇「詳細資料」

此時的內容應該為

    伺服器類型                       PPP
    傳輸                                   TCP/IP
    驗證                                   MS CHAP V2
    加密                                   MPPE 128
    壓縮                                   無
    PPP多重連結架構            關閉
    伺服器IP位址                   192.168.0.1
    用戶端IP位址                   192.168.1.1


Windows 9x


依作業系統不同至以下網址下載新的Dial Up Networking Tool,目前最新版本為1.4

Windows 95

http://www.microsoft.com/windows95/downloads

Windows 98

http://www.microsoft.com/windows95/downloads/corporate.asp


也可下載128位元Dial Up Networking Tool程式

http://support.microsoft.com/support/ntserver/128eula.asp

設定撥號網路

1.開啟撥號網路->建立新的連線->裝置請選擇Microsoft VPN Adapter->輸入PPTP Server(192.168.0.1)->完成

2.使用滑鼠右鍵點選剛剛建立的VPN連線->選取內容->選擇伺服器類型->勾選密碼加密->取消勾選Netbeui和Ipx/Spx->確定

3.點選VPN連線->輸入使用者名稱及密碼

4.完成

參考文件網址

http://www.poptop.org/
http://pptpclient.sourceforge.net/
http://public.planetmirror.com/pub/mppe/


註1:PPTP是走Protocol 47的GRE protocol,請記得在防火牆開啟此規則

註2:如要看到網路上的芳鄰時,請在/etc/ppp/options.ppp指定ms-wins選項即可

註3:為何無法連線至192.168.1.1以外的電腦?

請啟動ip_forward及proxyarp.....
已記錄
ericshei
全區板主
俺是博士!
*****
文章: 2254


檢視個人資料
« 回覆文章 #1 於: 2003-05-14 22:47 »

有機會用到,先推再說!!!!  ^^
已記錄
pin99
可愛的小學生
*
文章: 12


檢視個人資料
« 回覆文章 #2 於: 2003-06-11 02:28 »

感謝分享... ㄏㄏㄏ  ㄏㄏㄏ  ㄏㄏㄏ

小弟有點不解...我可以連上pptpd了...
但是..連上以後可以做甚麼呢?
好像 dns 會找不到...  難過  很多問號 ...
已記錄
liber
活潑的大學生
***
文章: 225


檢視個人資料
« 回覆文章 #3 於: 2003-06-11 14:15 »

謝謝 Zoob 大大的著作

但是小弟我在測試的時候出現了點問題,不知道大家有遇到嗎?? 驚訝

OS:RedHat 9.0
Kernel:2.4.20-8


照上述的步驟安裝之後.... pptpd -d 沒有任何的回應

/var/log/message 沒有任何關於 pptpd 的東西

不知道我是不是哪兒做錯了勒??
已記錄
zoob
鑽研的研究生
*****
文章: 776


檢視個人資料 個人網站
« 回覆文章 #4 於: 2003-06-11 14:23 »

你們是做到我文章的哪個步驟? only PPP or MPPE + PPP

PPP + MPPE的話,是否有custom compile kernel + patch?
已記錄
liber
活潑的大學生
***
文章: 225


檢視個人資料
« 回覆文章 #5 於: 2003-06-11 15:29 »

哈哈!!

Zoob 大大果然回覆速度粉快,我設定 PPP+pptp 的時候,依樣畫葫蘆之後 pptpd -d 挖勒不理我

檢查好幾遍之後,決定改安裝 pptpd-1.1.4-b4.i386.rpm,之後 service pptpd restart 好了說

不過我的 ppp0 必須在 Client 撥號連上來之後才會出現

我想我找到問題了!!

如果用 tarball 安裝要用這樣的方式指定他啟動 pptpd -c /etc/pptpd.conf -d

文至於此應該是沒有問題了

但是zoob 請教個問題,您所說的 PPP or MPPE + PPP 這兩個不是一個是有加密的一個則是沒有加密,如果 ppp 選用了加密時連線就會失敗,是這樣解釋的嗎??

謝謝啦
 :lol:  :lol:
已記錄
zoob
鑽研的研究生
*****
文章: 776


檢視個人資料 個人網站
« 回覆文章 #6 於: 2003-06-11 22:56 »

hi...liber

沒錯!!MPPE(Microsoft Point-To-Point Encryption Protocol)是讓PPP在傳輸過程中加密
已記錄
abelyang
酷!學園 學長們
俺是博士!
*****
文章: 1097


檢視個人資料
« 回覆文章 #7 於: 2003-06-30 17:28 »

引用
重新編譯Kernel
http://public.planetmirror.com/pub/mppe/ 下載linux-2.4.19-openssl-0.9.6b-mppe.patch.gz

(1)cd /usr/src/linux-2.4.20

(2)zcat /tmp/linux-2.4.19-openssl-0.9.6b-mppe.patch.gz | patch -p1

我覺得這一段會有問題吧 ~~,
http://www.cert.org/advisories/CA-2002-23.html

如果你是用 SuSe 的再注意一下這篇
http://www.securityfocus.com/advisories/5454

0.9.6b 的 SSL 是有問題的版本,不知道這樣用會不會有問題 ?!
我做的時候參考的是這篇
http://home.swbell.net/berzerke/howto.html
已記錄
zoob
鑽研的研究生
*****
文章: 776


檢視個人資料 個人網站
« 回覆文章 #8 於: 2003-06-30 17:48 »

引用自: "abelyang"
引用
重新編譯Kernel
http://public.planetmirror.com/pub/mppe/ 下載linux-2.4.19-openssl-0.9.6b-mppe.patch.gz

(1)cd /usr/src/linux-2.4.20

(2)zcat /tmp/linux-2.4.19-openssl-0.9.6b-mppe.patch.gz | patch -p1

我覺得這一段會有問題吧 ~~,
http://www.cert.org/advisories/CA-2002-23.html

0.9.6b 的 SSL 是有問題的版本,不知道這樣用會不會有問題 ?!



Hi...abelyang

linux-2.4.19-openssl-0.9.6b-mppe.patch.gz這只是mppe可透過openssl可去加密的kernel patch,只要你的openssl版本有在0.9.6e or  0.9.7-beta之後的版本即可。跟mppe kernel patch沒有什麼關係。

註:我測試過的版本為Kernel 2.4.20 + OpenSSL-0.9.6e + linux-2.4.19-openssl-0.9.6b-mppe.patch.gz,測試過均無問題
已記錄
潛水夫
可愛的小學生
*
文章: 21


檢視個人資料
« 回覆文章 #9 於: 2003-10-01 17:11 »

請問一下, 當我在試做時, 一切順利, 但在測試時, 有兩個問題.
1.從messages中看到, 當client連線進來時, 會有"Cannot determine ethernet address for proxy ARP"的訊息, 不知是否正常??
2.當client連線進去後, 可以ping到另一張網卡的IP, 但是和此張網卡同網段的IP卻都ping不到, 不知是什麼地方有所疏漏??
我目前只在試未加密的方式, 所採取的步驟和上述一樣, 尚望先進能提供解答, 或者是可供研究的地方, 謝謝!!!!
已記錄
duncanlo
俺是博士!
*****
文章: 7173


檢視個人資料
« 回覆文章 #10 於: 2003-10-02 00:45 »

引用自: "潛水夫"
請問一下, 當我在試做時, 一切順利, 但在測試時, 有兩個問題.
1.從messages中看到, 當client連線進來時, 會有"Cannot determine ethernet address for proxy ARP"的訊息, 不知是否正常??
2.當client連線進去後, 可以ping到另一張網卡的IP, 但是和此張網卡同網段的IP卻都ping不到, 不知是什麼地方有所疏漏??
我目前只在試未加密的方式, 所採取的步驟和上述一樣, 尚望先進能提供解答, 或者是可供研究的地方, 謝謝!!!!


proxy arp沒有自動啟用的關係,
曾在一台freebsd firewall上的pptp server發生同樣的現象,
除了pptp server上的ip外,
其他同網段的ip都找不到,
但手動telnet到pptp server再把proxy arp加入就可以,
但是我另外一台單機freebsd架的就很正常!
已記錄
潛水夫
可愛的小學生
*
文章: 21


檢視個人資料
« 回覆文章 #11 於: 2003-10-02 08:03 »

謝謝你的指導!!!!不好意思, 再請問一下, 那要如何把"proxy arp"加入呢??我的操作步驟都是按照上面做的, 連設定檔的內容都一樣.
還是有什麼額外的手續及設定, 能否麻煩再指點一下.
謝謝!!!!
已記錄
duncanlo
俺是博士!
*****
文章: 7173


檢視個人資料
« 回覆文章 #12 於: 2003-10-02 21:50 »

參考arp的指令!
已記錄
潛水夫
可愛的小學生
*
文章: 21


檢視個人資料
« 回覆文章 #13 於: 2003-10-02 21:53 »

謝謝!!!!我試試看.
已記錄
潛水夫
可愛的小學生
*
文章: 21


檢視個人資料
« 回覆文章 #14 於: 2003-10-03 15:36 »

我試著以手動的方式加入, 但是仍然無法ping到其他的機器, 不知是何原因, 能否再指導一下.
謝謝!!!!
已記錄
潛水夫
可愛的小學生
*
文章: 21


檢視個人資料
« 回覆文章 #15 於: 2003-10-31 10:30 »

謝謝zoob大大的熱心協助, VPN Server已上線將近一個月了(真不好意思, 這個一架好後, 又被丟別的工作在忙, 所以現在才來答謝), 其中雖還有一些小問題, 但有錯誤嚐試的經驗後, 已解決部份, 待有時間, 再把安裝步驟及自己的錯誤觀念, 想法post上來.
已記錄
yuhleon
可愛的小學生
*
文章: 18


檢視個人資料
« 回覆文章 #16 於: 2004-08-22 00:16 »

引用自: "zoob"
安裝及架設VPN-PPTP

作者: zoob (vincent@myunix.adsldns.org)

版權聲明:可以任意轉載,轉載時請務必標明原始出處和作者資訊

(5)重新開機

(6)重新編譯ppp

請至 http://public.planetmirror.com/pub/mppe/ 下載 ppp-2.4.1-MSCHAPv2-fix.patch.gz  至 /tmp目錄

1. 至 /usr/src/redhat/SOURCE/ppp-mppe-2.4.1目錄下執行以下指令

程式碼:
zcat /tmp/ppp-2.4.1-MSCHAPv2-fix.patch.gz | patch -p1
./configure
make
make install




除了-2.4.1-MSCHAPv2-fix.patch這個,好像還要先執行ppp-2.4.1-openssl-0.9.6-mppe.patch,不然make的時候都會一直過不去...
error: CHAP_MICROSOFT_V2未定義
已記錄
ychao
懷疑的國中生
**
文章: 42


檢視個人資料
« 回覆文章 #17 於: 2004-08-30 01:36 »

請問如果client端是Linux的話,應該要怎麼設定呢?
已記錄
hankue
可愛的小學生
*
文章: 7


檢視個人資料
« 回覆文章 #18 於: 2004-09-01 11:54 »

引用自: "潛水夫"
謝謝你的指導!!!!不好意思, 再請問一下, 那要如何把"proxy arp"加入呢??我的操作步驟都是按照上面做的, 連設定檔的內容都一樣.
還是有什麼額外的手續及設定, 能否麻煩再指點一下.
謝謝!!!!
我是在iptables加上/sbin/iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -j MASQUERAD
192.168.11是發給windows的網段
已記錄
hankue
可愛的小學生
*
文章: 7


檢視個人資料
« 回覆文章 #19 於: 2004-09-03 17:47 »

不知有沒有人在fc2裝成功mppe
已記錄
aix
可愛的小學生
*
文章: 21


檢視個人資料 個人網站
« 回覆文章 #20 於: 2004-11-09 11:48 »

大大:
   請問一下,我想Linux Server 做Client,要如何設定,或那裏有文章可以參考
    套件要去那D/L,,謝謝。
已記錄
akong
活潑的大學生
***
文章: 477


檢視個人資料 個人網站
« 回覆文章 #21 於: 2004-12-02 18:27 »

不好意思哦
我想問一下
我已經可以連上VPN了
可是我連上VPN後
虛擬網卡的IP不是我VPN伺服器的DHCP IP
請問是什麼問題呢
我是用fc1+pptp
簡單說
我真實網卡是拿192.168.1.XX
但是當我連上VPN後
那個虛擬網卡的IP是192.168.1.XX
那就衝突了
而且他寫伺服器IP是192.168.0.XX
真的不知道有什麼情形可能會發生這種情形呢
已記錄
krab
憂鬱的高中生
***
文章: 153


檢視個人資料
« 回覆文章 #22 於: 2004-12-07 14:48 »

引用自: "akong"
不好意思哦
我想問一下
我已經可以連上VPN了
可是我連上VPN後
虛擬網卡的IP不是我VPN伺服器的DHCP IP
請問是什麼問題呢
我是用fc1+pptp
簡單說
我真實網卡是拿192.168.1.XX
但是當我連上VPN後
那個虛擬網卡的IP是192.168.1.XX
那就衝突了
而且他寫伺服器IP是192.168.0.XX
真的不知道有什麼情形可能會發生這種情形呢


請檢查一下您的設定檔
/etc/pptpd.conf
..
localip 192.168.0.1
remoteip 192.168.1.1


這個檔案指定了vpn server的IP以及vpn client的IP。在goolge裡討論PPTP的似乎很少在此著墨,為什麼這麼設?

當然也可以設成如下組合

localip 192.168.1.1
remoteip 192.168.1.100-200

或者

localip 172.16.1.1
remoteip 172.16.1.11-51

因為我現在正在學習shorewall的設定,shorewall裡有一篇專門討論pptpd,作者就將vpn server 的IP設成local 網卡的IP(192.168.1.254,亦即eth0及ppp0都是同一個IP),而vpn client的IP則設成192.168.1.51-55。作者說明故意設成這樣是要將vpn client的IP視為VPN server local的網段,以方便防火牆的設定。(註shorewall防火牆的設定是以zone的觀念來做的,如果VPN的整個網段都納入local的IP網段,似乎是滿方便的。不過我自己還設得一頭霧水?)

至於在vpn client 如win2k or winxp,vpn連線的gateway可以選擇使用遠端網路的閘道,這樣的話所有的路由都指向vpn server的IP去了,如果您遠端的ppp0(指pptp的interface)沒有做適當的設定(譬如將ppp0 masquerade到對外的interface如eth1的話),您的client就只能在vpn server及client的這條vpn路上跑來跑去,卻永遠也出不去。如果masquerade的話它就有出路了。意思是client所有東西都送到vpn server去,要連外的就從vpn server那邊出去。

如果在vpn client 如win2k or winxp,vpn連線的gateway取消使用遠端網路的閘道
的話,那麼只有vpn的東西會送到vpn server去,而其他的全部用client自家的default gateway。意思是vpn連線成功的時候,系統會建立一條靜態路由專門給vpn使用,其他的就不變了。

以上這些可以在您的client的win2k 或winxp的命令提示字元上下達
netstat -r
比較一下兩者路由表的不同,就很清楚了。

以上是我個人的認識,如果觀念不正確的話,請學長們不吝指正。
已記錄

snowian
可愛的小學生
*
文章: 1


檢視個人資料
« 回覆文章 #23 於: 2004-12-09 02:00 »

CTRL: Ignored a SET LINK INFO packet with real ACCMs!
Dec  9 01:50:35 snowman modprobe: modprobe: Can't locate module ppp-compress-21
Dec  9 01:50:35 snowman modprobe: modprobe: Can't locate module ppp-compress-26
Dec  9 01:50:35 snowman modprobe: modprobe: Can't locate module ppp-compress-24

請問這是那裡出問題??
這是client連進來又斷了後看messege中出現的
我是用centos3.3+kernel2.4.28+pppd2.4.3+pptpd1.2.1
麻煩了
已記錄
bahia
可愛的小學生
*
文章: 1


檢視個人資料
« 回覆文章 #24 於: 2004-12-17 09:34 »

我照上面的方法順利的架了一台VPN Server
但是如果clinet端是使用ADSL 撥接的話
雖然可以連上VPN Server,但是卻無法使用VPN 內部的資源
如果換成固定IP 的ADSL 難過  就都正常,請問是什麼原因呢
已記錄
hotspring
可愛的小學生
*
文章: 2


檢視個人資料
vpn
« 回覆文章 #25 於: 2005-01-02 14:59 »

不好意思,貼到回覆區,想說樓主懂VPN的安裝所以我想來問問二個問題。
因為貼到NetWork區沒人回覆,大概是不懂吧!
希望懂的人回覆一下吧!感謝你們

我目前在做一個有關VPN的報告,班上同學問有沒有實例,我傻眼.......老師也很想要我去找看看有沒有公司的實例,由於我沒有在大公司上班,所以接觸不到VPN。希望有在公司上班的大大可否幫解一下疑問?

問1: 架設一個VPN,員工與公司之間 ( 員工只出差在外 ) 和 總公司與分公司之
間,各需要哪些設備 ( 像路由器....這類等 ) 和 哪些軟體 。

問2: 設備與軟體 或 設備與設備之間的密鑰之交換如何做?
( 這題是問加解密是哪一種?如何做? )

謝謝大大的幫助 ^^
已記錄
moveboy
憂鬱的高中生
***
文章: 175


檢視個人資料
« 回覆文章 #26 於: 2005-01-19 13:05 »

引用自: "zoob"
安裝及架設VPN-PPTP

作者: zoob (vincent@myunix.adsldns.org)

版權聲明:可以任意轉載,轉載時請務必標明原始出處和作者資訊

前言

PoPToP是在Linux上建置VPN的其中一種方法,它可以讓Linux、Windows 95、98、NT、2000可利用現有套件簡單的撥號網路與VPN Server建立安全的VPN通道。目前可支援40及128位元的加密方式。PoPTop是適用於GPL授權方式的軟體。

PoPToP的首頁: http://www.moretonbay.com/con/pptp.html

安裝環境

Redhat 7.3(Kernel 2.4.20)
PPP-2.4.1
PPTP-1.1.4

一、設定及啟動PPP、PPTP

安裝PPP

(1)首先請先至 http://public.planetmirror.com/pub/mppe/ 下載 ppp-2.4.1-3mppe.src.rpm

(2)rpm -ivh ppp-2.4.1-3mppe.src.rpm

(3)cd /usr/src/redhat/SOURCE

(4)解壓縮ppp-mppe-2.4.1.tar.gz

(5)cd ppp-mppe-2.4.1

(6)./configure;make;make install

安裝pptpd

(1)首先請先至 http://sourceforge.net/project/showfiles.php?group_id=44827 下載 pptpd-1.1.4-b3.tar.gz

(2)解壓縮pptpd-1.1.4-b3.tar.gz

(3)./configure;make;make install


設定/etc/ppp/chap-secrets

增加帳號及密碼,範例如下:

程式碼:
# Secrets for authentication using CHAP
# client        server  secret                  IP addresses
vincent         *       1234                  *


設定/etc/pptpd.conf

範例如下:

程式碼:
debug
option /etc/ppp/options.pptp
localip 192.168.0.1
remoteip 192.168.1.1-100


註:localip和remoteip的最大連接數為100個,超過的話,將會忽略連接要求

設定/etc/ppp/options.pptp

此處的檔案名稱可隨意取名,但是須與/etc/pptpd.conf裡面的option選項的檔案相符合,範例如下:

lock
debug
auth
+chap
proxyarp


Enable IPforward

程式碼:
echo 1 > /proc/sys/net/ipv4/ip_forward


啟動pptpd

程式碼:
pptpd -d


注意/var/log/messages有無錯誤訊息

啟動成功後,會多出一interface,叫做ppp0

新增Windows 2000的「虛擬私人連線」

(1)新增連線
「桌面」->在「網路上芳鄰」按滑鼠右鍵->「內容」->「建立新連線」->「透過Internet連線到私人網路」->輸入主機名稱(192.168.0.1)->完成

(2)設定連線

請將連線內容裡「安全性」的「要求資料加密」取消選取->「確定」

(3)測試連線

Double Click該連線,輸入「使用者名稱」及「密碼」->連線

連線成功後,會多出一虛擬介面叫做「PPP adapter 虛擬私人連線:」
它的Ip address為192.168.1.xx

檢查是否能ping到192.168.0.1及192.168.1.0其它的ip

以上步驟只是讓你能建立PPTP連線,並未有加密的功能。如要增加加密功能,請參考以下步驟

二、PPP+MPPE

重新編譯Kernel

http://public.planetmirror.com/pub/mppe/ 下載linux-2.4.19-openssl-0.9.6b-mppe.patch.gz

(1)cd /usr/src/linux-2.4.20

(2)zcat /tmp/linux-2.4.19-openssl-0.9.6b-mppe.patch.gz | patch -p1

(3)開始compile kernel,這裡不加以敘述過程
請注意在compile kernel,在Network Device裡,一定要將下列項目編譯為Modules

    <M>   PPP support for async serial ports
    <M>   PPP support for sync tty ports
    <M>   PPP Deflate compression
    <M>   PPP BSD-Compress compression


(4)Compile Kernel完畢後,請在/etc/modules.conf加入以下敘述

    alias char-major-108 ppp_generic
    alias /dev/ppp ppp_generic
    alias tty-ldisc-3 ppp_async
    alias tty-ldisc-14 ppp_synctty
    alias ppp-compress-18 ppp_mppe
    alias ppp-compress-21 bsd_comp
    alias ppp-compress-24 ppp_deflate
    alias ppp-compress-26 ppp_deflate


(5)重新開機

(6)重新編譯ppp

請至 http://public.planetmirror.com/pub/mppe/ 下載 ppp-2.4.1-MSCHAPv2-fix.patch.gz  至 /tmp目錄

1. 至 /usr/src/redhat/SOURCE/ppp-mppe-2.4.1目錄下執行以下指令

程式碼:
zcat /tmp/ppp-2.4.1-MSCHAPv2-fix.patch.gz | patch -p1
./configure
make
make install


(7)修改/etc/ppp/options.pptp

    lock
    debug
    proxyarp
    auth
    +chap
    +chapms
    +chapms-v2
    mppe-40
    mppe-128
    mppe-stateless
    ms-wins 192.168.1.2
    ms-dns 192.168.1.2


(酷重新啟動pptpd daemon

程式碼:
killall pptpd;pptpd -d


(9)建立VPN-PPTP連線

Windows 2000、XP

新增Windows 2000的「虛擬私人連線」

1.新增連線
「桌面」->在「網路上芳鄰」按滑鼠右鍵->「內容」->「建立新連線」->「透過Internet連線到私人網路」->輸入主機名稱(192.168.0.1)->完成

2.設定連線

請將勾選連線內容裡「安全性」的「要求資料加密」->「確定」

3.測試連線

Double Click該連線,輸入「使用者名稱」及「密碼」->連線

連線成功後,會多出一虛擬介面叫做「PPP adapter 虛擬私人連線:」
它的Ip address為192.168.1.xx

檢查是否能ping到192.168.0.1及192.168.1.0其它的ip

在右下角的網路連線圖示裡,點選滑鼠右鍵->選擇「狀態」->選擇「詳細資料」

此時的內容應該為

    伺服器類型                       PPP
    傳輸                                   TCP/IP
    驗證                                   MS CHAP V2
    加密                                   MPPE 128
    壓縮                                   無
    PPP多重連結架構            關閉
    伺服器IP位址                   192.168.0.1
    用戶端IP位址                   192.168.1.1


Windows 9x


依作業系統不同至以下網址下載新的Dial Up Networking Tool,目前最新版本為1.4

Windows 95

http://www.microsoft.com/windows95/downloads

Windows 98

http://www.microsoft.com/windows95/downloads/corporate.asp


也可下載128位元Dial Up Networking Tool程式

http://support.microsoft.com/support/ntserver/128eula.asp

設定撥號網路

1.開啟撥號網路->建立新的連線->裝置請選擇Microsoft VPN Adapter->輸入PPTP Server(192.168.0.1)->完成

2.使用滑鼠右鍵點選剛剛建立的VPN連線->選取內容->選擇伺服器類型->勾選密碼加密->取消勾選Netbeui和Ipx/Spx->確定

3.點選VPN連線->輸入使用者名稱及密碼

4.完成

參考文件網址

http://www.poptop.org/
http://pptpclient.sourceforge.net/
http://public.planetmirror.com/pub/mppe/


註1:PPTP是走Protocol 47的GRE protocol,請記得在防火牆開啟此規則

註2:如要看到網路上的芳鄰時,請在/etc/ppp/options.ppp指定ms-wins選項即可

註3:為何無法連線至192.168.1.1以外的電腦?

請啟動ip_forward及proxyarp.....



真不好意思請教一下感激不儘我作到最後怎麼都有錯誤訊息
/etc/hotplug/net.agent: NET unregister event not supported
都會出現這個錯誤訊息說
我是用winxp連就出現這個錯誤無法連線說
但是我如果用win2000去連是正常的不知道是啥麼問題
請大家教小弟一下感恩喔
已記錄
akong
活潑的大學生
***
文章: 477


檢視個人資料 個人網站
« 回覆文章 #27 於: 2005-02-24 17:14 »

我按照網路上的教學
已經安裝好VPN
但是有一個很奇怪的問題
就是當我連線到VPN的時候
連上了
但是在開網頁時
開到一半就掛了
應該是說所有的網路通訊都是跑到一半就掛了
請問還有什麼可能呢
我有設定MASQUERADE
請各位大大多多指教
已記錄
hankue
可愛的小學生
*
文章: 7


檢視個人資料
« 回覆文章 #28 於: 2005-05-04 16:14 »

我用Kernel 2.6.10-1.771_FC2custom手動將linux-2.6.0-test9-openssl-0.9.6b-mppe.patch.gz內容加上去,配上手動將pppd-2.4.2-chapms-strip-domain.patch.gz 改到ppp-2.4.2-5.2.FC2.src.rpm內,再重新做出ppp-2.4.3-5.2.FC2.rpm.
/etc/pptpd.conf 的內容如果用option /etc/ppp/options.pptp 的話會出現pppd[5005]: In file /etc/ppp/options.pptp: unrecognizedb option '+chapms'
如果直接將options.pptp內容貼到pptpd.conf內,
將連線內容裡「安全性」的「要求資料加密」取消選取->「確定」 可以連上,如果還打勾的話會失敗,不知是否要改裝ppp-2.4.1-3mppe.i386.rpm才行
已記錄
tomjo
懷疑的國中生
**
文章: 75


檢視個人資料
« 回覆文章 #29 於: 2005-05-19 10:27 »

請問小弟是用 Redhat 9 + pptp 1.2.1-1 (未加密)
在執行完 pptpd -d 後,用 xp 來撥接測試,卻一直無法連上耶~
錯誤訊息如下:

May 19 10:13:24 rv pptpd[11004]: CTRL: Client 59.120.68.146 control connection started
May 19 10:13:24 rv pptpd[11004]: CTRL: Starting call (launching pppd, opening GRE)
May 19 10:13:24 rv pppd[11005]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded.
May 19 10:13:24 rv pppd[11005]: pptpd-logwtmp: $Version$
May 19 10:13:24 rv pppd[11005]: pppd 2.4.3 started by root, uid 0
May 19 10:13:24 rv /etc/hotplug/net.agent: assuming ppp0 is already up
May 19 10:13:24 rv pppd[11005]: Using interface ppp0
May 19 10:13:24 rv pppd[11005]: Connect: ppp0 <--> /dev/pts/4
May 19 10:13:24 rv pptpd[11004]: GRE: Bad checksum from pppd.
May 19 10:13:24 rv pptpd[11004]: GRE: read(fd=5,buffer=8056740,len=8260) from network failed: status = -1 error = Protocol not available
May 19 10:13:24 rv pptpd[11004]: CTRL: GRE read or PTY write failed (gre,pty)=(5,4)
May 19 10:13:24 rv pppd[11005]: Modem hangup
May 19 10:13:24 rv pppd[11005]: Connection terminated.
May 19 10:13:24 rv pppd[11005]: Exit.
May 19 10:13:24 rv pptpd[11004]: CTRL: Client 59.120.68.146 control connection finished
May 19 10:13:24 rv /etc/hotplug/net.agent: NET unregister event not supported

/etc/pptpd.conf 設定如下
option  /etc/ppp/options.pptp
debug
logwtmp
localip 192.168.200.1
remoteip 192.168.1.2-10

/etc/ppp/options.pptp
lock
debug
auth
+chap
proxyarp

不知是那裡有設定錯誤呢? 還是有其它的地方沒注意到的,請大大們幫小弟留意一下~謝謝。
已記錄
頁: [1] 2
  列印  
 
前往:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
本頁花了 0.106 秒,以及 15 次的資料庫查詢。