首先要查看本地网卡
[root@iZ2862pmm0dZ ~]# ifconfig
我的是云主机所以后显示
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 0.0.0.0 netmask 255.255.0.0 broadcast

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 0.0.0.0 netmask 255.255.252.0 broadcast 0.0.0.0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0

使用yum安装ppp和pptp包
yum -y install ppp*
yum -y install pptp*
编辑文件/etc/ppp/options.pptpd,在末尾添加DNS地址
# vi /etc/ppp/options.pptpd
ms-dns 222.246.129.80
ms-dns 8.8.8.8

添加VPN客户端帐号和口令
# vi /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client server secret IP addresses
yang pptpd 123456 *
这里,我们创建了一个vpn用户:yang,口令:123456。一个帐号一行,可以添加多个帐号。

# /etc/init.d/pptpd restart

至此VPN服务器搭建完成了,但实际环境中还需要给VNP服务器增加路由功能
1. 修改内核文件,使系统支持转发

#vi /etc/sysctl.conf
将net.ipv4.ip_forward = 0中的0改为1就OK了。
搞定方法
#添加一行 net.ipv4.ip_forward = 1 到末尾即可,然后保存
sysctl -p #运行这个命令会输出上面添加的那一行信息,意思是使内核修改生效

设置iptables的转发规则,让你的客户端连接上之后能访问外网。

iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.168.1.234/24 -j SNAT --to 你的服务器的公网IP
#192.168.1.234/24是你分配给客户的ip,后面的那个是你的服务器的公网IP
注意需要看本机的分配的地址,然后决定上面的ip是192.168.1.234/24还是192.168.0.234/24

配置防火墙增加转发规则
这个时候还是连接不上的,因为iptables把客户的VPN连接拦截了,不允许连接,所以得开放相应的端口。

具体是哪个端口可以自己查下,我的是默认的,如果你没有更改过的话也会是默认的。

iptables -I INPUT -p tcp --dport 1723 -j ACCEPT
iptables -I INPUT -p tcp --dport 47 -j ACCEPT
iptables -I INPUT -p gre -j ACCEPT

保险起见,到了这里应该重启一下pptpd服务和iptables服务生效。

systemctl restart iptables
systemctl restart pptpd
上面的方法成功!

Last modification:July 22, 2019
如果觉得我的文章对你有用,请随意赞赏