OpenVZ VPS Debian/Ubuntu一鍵PPTP VPN安裝腳本EZPPTP

關於EZPPTP:
是一個基於OpenVZ虛擬化VPS安裝 Debian/Ubuntu 系統的一鍵PPTP VPN安裝腳本,作者是國外的Commander Waffles。

安裝方法:
1、首先檢測VPS是否支持PPP模塊,運行以下命令:
cat /dev/ppp
如果你的VPS返回此消息,那麼說明正常:

cat: /dev/ppp: No such device or address

如果沒有,那麼你需要到SolusVM控制面板去啟用它(或禁用,然後重新啟用它)。

2、將以下代碼複製並粘貼到SSH客戶端執行:

wget -c https://raw.github.com/cwaffles/ezpptp/master/ezpptp.sh
chmod +x ezpptp.sh && ./ezpptp.sh

3、選擇並輸入預設的VPN用戶名和密碼
######################################################
Select on option:
1) Set up new PoPToP server AND create one user (安裝新的PoPToP服務並創建一個用戶)
2) Create additional users (創建一個新的VPN用戶)
######################################################

1 (安裝當然選擇1咯,以後需要再創建一個新的VPN帳戶,則選2)
Enter username that you want to create (eg. client1 or john):
85sb(輸入你想要創建的用戶名)
Specify password that you want the server to use:
www.85sb.com(指定你希望使用的密碼)

Github項目主頁:https://github.com/cwaffles/ezpptp
作者主頁:http://www.putdispenserhere.com/pptp-debian-ubuntu-openvz-setup-script/

這樣搞完就能上網了
然後我還想弄pptpd支持ipv6
首先,我有ipv6/48的地址範圍.我的ubuntu已經配置好ipv6聯網了
然後,pptpd支持ipv6的方法如下
編輯/etc/ppp/pptp-options 文件

ipparam pptpd
ipv6 ,

注意,第二行是ipv6空格逗號空格
然後安裝radvd

sudo apt-get install radvd

然後新建文件夾/etc/ppp/ipv6-radvd ,新建文件/etc/ppp/ipv6-up.d/radvd

#!/bin/sh
if test $PPP_IPPRARM != pptpd ;then
exit 0
fi

ADDR=$(echo $PPP_REMOTE | cut -d : -f 3,4,5,6)

if test x$ADDR == x ; then
echo "Unable to generate IPv6 Address"
exit 0
fi
ADDR=(注意這裡寫自己的地址,例2001:470:8193):BEEF:$ADDR

#add route
route -6 add $ADDR/128 dev $PPP_IFACE

#generate radvd config
RAP=/etc/ppp/ipv6-radvd/$PPP_IFACE
RA=$RAP.conf

cat <$RA
interface $PPP_IFACE{
AdvManagedFlag off;
AdvOtherConfigFlag on;
AdvSendAdvert on;
MinRtrAdvInterval 5;
MaxRtrAdvInterval 100;
UnicastOnly on;
AdvSourceLLAddress on;
prefix 2001:470:8192:BEEF::/64 {};
};
EOF

#start radvd
/usr/sbin/radvd -C $RA -p $RAP.pid

#start tchdpd
/usr/sbin/tdhcpd \
--dns-server=2001:470:20::2 \
--dns-name=$PPP_IFACE.tunnel.ipv6.icybear.net \
--pid-file=$RAP.dhcp.pid \
--local-id=tunnel.ipv6.icybear.net -L debug\
$PPP_IFACE

#update dns
ARPA=$(ipv6_rev $ADDR)
nsupdate << EOF update delete $ARPA update add $ARPA 10 ptr $PPP_IFACE.tunnel.ipv6.icybear.net send update delete $PPP_IFACE.tunnel.ipv6.icybear.net update add $PPP_IFACE.tunnel.ipv6.icybear.net 10 aaaa $ADDR send EOF exit 0

新建/etc/ppp/ipv6-down.d/radvd文件

#!/bin/sh
RAP=/etc/ppp/ipv6-radvd/$PPP_IFACE
kill `cat $RAP.pid` || true
kill `cat $RAP.dhcp.pid` || true
rm -f $RAP.*
ADDR=$(echo $PPP_REMOTE | cut -d : -f 3,4,5,6)
ADDR=(注意這裡寫自己的地址,例2001:470:8193):BEEF:$ADDR
ARPA=$(ipv6_rev $ADDR)
nsupdate << EOF update delete $ARPA send update delete $PPP_IFACE.tunnel.ipv6.icybear.net send EOF exit 0

最後給新建的兩個文件添加可執行權限.應該就可以了