浅谈,linux防火墙,Firewalld服务( 三 )


firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source
address=172.25.X.10/32 service name="http" log level=notice prefix="NEW HTTP " limit value=https://www.isolves.com/it/aq/rj/2019-12-26/"3/s" accept'
firewall-cmd --reload
tail -f /var/log/messages
curl http://serverX.example.com
?5 伪造和端口转发

  • NAT网络地址转换,firewalld支持伪造和端口转发两种NAT方式
  • 伪造NAT
  • 格式:firewall-cmd --zone=<ZONE> --add-masquerade
firewall-cmd --permanent --zone=<ZONE> --add-masquerade
【浅谈,linux防火墙,Firewalld服务】firewall-cmd --query-masquerade #检查是否允许伪装
firewall-cmd --add-masquerade #允许防火墙伪装IP
firewall-cmd --remove-masquerade #禁止防火墙伪装IP
示例:将来自192.168.0.0/24网段的IP伪造为外网动态IP
firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.0.0/24 masquerade'
端口转发:将发往本机的特定端口的流量转发到本机或不同机器的另一个端口 。通常要配合地址伪造才能实现
格式:firewall-cmd --zone=<ZONE> --add-forward-port=port=<PORTNUMBER>:proto=<PROTOCOL>[:toport=<PORTNUMBER>][:toaddr=<IPADDR>]
说明:toport=和toaddr=至少要指定一个
示例
转发传入的连接9527/TCP,到防火墙的80/TCP到public zone 的192.168.0.254
firewall-cmd --add-masquerade 启用伪装
firewall-cmd --zone=public --add-forwardport=
port=9527:proto=tcp:toport=80:toaddr=192.168.0.254
rich规则语法:
  • 格式:forward-port port=<PORTNUM> protocol=tcp|udp [to-port=<PORTNUM>] [to-addr=<ADDRESS>]
  • 示例
/ 转发从192.168.0.0/24来的,发往80/TCP的流量到防火墙的端口8080/TCP
firewall-cmd --zone=work --add-rich-rule='rule family=ipv4 source
address=192.168.0.0/24 forward-port port=80 protocol=tcp to-port=8080'
 
山东掌趣网络科技




推荐阅读