共计 2464 个字符,预计需要花费 7 分钟才能阅读完成。
鉴于网络上关于Ubuntu/Debain的VPN一键安装脚本不多,很多用网站上的又不实用,安装之后老会出问题。现在特地再分享一个Ubuntu/Debian VPS一键安装PPTPD VPN脚本。
首先得确认你的VPS支持PPP/TUN这两个组件,XEN平台可以无视了,KVM、OpenVZ用户请先检查:
虚拟网卡(TUN/TAP)支持(代码如下)
cat /dev/net/tun
如果返回信息为:
cat: /dev/net/tun: File descriptor in bad state 说明正常
检测是支持ppp模块
cat /dev/ppp
如果返回信息为:cat: /dev/ppp: No such device or address 说明正常
下载、安装一键安装脚本:
[php]
wget i.xiaoacha.com/ppp.zip
unzip ppp.zip
sh ppp.sh
[/php]
注意需要用root来运行。里面的内容是这样的,下载不了可以直接复制:[php]
#!/bin/bash
if [ $(id -u) != "0" ]; then
printf "Error: You must be root to run this tool!\n"
exit 1
fi
clear
printf "
####################################################
# #
# This is a Shell-Based tool of pptp installation #
# Version: 0.1 #
# Author: Bruce Ku #
# For Debian/Ubuntu 32bit and 64bit #
# #
####################################################
"
vpsip=`ifconfig | grep ‘inet addr:’| grep -v ‘127.0.0.1’ | cut -d: -f2 | awk ‘NR==1 { print $1}’`
apt-get update
apt-get –purge remove pptpd ppp
rm -rf /etc/pptpd.conf
rm -rf /etc/ppp
apt-get install -y ppp
apt-get install -y pptpd
apt-get install -y iptables logrotate tar cpio perl
rm -r /dev/ppp
mknod /dev/ppp c 108 0
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "mknod /dev/ppp c 108 0" >> /etc/rc.local
echo "echo 1 > /proc/sys/net/ipv4/ip_forward" >> /etc/rc.local
echo "localip 172.16.36.1" >> /etc/pptpd.conf
echo "remoteip 172.16.36.2-254" >> /etc/pptpd.conf
echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd
echo "ms-dns 8.8.4.4" >> /etc/ppp/options.pptpd
echo "test * test123 *" >> /etc/ppp/chap-secrets
iptables -t nat -A POSTROUTING -s 172.16.36.0/24 -j SNAT –to-source `ifconfig | grep ‘inet addr:’| grep -v ‘127.0.0.1’ | cut -d: -f2 | awk ‘NR==1 { print $1}’`
iptables -A FORWARD -p tcp –syn -s 172.16.36.0/24 -j TCPMSS –set-mss 1356
iptables -t nat -A POSTROUTING -s 172.16.36.0/24 -j SNAT –to-source "$vpsip"
printf "
####################################################
# #
# This is a Shell-Based tool of pptp installation #
# Version: 0.1 #
# Author: Bruce Ku #
# For Debian/Ubuntu 32bit and 64bit #
# #
####################################################
ServerIP:$vpsip
username:test
password:test123
"
[/php]
测试用户名与密码为:test / test123,可以修改 /etc/ppp/chap-secrets 。
Ps:这个脚本安装之后连接时似乎也会出错,这样操作:
编辑/etc/ppp/options.pptpd(vim /etc/ppp/options.pptpd),在require-mppe-128前面加个#(# require-mppe-128),然后去加密
这样VPN就可以顺利地连接了!
CentOS的可以参见这个帖子:http://www.zrblog.net/1870.html