Centos7 防火墙策略rich-rule 限制ip访问-----图文详解
1.查看下防火墙的状态:systemctl status firewalld systemctl stop firewalld 关闭 systemctl disable firewalld 开机不启永久关闭 2.查看已开放的端口firewall-cmd --zone=public --list-ports firewall-cmd --permanent --zone=public --add-port=8484/tcp3.重启防火墙 firewall-cmd --reload
需求:正常情况是服务开启3306端口,但是现在是 只想让某个ip访问3306,也就是3306只给固定的IP开放,然后别的ip就访问不到。
这是在public中作策略,单独放开某个ip某个访问某个端口。
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.11.8" port protocol="tcp" port="3306" accept"
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.11.8" port protocol="tcp" port="3306" accept"
firewall-cmd --permanent --add-rich-rule="rule family=ipv4 source address=192.168.200.113 reject"
firewall-cmd --reload
firewall-cmd --list-all --zone=public
这就是允许某个ip访问指定的端口。如果要放下端口还是原来的firewall-cmd --permanent --zone=public --add-port=8484/tcp 这个命令。
简单介绍一下,Firewalld 一般已经默认内置了 9 个区域(zone),每个区域有不同的规则,加入你是服务器,ok你只需配一个区域,如果是公司和家,你就可以在公司是一个区域,在家是一个区域设置不同的策略。
1.查看当前所有区域的规则 firewall-cmd --list-all-zones
2.查看当前默认区域 firewall-cmd --get-default-zone
firewall-cmd --get-default-zone
3.查看单个区域public的规则 firewall-cmd --list-all --zone=public
firewall-cmd --list-all --zone=public
4.切换区域
查看当前活跃的区域
[root@kylin network-scripts]# firewall-cmd --get-active-zonepublic interfaces: ens33
切换网卡接口到默认区域
firewall-cmd --permanent --change-interface=ens33 --zone=drop 或firewall-cmd --permanent --add-interface=ens33 --zone=dropfirewall-cmd --reload #修改后需要重启
查看 firewall-cmd --get-active-zone
说完策略这下就要往策略里面添加规则了。
Firewalld 中的基本概念 区域(zone)
区域(zone)基本上是一组规则,它们决定了允许哪些流量,具体取决于你对计算机所连接的网络的信任程度。为网络接口分配了一个区域,以指示防火墙应允许的行为。
Firewalld 一般已经默认内置了 9 个区域(zone),大部分情况下,这些已经足够使用,按从最不信任到最受信任的顺序为:
drop:最低信任级别。所有传入的连接都将被丢弃而不会回复,并且只能进行传出连接。
block:与上述类似,但不是简单地删除连接,而是使用 icmp-host-prohibitedor 和 icmp6-adm-prohibited 消息拒绝传入的请求。
public:表示不信任的公共网络。您不信任其他计算机,但可能会视情况允许选择的传入连接。默认情况下,此区域为激活状态。
external:如果你使用防火墙作为网关,则为外部网络。将其配置为 NAT 转发,以便你的内部网络保持私有但可访问。
internal:external 区域的另一侧,用于网关的内部。这些计算机值得信赖,并且可以使用一些其他服务。
dmz:用于 DMZ (DeMilitarized Zone) 中的计算机(将无法访问网络其余部分的隔离计算机),仅允许某些传入连接。
work:用于工作机。信任网络中的大多数计算机。可能还允许其他一些服务。
home:家庭环境。通常,这意味着您信任其他大多数计算机,并且将接受其他一些服务。
trusted:信任网络中的所有计算机。可用选项中最开放的,应谨慎使用。
严格:默认区域设置为drop区域,允许的放入trusted区域
通过将当前默认区域pubilc切换到drop区,拒绝所有,然后在trusted区域中在添加白名单
宽松:默认区域设置为trusted区域,拒绝的单独放入drop区域
1.切换为drop区域
firewall-cmd --set-default-zone=dropfirewall-cmd --get-active-zonefirewall-cmd --permanent --change-interface=ens33 --zone=drop
查看
2. 将允许的IP或者IP段加入trusted白名单
firewall-cmd --permanent --add-source=192.168.1.11 --zone=trusted #添加ipfirewall-cmd --reload #重启firewall-cmd --list-all --zone=trusted 查看
[root@ky]# firewall-cmd --permanent --add-source=192.168.1.11 --zone=trustedsuccess[root@bogon ~]# firewall-cmd --reloadsuccess[root@ky]# firewall-cmd --list-all --zone trustedtrusted (active) target: ACCEPT icmp-block-inversion: no interfaces: sources: 192.168.1.11 services: ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
这里面也可以添加放行的端口
firewall-cmd --permanent --zone=trusted--add-port=80/tcp ##添加80端口到白名单 执行
firewall-cmd --reload ##重启防火墙
firewall-cmd --zone=trusted --list-ports ##查看已开放的端口
ok,这就完成了。
来源:本文内容搜集或转自各大网络平台,并已注明来源、出处,如果转载侵犯您的版权或非授权发布,请联系小编,我们会及时审核处理。
声明:江苏教育黄页对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。
Copyright©2013-2024 JSedu114 All Rights Reserved. 江苏教育信息综合发布查询平台保留所有权利
苏公网安备32010402000125 苏ICP备14051488号-3技术支持:南京博盛蓝睿网络科技有限公司
南京思必达教育科技有限公司版权所有 百度统计