Linux 默認是允許 ping 響應的,也就是說 ping 是開啓的,但 ping 有可能是網絡不安全的開始,所以關閉 ping 可以提高服務器的安全係數。
系統是否允許 ping 由2個因素決定的:1、內核參數,2、防火牆。
需要兩個因素同時允許才能允許 ping,有任意一個禁止,ping 就無法開啓。下面宵雲網絡就說下具體的配置方法:
1、內核參數設置
允許/禁止 ping 設置(默認允許 ping)
臨時允許/禁止 ping 操作的命令爲:修改 /proc/sys/net/ipv4/icmp_echo_ignore_all 文件的內容,該文件內容只有 1 個字符,0 爲允許 ping,1 爲禁止 ping,無需重啓服務器;
永久允許/禁止 ping 配置方法:
修改文件 /etc/sysctl.conf,在文件末尾增加一行:
net.ipv4.icmp_echo_ignore_all = 1
如果已經有 net.ipv4.icmp_echo_ignore_all 這一行了,直接修改 = 號後面的值即可的 0 表示允許,1 表示禁止。
修改完成後執行 sysctl -p 使新配置生效(重要)。
2、防火牆設置(此處的方法的前提是內核配置是默認值,也就是沒有禁止 ping)
這裏以 iptables 防火牆爲例,其他防火牆操作方法可參考防火牆的官方文檔。
允許ping設置
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
或者也可以臨時停止防火牆:
service iptables stop
禁止ping設置
iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j drop