CentOS6.4搭建VPN的脚本

废话不说,直接上脚本,如有报错请留言


#!/bin/bash

User=$1
Password=$2
if [[ ${#User} -lt 5 ]] || [[ ${#Password} -lt 6 ]];then
	echo "Error,Usage: bash pptpd.sh User Password"
	#此处省去N个字的说明。
	exit 2;
fi

# 如果已经安装有ppp和pptpd先把它删除,保证一个干净的环境,以免脚本出错
yum remove -y ppp pptpd
rm -f /etc/ppp/options.pptpd /etc/pptpd.conf

if [[ ! -s /etc/yum.repos.d/epel.repo ]];then
	wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
	rpm -ivh epel-release-6-8.noarch.rpm
	rm -f rpm -ivh epel-release-6-8.noarch.rpm
fi
yum install -y ppp pptpd

# 打开转发功能
echo 1 > /proc/sys/net/ipv4/ip_forward
sed -i ‘/ip_forward/s/0/1/‘ /etc/sysctl.conf
sysctp -p &> /dev/null

# 设置分配至客户端的DNS
if [[ ! -s /etc/ppp/options.pptpd ]];then
	exit 1;
fi
echo "ms-dns 8.8.8.8" >> /etc/ppp/options.pptpd
echo "ms-dns 114.114.114.114" >> /etc/ppp/options.pptpd

# 添加隧道IP
if [[ ! -s /etc/pptpd.conf ]];then
        exit 1;
fi
echo "localip 192.168.8.1" >> /etc/pptpd.conf
echo "remoteip 192.168.8.2-20" >> /etc/pptpd.conf

# 添加用户密码
if [[ ! -s /etc/ppp/chap-secrets ]];then
	exit 1;
fi
echo "$User	pptpd	$Password		*" >> /etc/ppp/chap-secrets

# 添加Iptables转发规则
iptables -t nat -I POSTROUTING -s 192.168.8.0/24 -j MASQUERADE

# 保存Iptables规则
/etc/rc.d/init.d/iptables save

# 启动pptpd服务并加入开机启动
service pptpd start
chkconfig pptpd on

echo "Installation complete."

本文出自 “HQY's 运维人生” 博客,请务必保留此出处http://ldhqy.blog.51cto.com/2788106/1591322

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。