在上一篇文章中,我们探讨了如何在 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
字段显示接受此域的所有接口。
现在,重点关注 services
、ports
和 protocols
所在行。默认情况下,防火墙将阻止所有端口、服务和协议,而只允许列出的。
在这里,你可以看到允许的服务是非常基本的客户端服务。例如,访问网络上的共享文件夹(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
)选项同样适用于服务和协议。
网站栏目:如何使用firewall-cmd管理网络服务
文章转载:http://www.shufengxianlan.com/qtweb/news0/274950.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联