2015年2月12日星期四

Debian VPS (OPENVZ)安裝pptp vpn

Debian vps可按如下進度安裝pptp vpn:
1.使用putty登錄vps,通常是root賬戶,登錄成功後輸入以下命令查驗vps是否已開啟ppp:
cat /dev/ppp
如果返回以下結果則ppp已開啟:
cat /dev/ppp: No such device or address
 如果不是請詢問你的vps供應商

2.安裝pptpd,命令如下
apt-get update
apt-get install pptpd
(以上安裝命令只適用於Debian或Ubuntu及其衍生版,如果是其他linux發行版請自行google.)

3.配置pptpd和ppp,首先修改pptpd.conf
nano /etc/pptpd.conf
(這裡的文本編輯器不一定要用nano,可以用已安裝的或者最喜歡的,比如vi,vim等)
將以下兩行加到文件的最後面,已有這兩行的把最前面的#去掉即可:
localip 10.10.0.1
remoteip 10.10.0.2-100
保存退出。
這裡的localip和remoteip不一定要使用這個,也可以定義為192.168.x.y。只要不與本地ip重疊即可。

到這裡還沒完,繼續修改pptpd-options,我用的文本編輯器依然是nano,命令如下:
nano /etc/pptpd-options
打開後將如下幾行copy或者加入到文件最後,保存退出:
name pptpd
 refuse-pap
 refuse-chap
 refuse-mschap
 require-mschap-v2
 require-mppe-128
 ms-dns 8.8.8.8
 #ms-dns 8.8.4.4
 proxyarp
 nodefaultroute
 lock
 nobsdcomp
 mtu 1490
 mru 1490

4.添加pptpd賬戶和密碼,使用文本編輯器打開/etc/ppp/chap-secrets添加用戶名和密碼,每行一個用戶,比如:
user1   <tab>    pptpd    <tab>   password1   <tab>    10.10.0.2
user2   <tab>    pptpd    <tab>   password2   <tab>    10.10.0.3
user3   <tab>    pptpd    <tab>   password3   <tab>    10.10.0.4
user4   <tab>    pptpd    <tab>   password4   <tab>    10.10.0.5
這裡的user1,password1等內容是你自己設定的pptpd登錄賬號的用戶名和密碼,你可以自己修改,pptpd是固定的,後面的ip是remoteip,與上面自己設定的remoteip段保持一致。<tab>指兩個參加值之間用一個tab鍵隔開,而不是讓你輸入tab三個字母

5.啟用數據轉發,打開sysctl.conf:
nano /etc/sysctl.conf
將下列一行添加或者將已有的#去掉:
net.ipv4.ip_forward=1
保存退出
運行以下命令使修改生效:
sysctl -p

6.添加iptables規則:
 iptables -t nat -A POSTROUTING -j SNAT --to-source <Public Server IP>
 <Public Server IP>換成你自己的服務器ip,以上規則僅適用於openvz,如果是kvm或xen,規則如下:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT

7.重啟pptpd:
service pptpd restart
至此你可以在電腦和手機裡輸入你的賬號密碼和服務器ip鏈接到pptp vpn.
如有問題,請在google+,twitter上聯絡我。
清除NAT規則:
iptables --table nat --flush