如何使用 firewall-cmd 管理网络服务

在上一篇文章中,我们探讨了如何在 Fedora 中用命令行控制防火墙。

现在你将看到如何“添加”、“删除”和“列出”服务、协议和端口,以便“阻止”或“允许”它们。

简短回顾

首先,最好检查一下防火墙的状态,看它是否正在运行。如我们先前所学,你可以使用状态选项(firewall-cmd ‐‐state)来得到。

下一步是获取网络接口适用的域zone。例如,我使用的桌面有两个网络接口:一个物理接口(enp0s3),代表我实际的网卡,和虚拟接口(virbr0),它由 KVM 等虚拟化软件使用。要查看哪些域处于活动状态,请运行 firewall-cmd ‐‐get-active-zones

现在,你知道了你感兴趣的域,可以使用 firewall-cmd ‐‐info-zone=FedoraWorkstation 这样的命令列出该域的规则。

读取区域信息

要显示特定域的信息,请运行 firewall-cmd ‐‐zone=ZoneName ‐‐list-all,或使用以下命令显示默认域的信息:

[dan@localhost ~]$ firewall-cmd --list-all
FedoraWorkstation (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: dhcpv6-client mdns samba-client ssh
ports: 1025-65535/udp 1025-65535/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

现在,让我们查看输出。第一行表明以下信息关联的域以及该域当前是否在使用中。

target: default:告诉我们这是默认域。可以通过 ‐‐set-default-zone=ZoneName‐‐get-default-zone 设置或获取。

icmp-block-inversion 表明是否阻止 ICMP 请求。例如,如果机器响应来自网络上其他机器的 ping 请求。

interfaces 字段显示接受此域的所有接口。

处理服务、端口和协议

现在,重点关注 servicesportsprotocols 所在行。默认情况下,防火墙将阻止所有端口、服务和协议,而只允许列出的。

在这里,你可以看到允许的服务是非常基本的客户端服务。例如,访问网络上的共享文件夹(samba-client)、与 DNS 服务器通信或通过 SSH(ssh 服务)连接到计算机。你可以将 service 视为与端口组合的协议,例如 ssh 服务使用 SSH 协议,并且按照惯例使用 22 端口。通过允许 ssh 服务,你实际上所做的就是允许传入的连接在默认 22 端口上使用 SSH 协议。

请注意,根据经验,名称中带有 client 字样的服务是指传出连接,也就是你使用你的 IP 作为源对外部的连接,与之相反的是 ssh 服务,比如,它将接受传入连接(监听来自外部的连接)。

你可以在文件 /etc/services 中查找服务。例如,如果你想知道这些服务使用什么端口和协议:

[dan@localhost ~]$ cat /etc/services | grep ssh
ssh 22/tcp # The Secure Shell (SSH) Protocol
ssh 22/udp # The Secure Shell (SSH) Protocol

你可以看到 SSH 同时使用 TCP 和 UDP 的 22 端口。此外,如果你希望查看所有可用的服务,只需使用 firewall-cmd --get-services

打开端口

如果要阻止端口、服务或协议,请确保在此处未列出它们。展开来说,如果要允许服务,那么需要将它添加到列表中。

假设你要打开 5000 端口用于 TCP 连接。为此,请运行:

sudo firewall-cmd --zone=FedorwaWorkstation --permanent --add-port=5000/tcp

请注意,你需要指定规则适用的域。添加规则时,还需要如上指定它是 tcp 还是 udp 端口。--permanent 参数将规则设置为即使系统重启后也可以保留。

再次查看你所在区域的信息:

[dan@localhost ~]$ firewall-cmd --list-all
FedoraWorkstation (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: dhcpv6-client mdns samba-client ssh
ports: 1025-65535/udp 1025-65535/tcp 5000/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

类似地,如果你想从列表删除该端口,请运行:

sudo firewall-cmd --zone=FedorwaWorkstation --permanent --remove-port=5000/tcp

相同的 remove‐‐remove-protocol‐‐remove-service) 和 add‐‐add-protocol‐‐add-service)选项同样适用于服务协议


文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/206543.html<

(0)
运维的头像运维
上一篇2025-04-08 03:19
下一篇 2025-04-08 03:20

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注