1 服务器端安装软件
首先安装ppp,命令:
yum install ppp pptpd iptables
提示Complete! ,安装成功;
安装iptable iptable-service
#先检查是否安装了iptablesservice iptables status
#安装iptables yum install -y iptables #升级iptablesyum update iptables #安装iptables-services yum install iptables-services
禁用/停止自带的firewalld服务
#停止firewalld服务systemctl stop firewalld #禁用firewalld服务systemctl mask firewalld
设置现有规则
#查看iptables现有规则
iptables -L -n #先允许所有,不然有可能会杯具 iptables -P INPUT ACCEPT #清空所有默认规则 iptables -F#清空所有自定义规则 iptables -X #所有计数器归0 iptables -Z #允许来自于lo接口的数据包(本地访问) iptables -A INPUT -i lo -j ACCEPT #开放22端口 iptables -A INPUT -p tcp --dport 22 -j ACCEPT #开放21端口(FTP) iptables -A INPUT -p tcp --dport 21 -j ACCEPT #开放80端口(HTTP) iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放443端口(HTTPS) iptables -A INPUT -p tcp --dport 443 -j ACCEPT #允许ping iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT #其他入站一律丢弃 iptables -P INPUT DROP #所有出站一律绿灯 iptables -P OUTPUT ACCEPT #所有转发一律丢弃 iptables -P FORWARD DROP
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
其他规则设定
#如果要添加内网ip信任(接受其所有TCP请求) iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT #过滤所有非以上规则的请求 iptables -P INPUT DROP #要封停一个IP,使用下面这条命令: iptables -I INPUT -s ***.***.***.*** -j DROP #要解封一个IP,使用下面这条命令: iptables -D INPUT -s ***.***.***.*** -j DROP
保存规则设定
#保存上述规则 service iptables save
开启iptables服务
#注册iptables服务 #相当于以前的chkconfig iptables onsystemctl enable iptables.service #开启服务systemctl start iptables.service #查看状态 systemctl status iptables.service
2 配置pptp
2.1编辑/etc/pptpd.conf,命令如下
[root@kuro ~]#vi /etc/pptpd.conf #localip 192.168.0.1 #remoteip 192.168.0.234-238,192.168.0.245
修改成
localip 192.168.0.1 remoteip 192.168.0.234-238,192.168.0.245
即将这两行第一个字符“#”去掉,保存退出
2.2编辑/etc/ppp/options.pptpd,命令如下
[root@kuro ~]#vi /etc/ppp/options.pptpd #ms-dns 10.0.0.1 #ms-dns 10.0.0.2
改成
ms-dns 8.8.8.8 ms-dns 8.8.4.4
即将这两行第一个字符“#”去掉,而后修改DNS的IP。
2.3设置使用pptp的用户名和密码
命令:
[root@kuro ~]#vi /etc/ppp/chap-secrets # Secrets for authentication using CHAP # client server secret IP addresses maishujie pptpd maishujie *
保存并退出。
3 修改内核设置,使其支持转发
命令:
[root@kuro ~]#vi /etc/sysctl.conf 将net.ipv4.ip_forward=0 改成net.ipv4.ip_forward=1 将net.ipv4.tcp_syncookies= 1 改成 #net.ipv4.tcp_syncookies= 1
保存并退出
执行以下命令使修改后的内核生效
[root@kuro ~]#sysctl -p
4 添加iptables转发规则
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -jMASQUERADE
(注意:由于阿里云是双网卡,内网eth0,外网eth1,所以这块特别容易误写为eth0,这也是为什么很多杂乱的教程无法配置成功的原因之一)
添加好转发规则后保存一下并重启iptables
[root@kuro ~]#/etc/init.d/iptables save [root@kuro ~]#/etc/init.d/iptables restart
5 重启pptp服务
[root@kuro ~]#/etc/init.d/pptpd restart
这里要注意一下,其实此时pptp还没运行起来。所以使用restart重启,会显示Shutting down pptp [FAILED]。还会有一个警告,可以忽略。如不放心可以再用以上命令重启一下pptp就非常顺利的运行了。
6 设置pptp和iptables随系统启动
[root@kuro ~]#chkconfig pptpd on [root@kuro ~]#chkconfig iptables on
至此,pptp服务端安装结束。
在PC端的“网络和共享中心”,设置新的连接或网络,即可访问VPN。
No Leanote account? Sign up now.