0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在CentOS系统中配置防火墙

马哥Linux运维 来源:马哥Linux运维 2025-05-08 11:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

作为一名系统管理员或开发者,你是否曾经被 Linux 防火墙配置搞得头大?在生产环境中,我们经常需要配置防火墙来保护服务器安全,但面对 iptables 和 firewalld 这两个工具,很多人都会觉得无从下手。别担心!这篇文章将用通俗易懂的方式,带你了解 CentOS 中的防火墙配置,并通过一个实际案例,手把手教你如何正确设置防火墙规则。

1.两大防火墙工具

• firewalld:CentOS 7及以后版本的默认防火墙管理工具

• iptables:传统的Linux防火墙管理工具

2.firewalld的特点

• 动态管理防火墙

• 支持网络/防火墙区域(zone)定义网络连接及接口的可信等级

• 运行时配置和永久配置分离

• 支持IPv4、IPv6

• 支持以太网桥接

3.firewalld与iptables的主要区别

• firewalld:

• 动态配置,无需重启服务

• 支持动态更改规则

• 使用区域(zone)管理规则

配置文件存放地址:

/etc/firewalld/        # 系统配置文件目录
/usr/lib/firewalld/     # 默认配置文件目录


注意:

1./etc/firewalld/:优先级高,用户配置目录

2./usr/lib/firewalld/:优先级低,默认配置目录

• 系统升级时会覆盖此目录

• 建议在/etc/firewalld/下修改配置

• iptables service:

• 静态配置,规则修改后需重启服务

• 规则修改需要先清除旧规则

• 使用链(chain)管理规则

配置文件存放地址:

`/etc/sysconfig/iptables   # 规则配置文件`

4.firewalld不同区域

区域 说明
信任 可接收所有的网络连接
public 除非与传出流量相关,或与 ssh 或 dhcpv6-client 预定义服务匹配,否则拒绝流量传入
work 除非与传出流量相关,或与 ssh、ipp-client、dhcpv6-client 预定义服务匹配,否则拒绝流量传入
除非与传出流量相关,或与 ssh、ipp-client、mdns、samba-client、dhcpv6-client 预定义服务匹配,否则拒绝流量传入
internal 除非与传出流量相关,或与 ssh、ipp-client、mdns、samba-client、dhcpv6-client 预定义服务匹配,否则拒绝流量传入
external 除非与传出流量相关,或与 ssh 预定义服务匹配,否则拒绝流量传入
dmz 除非与传出的流量相关,或与 ssh 预定义服务匹配,否则拒绝流量传入
block 除非与传出流量相关,否则拒绝所有传入流量
drop 除非与传出流量相关,否则丢弃所有传入流量,并且不产生包含 ICMP 的错误响应

5.三种配置方法

• firewall-config 图形工具。

• firewall-cmd 命令行工具。

• /etc/firewalld/中的配置文件。

图形化不过多解释 需要的话你搜其他文章

防火墙基础案例

+-------------+   +-------------+   +-------------+
|  Client  |   |  Firewall |   |  Apache  |
|192.168.14.112|   |192.168.14.111|   |Linux 服务器 |
+-------------+   +-------------+   +-------------+
   |          |          |
   |          |          |
   +--------------------+--------------------+


1. 禁止主机 ping 服务器

2. 只允许 192.168.8.130 主机访问 SSH 服务

3. 允许所有主机访问 Apache 服务

服务器配置

ip地址是192.168.14.111

yum install -y httpd

[root@localhost ~]# echo 2024-12-3 > /var/www/html/index.html
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# curl 127.0.0.1
2024-12-3


配置完成apache服务之后

客户端是可以ping的

6a76a284-267b-11f0-9310-92fbcf53809c.png

禁止Ping防火墙规则

# 启动 firewalld 并设置为开机自启动
systemctlstart firewalld
systemctlenable firewalld

# 禁止 ping 服务器
firewall-cmd--zone=public --add-icmp-block=echo-request --permanent
firewall-cmd--reload
# 验证配置
firewall-cmd--list-all


客户端测试

6a97089e-267b-11f0-9310-92fbcf53809c.png

允许SSH登录规则

# 移除默认区域的 SSH 服务
firewall-cmd--zone=public --remove-service=ssh --permanent

# 只允许 192.168.8.130 主机访问 SSH 服务
firewall-cmd--zone=work --add-source=192.168.14.112 --permanent
firewall-cmd--zone=work --add-service=ssh --permanent
firewall-cmd--reload



# 验证配置
firewall-cmd--list-all


客户端测试

其他ip的主机远程是拒绝了 因为只有 192.168.14.112可以远程

6abbf898-267b-11f0-9310-92fbcf53809c.png

192.168.14.112 主机可以远程访问

6ad496dc-267b-11f0-9310-92fbcf53809c.png

允许apache流量规则

# 允许所有主机访问 Apache 服务
firewall-cmd --zone=public--add-service=http --permanent
firewall-cmd --zone=public--add-service=https --permanent
firewall-cmd --reload
# 验证配置
firewall-cmd --list-all


客户端测试

为开放apache的流量之前

[root@localhost ~]# curl 192.168.14.111
curl: (7) Failed connect to 192.168.14.111:80; 没有到主机的路由


开放之后 所有的主机均可以访问的

[root@localhost ~]# curl 192.168.14.111
2024-12-3


总结

通过这篇文章,我们不仅学习了 firewalld 和 iptables 的基本概念,更重要的是通过一个实际的案例,展示了如何:

1. 轻松配置防火墙规则来阻止 ping 请求

2. 限制特定 IP 地址的 SSH 访问,提高服务器安全性

3. 开放 HTTP 服务,让网站正常对外提供服务

记住,防火墙配置不是一成不变的,你可以根据实际需求随时调整规则。最重要的是理解每个配置背后的原理,这样才能灵活应对各种场景。希望这篇文章能帮助你在实际工作中少走弯路,轻松搞定防火墙配置!

链接:https://blog.csdn.net/jxjdhdnd/article/details/146496275

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11627

    浏览量

    217888
  • 服务器
    +关注

    关注

    13

    文章

    10092

    浏览量

    90854
  • 防火墙
    +关注

    关注

    0

    文章

    442

    浏览量

    36602
  • CentOS
    +关注

    关注

    0

    文章

    84

    浏览量

    14661

原文标题:Linux防火墙基础部分Firewalld防火墙(小白入门级别)

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    发现 STM32 防火墙的安全配置

    。Figure 5 RM0351关于防火强控制寄存器的动态配置方式的描述也就是说,防火墙相比较MPU的优势“配置有效直到
    发表于 07-27 11:04

    防火墙技术

    防火墙技术.ppt 防火墙及相关概念包过滤型防火墙代理服务型防火墙 防火墙配置分布
    发表于 06-16 23:41 0次下载

    防火墙配置

    实验十三、防火墙配置 一. 实验原理1.1 防火墙原理网络的主要功能是向其他通信实体提供信息传输服务。网络安全技术的主
    发表于 09-24 13:55 2651次阅读
    <b class='flag-5'>防火墙</b>的<b class='flag-5'>配置</b>

    防火墙配置--过滤规则示例

    防火墙配置--过滤规则示例
    发表于 12-07 14:16 9741次阅读
    <b class='flag-5'>防火墙</b>的<b class='flag-5'>配置</b>--过滤规则示例

    防火墙防火墙的渗透技术

    防火墙防火墙的渗透技术 传统的防火墙工作原理及优缺点: 1.(传统的)包过滤防火墙的工作原理   包过滤是在IP层实现的,因
    发表于 08-01 10:26 1307次阅读

    防火墙的控制端口

    防火墙的控制端口 防火墙的控制端口通常为Console端口,防火墙的初始配置也是通过控制端口(Console)与PC机(通常是便于移动的笔记本电脑)的串口(RS-232
    发表于 01-08 10:37 1339次阅读

    防火墙管理

     防火墙管理  防火墙管理是指对防火墙具有管理权限的管理员行为和防火墙运行状态的管理,管理员的行为主要包括:通过防火墙
    发表于 01-08 10:39 1603次阅读

    防火墙的分类

    防火墙的分类 如果从防火墙的软、硬件形式来分的话,防火墙可以分为软件防火墙和硬件防火墙以及芯片级
    发表于 01-08 11:01 7365次阅读

    如何配置Cisco PIX防火墙

    如何配置Cisco PIX防火墙配置PIX防火墙之前,先来介绍一下防火墙的物理特性。防火墙
    发表于 01-13 13:26 724次阅读

    究竟什么是防火墙

    究竟什么是防火墙?     Q:防火墙初级入门:究竟什么是防火墙?     A:防火墙定义
    发表于 02-24 11:51 887次阅读

    Linux 防火墙配置基础篇

    RedHat Linux 为增加系统安全性提供了防火墙保护。防火墙存在于你的计算机和网络之间,用来判定网络的远程用户有权访问你的计算机上的哪些资源。一个正确
    发表于 11-07 10:42 1次下载

    什么是防火墙防火墙如何工作?

    防火墙是网络与万维网之间的关守,它位于网络的入口和出口。 它评估网络流量,仅允许某些流量进出。防火墙分析网络数据包头,其中包含有关要进入或退出网络的流量的信息。然后,基于防火墙配置
    的头像 发表于 09-30 14:35 5992次阅读

    何在防火墙上创建虚拟防火墙

    PC2与Server2属于一个敏感的业务,这个业务的流量要求与防火墙上的其他流量完全隔离,使用虚拟防火墙技术实现这个需求
    发表于 11-09 09:57 2062次阅读

    在命令行下配置防火墙的基础上网步骤

    部分用户需要在命令行界面下进行防火墙基础上网配置,本文展示如何在命令行下配置防火墙的基础上网步骤。
    的头像 发表于 09-24 11:37 1802次阅读
    在命令行下<b class='flag-5'>配置</b><b class='flag-5'>防火墙</b>的基础上网步骤

    请问Centos7如何配置firewalld防火墙规则?

    Firewalld是CentOS系统自带的一种动态防火墙管理工具。是一个前端工具,用于管理Linux系统上的netfilter防火墙规则。F
    的头像 发表于 10-09 09:33 2378次阅读
    请问<b class='flag-5'>Centos</b>7如何<b class='flag-5'>配置</b>firewalld<b class='flag-5'>防火墙</b>规则?