Fedora
Fedora 的 firewall-cmd 顯示的可用服務比配置的多
所以,是的,配置 Fedora 20 的 firewall-cmd。試圖將入站流量限制為僅 http、https 和 ssh。但是,機器仍然響應 ping,並且 –get-service 命令顯示了我不使用的東西的洗衣清單。
為什麼斷開連接?
–get-service 命令是否準確,或者 –list-services 命令是否準確?
如果是後者,為什麼 ping 可以通過?
[root@build-node httpd]# firewall-cmd --get-service amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https [root@build-node httpd]# firewall-cmd --get-active-zone public interfaces: eth0 eth1 eth2 [root@build-node httpd]# firewall-cmd --zone=public --list-services http https ssh
此外,摘自 iptables -L -n。
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 ctstate RELATED,ESTABLISHED ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 INPUT_direct all -- 0.0.0.0/0 0.0.0.0/0 INPUT_ZONES_SOURCE all -- 0.0.0.0/0 0.0.0.0/0 INPUT_ZONES all -- 0.0.0.0/0 0.0.0.0/0 ACCEPT icmp -- 0.0.0.0/0 0.0.0.0/0 REJECT all -- 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited Chain INPUT_ZONES (1 references) target prot opt source destination IN_public all -- 0.0.0.0/0 0.0.0.0/0 [goto] IN_public all -- 0.0.0.0/0 0.0.0.0/0 [goto] IN_public all -- 0.0.0.0/0 0.0.0.0/0 [goto] IN_public all -- 0.0.0.0/0 0.0.0.0/0 [goto] Chain IN_public_allow (1 references) target prot opt source destination ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 ctstate NEW ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 ctstate NEW ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ctstate NEW
--get-service
顯示 firewalld 知道的所有服務,而不是您為其打開埠的服務。
--list-services
顯示您已為其打開埠的那些。您可以在
iptables
清單中看到只有埠 22、80 和 443 是開放的,這就是您所說的您想要的。最後,關於 ping:預設情況下,firewalld 允許所有 ICMP(因為阻止它通常是一個壞主意,除非您真的知道自己在做什麼)。如果你真的想“阻止 ping”,那麼你必須明確地這樣做。您可以使用
--get-icmptypes
查看 firewalld 知道的 ICMP 類型列表,並--add-icmp-block
阻止其中一種。確保你在機器的控制台上,以防你把自己鎖在外面。