Centos7 防火墙策略rich-rule 限制ip访问-----图文详解

本文涉及的产品
云防火墙,500元 1000GB
简介: 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/tcp
3.重启防火墙 firewall-cmd --reload

二 、需求和-----策略rich-rule 重点

需求:正常情况是服务开启3306端口,但是现在是 只想让某个ip访问3306,也就是3306只给固定的IP开放,然后别的ip就访问不到。

这是在public中作策略,单独放开某个ip某个访问某个端口。

1、添加允许规则:add-rich-rule accept

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

2、移除规则

firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.11.8" port protocol="tcp" port="3306" accept"

3、添加拒绝策略:reject

firewall-cmd --permanent --add-rich-rule="rule family=ipv4 source address=192.168.200.113 reject"

4重启

firewall-cmd  --reload

5.查看

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-zone
public
  interfaces: ens33

切换网卡接口到默认区域

firewall-cmd --permanent --change-interface=ens33 --zone=drop
firewall-cmd --permanent --add-interface=ens33 --zone=drop
firewall-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=drop
firewall-cmd --get-active-zone
firewall-cmd --permanent  --change-interface=ens33 --zone=drop

查看

2. 将允许的IP或者IP段加入trusted白名单

firewall-cmd --permanent --add-source=192.168.1.11 --zone=trusted #添加ip
firewall-cmd --reload  #重启
firewall-cmd  --list-all --zone=trusted  查看
[root@ky]# firewall-cmd --permanent --add-source=192.168.1.11 --zone=trusted
success
[root@bogon ~]# firewall-cmd --reload
success
[root@ky]# firewall-cmd  --list-all --zone trusted
trusted (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,这就完成了。

参考:Firewalld - Fedora Project Wiki

firewalld 防火墙策略_firewalld默认规则_可问春风的博客-CSDN博客

目录
相关文章
|
4月前
|
存储 网络协议 安全
【Azure 环境】ARM部署模板大于4MB的解决方案及Linked Template遇见存储账号防火墙无法访问
【Azure 环境】ARM部署模板大于4MB的解决方案及Linked Template遇见存储账号防火墙无法访问
|
29天前
|
Ubuntu 安全 网络协议
ubuntu22.04防火墙策略
在Ubuntu 22.04中,配置防火墙策略是保障系统安全的关键。UFW提供了简便的界面,适合大多数用户,而iptables则提供了更为强大的功能,适合高级用户和复杂环境。通过合理设计防火墙策略,可以有效防止未经授权的访问,提升系统的安全性和稳定性。无论是通过UFW还是iptables,定期审查和更新防火墙规则都是必不可少的,以应对不断变化的安全威胁。
43 3
|
2月前
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
58 6
|
1月前
|
安全 Linux 网络安全
centos7中firewall防火墙的常用命令总结
以上命令集覆盖了 `firewalld`的基本操作,是维护CentOS 7系统安全不可或缺的工具。对于更高级的配置需求或遇到特定问题
35 3
|
2月前
|
网络安全 Docker 容器
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
【Bug修复】秒杀服务器异常,轻松恢复网站访问--从防火墙到Docker服务的全面解析
38 0
|
4月前
|
存储 网络安全 数据中心
【Azure 存储服务】App Service 访问开启防火墙的存储账号时遇见 403 (This request is not authorized to perform this operation.)
【Azure 存储服务】App Service 访问开启防火墙的存储账号时遇见 403 (This request is not authorized to perform this operation.)
【Azure 存储服务】App Service 访问开启防火墙的存储账号时遇见 403 (This request is not authorized to perform this operation.)
|
4月前
|
存储 安全 API
【Azure API Management】实现在API Management服务中使用MI(管理标识 Managed Identity)访问启用防火墙的Storage Account
【Azure API Management】实现在API Management服务中使用MI(管理标识 Managed Identity)访问启用防火墙的Storage Account
|
7月前
|
安全 网络协议 网络安全
防火墙之安全策略
防火墙之安全策略
119 7
|
7月前
|
网络协议 Linux 网络安全
CentOS 7 防火墙指令
本文介绍了CentOS 7中管理防火墙`firewalld`的指令。
100 0
|
7月前
|
Linux 网络安全
Linux(CentOS6.5)开放端口,配置防火墙
Linux(CentOS6.5)开放端口,配置防火墙
149 0
下一篇
DataWorks