HCRM博客

如何理解和应用CentOS 7中的系统规则?

CentOS 7 的防火墙规则配置和管理主要通过firewalld 实现,以是关于 CentOS 7 防火墙规则的详细介绍:

一、firewalld 简介

firewalld 是 CentOS 7 中的动态防火墙管理器,它使用基于区域(zone)的概念来管理网络接口和服务的访问权限,与传统的 iptaBLes 相比,firewalld 提供了更直观的命令和灵活的配置方式。

如何理解和应用CentOS 7中的系统规则?-图1
(图片来源网络,侵权删除)

二、基本概念

区域(Zone):定义网络接口所属的安全区域,每个区域有一组预定义的规则。

服务(Service):定义允许通过防火墙的服务,每个服务都与一个或多个端口相关联。

端口(Port):允许或拒绝流入或流出的数据包,可通过端口号或服务名指定。

源地址(Source Address):控制从特定 IP 地址或 IP 范围访问的规则。

三、常用命令

1、查看当前防火墙状态

   sudo firewallcmd state

2、查看已定义的区域

如何理解和应用CentOS 7中的系统规则?-图2
(图片来源网络,侵权删除)
   sudo firewallcmd getactivezones

3、查看某个区域的详细信息

   sudo firewallcmd zone=public listall

4、添加端口到防火墙规则

临时添加:

     firewallcmd zone=public addport=80/tcp

永久添加:

     firewallcmd permanent zone=public addport=80/tcp

重新加载防火墙配置以应用新的规则:

     firewallcmd reload

5、删除规则

如何理解和应用CentOS 7中的系统规则?-图3
(图片来源网络,侵权删除)

临时删除:

     firewallcmd zone=public removeport=80/tcp

永久删除:

     firewallcmd permanent zone=public removeport=80/tcp

6、定义新的区域

   sudo firewallcmd permanent newzone=myzone

7、将接口添加到新的区域

   sudo firewallcmd zone=myzone addinterface=eth1 permanent

8、允许特定源地址访问

   sudo firewallcmd zone=myzone addsource=192.168.1.0/24 permanent

四、高级用法

1、限制连接数量

   sudo firewallcmd direct addrule ipv4 filter INPUT 0 p tcp syn source 0/0 destination 0/0 limit 1/s limitburst 5 j ACCEPT

2、使用富规则(rich rules)

添加允许规则:

     firewallcmd permanent addrichrule='rule family="ipv4" source address="your_source_IP" destination address="172.16.0.0/16" forwardport port="any" protocol="all" accept'

添加拒绝规则:

     firewallcmd permanent addrichrule='rule family="ipv4" source address="36.7.83.122" reject'

五、防火墙日志和高级设置

1、启用防火墙日志

   sudo firewallcmd setlogdenied=all

日志将保存在/var/log/firewalld 目录下。

firewalld 作为 CentOS 7 的默认防火墙管理工具,提供了强大而灵活的规则配置方式,通过理解和合理配置防火墙规则,可以有效提升服务器的网络安全性,希望本文对你在 CentOS 7 上进行防火墙设置时有所帮助。

七、FAQs

Q1: 如何在 CentOS 7 中永久关闭防火墙?

A1: 要永久关闭防火墙,可以使用以下命令:

sudo systemctl disable firewalld
sudo systemctl stop firewalld

这将停止并禁用 firewalld 服务,使其在系统启动时不会自动运行。

Q2: 如何更改 CentOS 7 防火墙的默认区域?

A2: 要更改防火墙的默认区域,可以使用以下命令:

sudo firewallcmd setdefaultzone=trusted

这将把系统的默认区域设置为trusted,你可以根据需要更改为其他区域,如public,work,home 等。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/10558.html

分享:
扫描分享到社交APP
上一篇
下一篇