CentOS 5系统的 VPN PPTPD 一键安装包

作者:stoat 发布时间:2014-03-22 分类:闲扯

安装方法,登陆 SSH 后输入以下命令:

wget http://www.diahosting.com/dload/pptpd.sh 
sh pptpd.sh

安装完成后会提示 vpn 用户名和密码。

VPN用户管理:直接编辑 /etc/ppp/chap-secrets 文件,按照相同格式添加用户名和密码即可。

附脚本(pptpd.sh)源码以便学习(注意:以下所有标点符号均为英文输入状态下的符号,如有中文符号,请自行更改。):

yum remove -y pptpd ppp 
iptables --flush POSTROUTING --table nat 
iptables --flush FORWARD 
rm -rf /etc/pptpd.conf 
rm -rf /etc/ppp

wget http://www.diahosting.com/dload/dkms-2.0.17.5-1.noarch.rpm 
wget http://www.diahosting.com/dload/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm 
wget http://www.diahosting.com/dload/pptpd-1.3.4-1.rhel5.1.i386.rpm 
wget http://www.diahosting.com/dload/ppp-2.4.4-9.0.rhel5.i386.rpm

yum -y install make libpcap iptables gcc-c++ logrotate tar cpio perl pam tcp_wrappers 
rpm -ivh dkms-2.0.17.5-1.noarch.rpm 
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm 
rpm -qa kernel_ppp_mppe 
rpm -Uvh ppp-2.4.4-9.0.rhel5.i386.rpm 
rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm

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

pass=`openssl rand 6 -base64` 
if [ "$1" != "" ] 
then pass=$1 
fi

echo "vpn pptpd ${pass} *" >> /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 
service iptables save

chkconfig iptables on 
chkconfig pptpd on

service iptables start 
service pptpd start

echo "VPN service is installed, your VPN username is vpn, VPN password is ${pass}"

原文地址:CentOS 5系统的 VPN PPTPD 一键安装包 by 雪鼬博客

标签:VPN

评论已关闭