# firewall-cmd --permanent --add-service=nfs
# filewall-cmd --permanent --add-service=rpc-bind
在 RHEL/CentOS 7.9 中,如果我执行上述操作,防火墙中会打开哪些数字端口号?
服务名称(例如 rpc-bind)到防火墙端口号的映射在哪里定义?
我相信/etc/firewalld/zones/myzone.xml
最终一切都归结为以下内容是否正确?
要么 要么tcp
和udp
一个数字?
# sshd
<port protocol="tcp" port="22"/>
# nfs
<port protocol="tcp" port="2049"/>
<port protocol="udp" port="2049"/>
TL;DR: 编译成 firewalld,见源码。
长答案:请查看firewalld 源代码库中的 README。
使用的所有服务
firewalld
都在config/services
目录中的 xml 文件中定义。例如,该rpc-bind.xml
文件包含:编辑:在 rhel/centos 7 中,该位置
/usr/lib/firewalld/services
用于 xml 文件。将 rpc 绑定到 tcp 和 udp 端口 111。类似地,NFS (
nfs
, v4) 如下所示:和 NFSv3 (
nfs3
) 像这样:您还询问 SSH:
这些 XML 定义被编译到 firewalld 中。