有没有一种简单的方法来显示已使用打开的所有端口的完整列表firewalld
?
我知道命令firewall-cmd --list-all
,但它只显示服务名称,而不是这些服务定义为打开的端口。
例如:
[root@myserver log]# firewall-cmd --list-all
dmz (active)
target: default
icmp-block-inversion: no
interfaces: ens160
sources:
services: ssh squid my-icap
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
Run Code Online (Sandbox Code Playgroud)
我知道我可以进入这些服务中的每一个的定义文件,以查看它们将哪些端口定义为开放端口,但似乎应该有一种单行方式来执行此操作,而我只是缺少它。
而且我不是在寻找netstat
:它会告诉我是否有什么东西正在侦听某个端口,这与是否可以从另一台主机访问该端口是一个不同的问题。
小智 13
我也一直在寻找这个,目前我想出了这个 bash oneliner
for s in $(firewall-cmd --list-services); do firewall-cmd --permanent --service "$s" --get-ports; done;
Run Code Online (Sandbox Code Playgroud)
对于常规端口,只需使用
$ firewall-cmd --list-ports
Run Code Online (Sandbox Code Playgroud)
要不就
$ firewall-cmd --list-all
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5057 次 |
最近记录: |