Linux、Ubuntu、CentOS7.x、firewalld防火墙搭建PPTP
点击查看视频教程
网云互联运维工作室
网云文字教程站:www.94ip.com
网云视频教程站:www.94ip.net
联系方式:33790982、13434379
1、登录好机器之后,先检查机器是否支持PPP
modprobe ppp-compress-18 && echo ok
反馈OK,确定支持后,进行下一步
2、更新rpm源
rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum repolist
yum -y update
update的时间过长,先暂停一下
3、检查ppp与pptpd的版本
rpm -qa ppp 检测ppp的版本为2.4.5
rpm -qa pptpd 未显示版本,直接安装试试
下载提示pptpd的版本是1.4.0 版本无误
ppp 2.4.4——————>pptpd 1.3.4
ppp 2.4.5——————>pptpd 1.4.0
4、安装pptpd及支持
yum -y install pptpd ppp epel-release
5、修改内网IP
cp /etc/pptpd.conf /etc/pptpd.confbk 要习惯复制需要修改的文件,避免修改失误无法找回
vim /etc/pptpd.conf (vim命令如果无效,先yum -y install vim 安装vim)
直接拉到文件底部,添加内容
为了避免与阿里云冲突 填写其他IP段的地址,不常用的内网IP段
localip 192.168.94.1 主机VPN分配地址
remoteip 192.168.94.220-238 客户机链接后分配的地址
6、分配dns
cp /etc/ppp/options.pptpd /etc/ppp/options.pptpdbk
vim /etc/ppp/options.pptpd
添加内容
ms-dns 8.8.8.8
ms-dns 8.8.4.4 (根据自己的需求,多添加几条也行,建议两条)
刚刚只编写了命令,没有复制过去执行,请自己在安装的时候注意,还是cp一下比较好
7、添加账户
cp /etc/ppp/chap-secrets /etc/ppp/chap-seretsbk
vim /etc/ppp/chap-secrets
用户格式:用户(空格)服务类型(空格)密码(空格)限制登陆IP
列如:wangyun pptpd 123456qwert *
其中,wangyun是用户,pptpd是服务,123456qwert是密码 *代表允许所有IP
修改用户也是这个文件。可以直接删除原有的用户,自己根据格式修改成自己的就可以了
8、修改转发规则
cp /etc/sysctl.conf /etc/sysctl.confbk
vim /etc/sysctl.conf
添加或修改
net.ipv4.ip_forward = 1
打开文件后,先检查有没有这一条。
个别机器上会有net.ipv4.ip_forward = 0 那么,自行把0修改为1即可
如果没有,那么就直接粘贴
运行命令sysctl -p 立刻生效
已经生效
9、添加防火墙服务名称与对应端口
默认是没有这个文件的,所以我们直接创建
vim /usr/lib/firewalld/services/pptpd.xml
这个文件的功能,是为了防火墙可以直接添加服务而放行端口
<?xml version="1.0" encoding="utf-8"?>
<service>
<short>pptpd</short>
<description>PPTP</description>
<port protocol="tcp" port="1723"/>
</service>
直接粘贴以上内容即可
抱歉,第八条忘记运行执行命令了。不过不影响先后顺序,现在去执行
10、添加防火墙规则
firewall-cmd --permanent --zone=public --add-service=pptpd
firewall-cmd --permanent --add-masquerade
firewall-cmd --permanent --zone=public --add-port=47/tcp
firewall-cmd --permanent --zone=public --add-port=1723/tcp
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p gre -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p gre -j ACCEPT
以上规则,直接复制添加即可
这里看到防火墙没有运行起来,咱们运行起来
firewall-cmd --state 查看防火墙状态
systemctl start firewalld.service 启动防火墙
running是已经运行了。现在重新添加规则
全部执行完后,添加一下三条
这三条在添加时要注意,eth0 是网卡名称,需要根据自己的需求更改
192.168.94.0/24 是内网IP段,需要根据自己的需求修改
cd /etc/sysconfig/network-scripts/
ls查看文件夹内的文件
一般ifcfg-xxxxx 就是网卡文件
如果有多个网卡文件,则放行多条规则。
这里看到机器的网卡跟命令一直,不需要修改。直接复制执行
咱们先查看网卡文件
firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i ppp+ -o eth0 -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 0 -i eth0 -o ppp+ -j ACCEPT
firewall-cmd --permanent --direct --passthrough ipv4 -t nat -I POSTROUTING -o eth0 -j MASQUERADE -s 192.168.94.0/24
这条不用添加,貌似没用
11、
规则添加完成后
firewall-cmd --reload 执行防火墙重新载入命令
重新载入添加的规则
重启pptpd 与防火墙
systemctl restart firewalld.service 重启防火墙
systemctl restart pptpd.service 重启pptpd服务
12、添加开机启动
systemctl enable pptpd.service
systemctl enable firewalld.service
提示不是报错,而是复制服务项文件。
搭建工作到此完成