【Linux】深入探究CentOS防火墙(Firewalld):基础概念、常用命令及实例操作

🍎个人博客:个人主页

🏆个人专栏:Linux

⛳️ 功不唐捐,玉汝于成


目录

前言

正文

Firewalld基础概念:

Firewalld常用命令:

启动/停止/重启Firewalld服务:

查看Firewalld状态:

查看所有区域:

查看指定区域的规则:

开放端口:

添加服务:

删除端口/服务:

Firewalld实例操作:

开放SSH访问(端口22):

开放HTTP和HTTPS服务:

将网络接口从默认的public区域移动到trusted区域:

禁止Ping请求:

允许特定IP访问SSH端口:

Firewalld配置文件路径:

结语

我的其他博客


前言

理解和有效地配置防火墙是任何系统管理员的重要任务之一。在Linux系统中,CentOS防火墙(Firewalld)是一个强大的工具,可以帮助保护服务器免受恶意网络活动的侵害。本文将详细介绍CentOS防火墙的基本概念、常用命令以及实例操作,帮助你更好地了解和管理防火墙设置。

正文

CentOS防火墙(Firewalld)是Linux系统中一种用于管理网络连接的工具,它可以配置和控制系统的网络流量,保护系统免受恶意网络活动的侵害。以下是CentOS防火墙的详细讲解:

Firewalld基础概念:

  1. 区域(Zone):Firewalld将网络接口分组到不同的区域中,每个区域可以定义一组预定义的安全规则,例如公共、私有、内部、信任等。

  2. 服务(Service):服务是一组预定义的规则集合,可以通过名称来指代一组特定的端口和协议。例如,HTTP服务通常使用端口80,HTTPS服务通常使用端口443。

  3. 端口(Port):端口是用于标识网络服务的数字,每个网络服务都会监听特定的端口以便于通信。防火墙可以通过允许或者拒绝端口的访问来控制网络流量。

Firewalld常用命令:

通过修改这些配置文件,你可以自定义Firewalld的行为,但记得在修改后重新加载防火墙配置。

以上就是CentOS防火墙(Firewalld)的详细讲解,希望对你有所帮助。

启动/停止/重启Firewalld服务:

复制代码
   sudo systemctl start firewalld
   sudo systemctl stop firewalld
   sudo systemctl restart firewalld

查看Firewalld状态:

复制代码
   sudo firewall-cmd --state

查看所有区域:

复制代码
   sudo firewall-cmd --get-zones

查看指定区域的规则:

复制代码
   sudo firewall-cmd --zone=public --list-all

开放端口:

复制代码
   sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
   sudo firewall-cmd --reload

添加服务:

复制代码
   sudo firewall-cmd --zone=public --add-service=http --permanent
   sudo firewall-cmd --reload

删除端口/服务:

复制代码
   sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
   sudo firewall-cmd --zone=public --remove-service=http --permanent
   sudo firewall-cmd --reload

Firewalld实例操作:

开放SSH访问(端口22):

复制代码
   sudo firewall-cmd --zone=public --add-port=22/tcp --permanent
   sudo firewall-cmd --reload

开放HTTP和HTTPS服务:

复制代码
   sudo firewall-cmd --zone=public --add-service=http --permanent
   sudo firewall-cmd --zone=public --add-service=https --permanent
   sudo firewall-cmd --reload

将网络接口从默认的public区域移动到trusted区域:

复制代码
   sudo firewall-cmd --zone=trusted --change-interface=eth0
   sudo firewall-cmd --reload

禁止Ping请求:

复制代码
   sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" protocol="icmp" icmp-type="echo-request" drop' --permanent
   sudo firewall-cmd --reload

允许特定IP访问SSH端口:

复制代码
   sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept' --permanent
   sudo firewall-cmd --reload

Firewalld配置文件路径:

Firewalld的配置文件位于/etc/firewalld/目录下,其中主要的配置文件有:
3. firewalld.conf:Firewalld的主要配置文件。
4. zones :每个区域的配置文件都在这个目录下,例如public.xmlinternal.xml等。
5. services :包含每个服务的XML文件,例如http.xmlssh.xml等。

结语

通过本文的学习,你应该对CentOS防火墙有了更深入的了解,并能够使用Firewalld命令来配置和管理服务器的网络连接。记得根据实际需求和安全策略,及时更新防火墙规则,以确保服务器的安全性和稳定性。

我的其他博客

【MySQL】数据库规范化的三大法则 --- 一探范式设计原则-CSDN博客

【JAVA】线程的run()和start()有什么区别?-CSDN博客

【日常聊聊】程序员必备的面试技巧:如何在面试战场上脱颖而出-CSDN博客

【JAVA】Java8开始ConcurrentHashMap,为什么舍弃分段锁-CSDN博客

【JAVA】怎么确保一个集合不能被修改-CSDN博客

【Web开发】会话管理与无 Cookie 环境下的实现策略-CSDN博客

【Mybatis】Mybatis如何防止sql注入-CSDN博客

【软件工程】航行敏捷之路:深度解析Scrum框架的精髓-CSDN博客

【Spring】理解IoC与AOP:构建灵活而模块化的软件架构-CSDN博客

相关推荐
不正经学生10 分钟前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
M78佐菲3 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
Brilliantwxx3 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
不怕犯错,就怕不做3 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
噜~噜~噜~4 小时前
操作系统笔记-2.3.5.1.1生产者-消费者问题
笔记·操作系统
怕浪猫4 小时前
AI Agent 的安全围栏:DeepSeek Harness 沙箱隔离策略全解析
面试·agent·产品经理
richdata4 小时前
商品数字化不是先做大数据,而是先把数据变成可用决策
大数据·运维·数据治理·商品数字化·智能补货·ai商品决策
weixin_416667964 小时前
【无标题】
运维·服务器·网络
一池秋_5 小时前
arm低配linux设备,桌面应用冷启动提速方法
linux·运维·arm开发
惜离殇5 小时前
从零开始的敲代码生活--Linux应用软件(文件操作基础1)
linux·c语言·文件操作·标准io