我想closures所有的端口,但在接口enp0s3 22。 为了testing目的,我在端口1234上监听了netcat。 这里是我卡住的地方:
$ sudo firewall-cmd --state running $ sudo firewall-cmd --zone=drop --list-all drop (default, active) interfaces: enp0s3 sources: services: ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules: $ nmap 10.0.2.15 Starting Nmap 6.40 ( http://nmap.org ) at 2016-02-24 06:36 UTC Nmap scan report for 10.0.2.15 Host is up (0.00099s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 1234/tcp open hotline
正如你所看到的,nmap显示端口1234是开放的,但是我已经将接口添加到了firewalld中的放置区。 我错过了什么?
你试图做一些非常糟糕的主意,那么firewalld根本不会让你这样做。
默认情况下,允许来自本地主机的所有stream量的input规则显示在防火墙的早期,并优先于所有用户定义的规则。 它在Firewalld的CLI工具中不可见,不能使用它们进行更改或删除。
从理论上讲,你可能真的需要这样做,但这是不可能的(注意你可能认为你有真正的需要,实际上不需要)。 防火墙本地主机是一个打破整个系统的好方法,许多程序都依赖本地主机通信,这就是为什么你不能轻易撤销这一点。