近段时间由于公司业务系统需求变更和网络设备功能限制的原因,防火墙自带L2TP VPN的UDP通信端口被占用,导致外网用户无法使用L2TP连接公司VPN,只好想办法搭建走TCP协议的PPTP服务来替代。

配置方法:

/*

安装环境:Centos 6.9

安装包:dkms、ppp、pptpd、iptables(默认系统已安装,用于代理VPN用户上公网)

安装包下载地址:链接:http://pan.baidu.com/s/1slTqayL 密码:ge27

默认操作目录:/opt

*/

安装依赖包:

yum -y install gcc gcc-c++ kernel-devel

安装dkms:

cd /opt
unzip dkms-2.4.0.zip
cd dkms-2.4.0
make && make install
dkms -V #检查安装版本验证是否正确安装


安装ppp:

yum -y install ppp
lsmod | grep mppe #查看mppe模块是否装载,如果正常装载则显示下面两行内容否则为空
ppp_mppe                6404  0 
ppp_generic            25379  2 ppp_async,ppp_mppe 
# 如果没有装载,使用命令装载 
# modprobe ppp-compress-18 
# lsmod | grep mppe        # 再次查看


安装pptp

cd /opt
rpm -ivh pptpd-1.4.0-3.el6.x86_64.rpm


修改配置文件:

1、修改:/etc/pptpd.conf 文件

localip 172.18.18.1 #pptp server使用,建议不要使用现有内网网段

remoteip 172.18.18.2-100 #分配给VPN客户端,建议不要使用现有内网网段


2、修改:/etc/ppp/options.pptpd文件

ms-dns 114.114.114.114  #建议直接使用公用的DNS
ms-dns 8.8.8.8


3、修改:/etc/ppp/chap-secrets  文件

添加下面内容(四个字段分别代表用户名、协议pptp、密码、IP地址),并保存

test        pptpd  test                    *


4、修改: /etc/sysctl.conf 文件,开启IP转发功能

net.ipv4.ip_forward = 0 #修改为:net.ipv4.ip_forward = 1

# 执行下面命令生效 

sysctl -p


5、配置iptables添加SNAT转换

执行以下命令:

iptables -t nat -I POSTROUTING -s 172.18.18.0/24 -j SNAT --to-source 192.168.1.254    #192.168.1.254为本台服务器局域网IP,请确定本服务器可以通过该IP访问公网及内网其他网段
iptables -I INPUT  -p gre -j ACCEPT
iptables -I INPUT  -p tcp --dport 1723 -j ACCEPT
service iptables save
service iptables restart

#查看是否转发过滤规则
service iptables status
#如发现Chain FORWARD (policy ACCEPT)列表有下面策略则执行对应的清除命令,否则请跳过
/*
Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         
1    REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited 
*/
清除上述策略的命令:
iptables -D FORWARD 1 #1代表要删除的策略号,请根据实际情况调整
service iptables save
service iptables restart



6、启动pptp服务

service pptpd start


7、设置pptp服务开机启动

chkconfig --level 35 pptpd on



注:配置公网防火墙,允许公网用户可以通过TCP:1723端口连接内网pptp服务器(192.168.1.254)的1723端口,公网用户就可以使用新建的test用户正常连接VPN了。

       网上有说VPN连接后不能访问公网或连接不久会自动断开需要要修改MTU值的,目前没遇到,如有用户遇到可以搜索修改PPTP MTU值的方法。


Centos6.9安装L2TP服务器参考链接:https://lichengxiao.cn/15.html