使用 firewall-cmd 管理 Linux 防火墙端口

前言

本文将介绍如何使用 firewall-cmd 工具在 Linux 系统中进行简单端口管理,包括开放、查询、关闭等操作。通过实例展示相关命令的用法,希望能对大家有所帮助。

一、防火墙与firewall-cmd介绍

在 Linux 系统中,防火墙起着举足轻重的作用,它是确保服务器和客户端免遭网络攻击侵害的一道坚实屏障。具体来说,防火墙的核心功能体现在以下三个方面:

  • 控制网络访问:通过高效检测并筛选进出网络的数据包,防火墙能够根据预设的规则精准地阻截任何未获授权的访问请求,从而有效化解恶意软件、黑客攻击等各类网络安全风险。
  • 保护敏感数据:通过严密防范未经授权的访问行为,防火墙有助于保护存储在计算机和网络中的敏感数据免受泄露和滥用。
  • 强化网络安全策略:防火墙可以根据组织的安全策略进行配置,允许管理员根据组织的安全方针进行灵活配置,明确哪些网络流量是合规的,哪些是需要封锁的,进而全面提升网络的安全防御水平。

firewall-cmd 作为 Linux 系统中 firewalld 服务的命令行工具,可以为管理员提供了一种便捷高效的方式来配置和管理防火墙规则。凭借 firewall-cmd,管理员能够轻松执行诸如开启/关闭特定端口、设定复杂规则、管理不同区域设置等操作,以适应多样化的网络环境和应用场景。firewall-cmd 在协助管理员充分利用防火墙优势、确保网络安全方面起到了不可或缺的重要作用。

二、firewall-cmd 端口管理

1.开放端口

若要在防火墙上开放特定的端口,可以使用以下命令:

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

此命令将在 public 区域中开放 TCP 协议的 80 端口,并永久保存这一设置。可以将 80/tcp 替换为其他需要开放的端口和协议。

2.查看某端口是否开放

要查询某个端口是否已开放,可以使用以下命令:

ini 复制代码
firewall-cmd --query-port=80/tcp

如果 80 端口已开放,该命令将返回 yes,否则返回 no

3.查看端口开启列表

以下命令将列出所有在防火墙中开放的端口:

css 复制代码
firewall-cmd --list-port

4.重启防火墙

在对防火墙进行配置更改后,需要重启防火墙以使更改生效,可以使用以下命令:

css 复制代码
firewall-cmd --reload

此命令将重新加载防火墙配置,并应用所做的更改。

5.关闭防火墙

如果需要临时关闭防火墙,可以使用以下命令:

arduino 复制代码
systemctl stop firewalld.service

此命令将停止 firewalld 服务,从而关闭防火墙。请注意,此操作可能会使系统面临风险,因此请谨慎使用。

6.禁止或启用开机启动

若要禁止防火墙在系统启动时自动运行,可以使用以下命令:

bash 复制代码
systemctl disable firewalld.service

相反,若要启用开机启动,可以使用以下命令:

bash 复制代码
systemctl enable firewalld.service

7.开放特定 IP 地址的访问权限

若要允许来自特定 IP 地址的访问请求通过防火墙,可以使用富规则(rich rule)。例如:

ini 复制代码
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="IP地址" port port="端口" protocol="tcp" accept"

需要将其中的 IP 地址端口 替换为实际的 IP 地址和端口号。此命令将为来自指定 IP 地址的 TCP 连接请求开放指定的端口。


总结

本文介绍了如何使用firewall-cmd工具在Linux系统中进行简单端口管理,希望这些知识和技巧能对大家有所帮助。

相关推荐
2401_892070981 天前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
lwx9148521 天前
Linux-Shell算术运算
linux·运维·服务器
somi71 天前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
双份浓缩馥芮白1 天前
【Docker】Linux 迁移 docker 目录(软链接)
linux·docker
黄昏晓x1 天前
Linux ---- UDP和TCP
linux·tcp/ip·udp
路溪非溪1 天前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
此刻觐神1 天前
IMX6ULL开发板学习-01(Linux文件目录和目录相关命令)
linux·服务器·学习
2401_892070981 天前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象
航Hang*1 天前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
-ONLY-¥1 天前
PostgreSQL运维全攻略:从基础操作到远程配置
linux