一、装包
yum -y install pptpd-1.4.0-2.el7.x86_64.rpm //系统光盘不自带,需要自行下载
二、修改配置文件并启动软件
rpm -qc pptpd //查询一下该软件有哪些配置文件, c的意思是configuration
vim /etc/pptpd.conf //修改主配置文件,文件末尾有例子可以参考,localip和remoteip两行注释去掉,localip是服务器ip,remoteip是指给客户端分配的ip
vim /etc/ppp/options.pptpd //客户端使用的Windows所以要修改一下ms-dns,比如 8.8.8.8或者114.114.114.114
vim /etc/ppp/chap-secrets //设定客户端登陆的用户名和密码,文件中server和IP address 填 * ,意思是任意ip
systemctl restart pptpd //启动软件,没有报错就是启动了
netstat -utnlp | grep pptpd //查看一下监听状态,确认一下
三、echo 1 > /proc/sys/net/ipv4/ip_forward //打开端口转发
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE //设置nat地址转换
四、如果使用的阿里云ecs,需要在安全组放行全部GRE协议,以及tcp 1723
五、telnet 服务器ip 1723 //测试一下端口是否能通信
粗略写了个脚本:
#!/bin/bash
#该脚本是安装pptpd软件服务端
#指定vpn服务器IP地址
LOCALIP=47.75.183.37
#测试pptpd程序监听端口状态
MON=$(netstat -utnlp|grep pptpd|awk '{print $4}'|awk -F: '{print $2}')
yum -y install pptpd-1.4.0-2.el7.x86_64.rpm 2&>/dev/null
echo "正在为您安装pptpd软件,请您稍候。。。。。。"
#修改主配置文件,指定localip和客户端分配的ip
echo "localip $LOCALIP" >> /etc/pptpd.conf
echo "remoteip 192.168.4.1-20" >> /etc/pptpd.conf
#指定Windows客户端DNS服务器
sed -i '65c ms-dns 8.8.8.8/' /etc/ppp/options.pptpd
#指定客户端连接的用户名和密码
sed -i '$a tom * 123456 *' /etc/ppp/chap-secrets
#启动程序,设置开机自启
systemctl restart pptpd
systemctl enable pptpd 2&> /dev/null
#打开端口转发
echo 1 > /proc/sys/net/ipv4/ip_forward
#设置nat地址转换
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#确定端口监听状态
#[ "$MON" == "1723" ] && echo "恭喜您,pptpd成功安装,并且启动成功!!!" || echo "安装失败" //不知道为什么会有报错???所以注释掉了
echo "监听端口为$MON,恭喜您,服务器启动成功!!!"