2013年6月23日 星期日

[RPi] Raspbian 上架設 pptpd

首先準備一台 RPi ( 廢話 )

因為我是用 static IP 所以就不用設定 AP ( router )


先檢查這兩個模組:
$> modprobe ip_nat_pptp
$> modprobe ip_conntrack_pptp

正常來說應該不會有什麼問題,至少我的 RPi 上沒有顯示任何錯誤


沒問題以後就直接安裝
$> apt-get install pptpd


接下來到 /etc/pptpd.conf 設定 localip 和 remoteip
我將這兩個分開變成:
localip      192.168.59.1          # RPi 上的 IP ,但是不是對外的那個,可以隨便設定
remoteip   192.168.79.1-100   # 設定 100 組 IP 給使用者用


然後到設定檔 /etc/ppp/pptpd-options
這邊查了不少資料,以下是我的設定檔:
name pptpd
refuse-pap
refuse-chap

refuse-mschap

require-mschap-v2
require-mppe-128
ms-dns <DNS-IP1>
ms-dns <DNS-IP2> #可以設定多組 DNS
proxyarp
nodefaultroute
debug
dump
lock
nobsdcomp
logfile /var/log/pptpd.log #log file
novj
novjccomp
idle 2592000
  

接著設定登入的帳號密碼
格式為:
client        server      secret               IP addresses
之間用 tab 作區隔,可以使用 * 萬用字元。


之後設定 ip forward,要去修改 /etc/sysctl.conf
把 net.ipv4.ip_forward=1 註解拿掉,也就是要讓他可以 forward ipv4
接著讓系統知道設定有修改過了,要 Update
$> sudo sysctl -p


最後要去 iptables
$> iptables -t nat -A POSTROUTING -s {remoteips} -o eth0 -j MASQUERADE


其中 {remoteips} 就是剛剛在 /etc/pptpd.conf 設定的
以我的設定為例,最簡單的方式就是  192.168.79.0/24 ( mask 掉全部 )


這樣設定完以後,重新啟動 pptpd
$> service pptpd restart


不過有些網站還是上不去,後來找到一個網頁:
http://www.tomatosoft.biz/blog/2011/10/21/cant-access-certain-site-with-pptp/
照他的設定:
$> iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356


原本不能連上的網頁就連上了。

( 打完收工 )
之後有遇到問題再說 ... 目前這樣已經大部分都可以連了 :)

沒有留言:

張貼留言