Redhat / Centos 7 Firewalld 针对 pptp 或 L2TP/IPsec 规则的最佳实践

Redhat / Centos 7 Firewalld 针对 pptp 或 L2TP/IPsec 规则的最佳实践

快速浏览一下 Centos 7,虽然我会启动一个或 3 个 VPN 守护进程,但立即发现核心存储库中还没有常用的软件包,因此必须四处挖掘并找到必要的部分,例如EPEL beta 树。无论如何,关于主要问题,从iptables防火墙。我知道我可以将我的游戏盒恢复到iptables不要麻烦我的上级,但这是一个新玩具,所以必须玩。开始使用 RTFM 并快速查看并发现开放VPN网络安全协议对于这个新玩具有服务定义,但是没有像这样的服务定义PPTP,l2tp,NAT-T....所以开始花几分钟创建类似的内容:

/etc/firewalld/services/pptp.xml

<?xml version="1.0" encoding="utf-8"?>
  <service>
    <short>pptp</short>
    <description>Point-to-Point Tunneling Protocol (PPTP)</description>
    <port protocol="tcp" port="1723"/>
  </service>

或者:/etc/firewalld/services/l2tp.xml

<?xml version="1.0" encoding="utf-8"?>
  <service>
    <short>L2TP</short>
    <description>Layer 2 Tunneling Protocol (L2TP)</description>
    <port protocol="udp" port="1701"/>
  </service>

或者:/etc/firewalld/services/nat-t.xml

<?xml version="1.0" encoding="utf-8"?>
  <service>
    <short>NAT-T</short>
    <description>Network Address Translation (NAT-T)</description>
    <port protocol="udp" port="4500"/>
  </service>

ETC.....

chmod 640 /etc/firewalld/services/*.xml
restorecon /etc/firewalld/services/*.xml

然后是一些规则:

firewall-cmd --zone=external --add-interface=ip_vti0 --permanent
firewall-cmd --zone=external --add-interface=ppp0 --permanent
firewall-cmd --reload
firewall-cmd --get-services

firewall-cmd --zone=external --add-service=l2tp --permanent
firewall-cmd --zone=external --add-service=pptp --permanent
firewall-cmd --zone=external --add-service=nat-t --permanent
....
firewall-cmd --reload

ETC.....

但我想知道我是否应该坚持这种方法并了解这些区域,或者简单地使用防火墙直接规则 frig 复制标准 iptables 规则,例如

iptables -A INPUT -i enp3s0 -p tcp --dport pptp-j ACCEPT
iptables -A INPUT -i enp3s0 -p tcp --dport l2tp -j ACCEPT
iptables -A INPUT -i enp3s0 -p tcp --dport ipsec-nat-t -j ACCEPT
iptables -A INPUT -i enp3s0 -p gre -j ACCEPT
....
iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.0.0/28 -o enp3s0 -j MASQUERADE
iptables-save

和:

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -i enp3s0 -p tcp --dport pptp-j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -i enp3s0 -p tcp --dport l2tp -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0T -i enp3s0 -p tcp --dport ipsec-nat-t -j ACCEPT
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -i enp3s0 -p gre -j ACCEPT
....
firewall-cmd --permanent --direct --add-rule ipv4 filter POSTROUTING 0 -t nat -o enp3s0 -j MASQUERADE 
firewall-cmd --permanent --direct --add-rule ipv4 filter POSTROUTING 0 -t nat -s 192.168.0.0/28 -o enp3s0 -j MASQUERADE -t nat
firewall-cmd --reload

一般的思想流派是什么(复制 iptables 规则集/执行新服务 + 区域),网络上是否有任何已发布/推荐的伪装和 nat'ed 规则集。

相关内容