firewalld 设置规则只允许指定ip访问指定端口 —— 筑梦之路

需求说明:

现有三台机器,系统都是centos7

192.168.100.100

192.168.100.101  开启防火墙firewalld,上面有web服务nginx,监听80端口

192.168.100.102

需要让192.168.100.102可以访问101机器的80端口,192.168.100.100不允许访问101的80端口

如何设置防火墙规则?

1.查看101上当前防火墙规则

firewall-cmd --list-all

#通过查看101机器的防火墙规则,发现已经开放了80端口,即执行了下面这句

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

此时任意能访问到101 ip的都可以访问nginx的web服务端口80

 2.配置防火墙规则,限制指定ip-192.168.100.102访问指定端口80

关键点:移除现有的规则

# 移除现有规则  (此步骤相当重要,很多文章和博客都没提及到)

firewall-cmd --permanent --zone=public --remove-port=80/tcp

firewall-cmd --reload

# 在192.168.100.100  102上测试访问

curl  192.168.100.101

发现均无法再访问101的80端口

# 设置规则

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.100.102" port protocol="tcp" port="80" accept"

firewall-cmd --reload

# 测试访问

curl 192.168.100.101  

# 100无法访问  102可以访问

至此实现了通过防火墙firewalld设置规则,指定ip访问指定端口

 3.防火墙规则设置扩展内容

# 禁止指定ip 访问某个端口

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.100.200" port protocol="tcp" port="80" reject"

# 禁止某个段的ip 访问某个端口

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" reject"

# 允许指定ip 访问所有端口

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.100.100" port protocol="tcp" accept"

# 

参考资料:

第2篇:Linux防火墙-firewalld的rich规则配置_firewalld rich rule_jiecy的博客-CSDN博客

版权声明:本文为博主作者:筑梦之路原创文章,版权归属原作者,如果侵权,请联系我们删除!

原文链接:https://blog.csdn.net/qq_34777982/article/details/129282342

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2024年1月16日
下一篇 2024年1月16日

相关推荐