Windows & Linux服務器如何禁用ping總結


 

有時候你ping一些服務器或網站,你會發現ping不通,這個是因為對方出於安全因素(security reason)或避免網絡擁堵(avoid network congestion等原因,禁用了ping。ping除了用在網絡診斷上,還為網絡攻擊者查找潛在攻擊目標提供了方便;不響應ping可以降低系統的安全風險。譬如Ping洪水攻擊(Ping of Death)。下面總結了一下Linux平台或Windows平台如何禁用ping命令的一些方法。

 

 

 

 

Linux服務器

 

 

Linux系統可以通過系統內核參數或防火牆來禁止ping,下面我們先來看看如何通過內核參數禁止ping命令。

 

 

 

內核參數禁用ping

 

 

如果你想禁用ping,只需要設置內核參數icmp_echo_ignore_all,此參數如果設置為非0,Linux會忽略所有ICMP_ECHO請求包。

 

[root@DB-Server ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

 

clip_image001

 

 

這個命令會立即生效,如果需要啟用ping命令,將這個參數設置為0即可。

 

[root@DB-Server ~]# echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

 

 

clip_image002

 

 

當然,這個設置只對當前環境生效,如果服務器重啟時,這個設置就會失效。如果要永久生效,那么可以在配置文件/etc/sysctl.conf 增加參數net.ipv4.icmp_echo_ignore_all = 1,然后使用sysctl -p使之生效。當然,你也可以使用下面命令實現:

 

禁止ICMP包通行

 

echo net.ipv4.icmp_echo_ignore_all=1 >>/etc/sysctl.conf

 

允許ICMP包通行

 

echo net.ipv4.icmp_echo_ignore_all=0 >>/etc/sysctl.con

 

 

 

 

防火牆禁用ping

 

 

 

另外一種方式是通過防火牆層面禁用ping,可以使用下面命令

 

# iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP

 

執行上面命令后,就會在/etc/sysconfig/iptables里面多了下面專業這樣一條規則。然后使用命令service iptables restart重啟防火牆服務,就不能ping了

 

-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

 

個人在測試時,發現如果/etc/sysconfig/iptables里面如果還有下面這樣一條規則,那么上面命令就不會生效。所以在使用命令時,最后檢查一下配置文件。

 

-A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT

 

當然,你可以直接設置iptables的配置文件,在/etc/sysconfig/iptables里面,直接修改

 

-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT   #允許ping

-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j DROP     #禁止ping

 

注意,可能不同版本的防火牆設置有所區別,這里只在RHEL 5下面測試過,並沒有測試其它平台。

 

 

 

Windows服務器

 

 

 

防火牆禁止ping

 

下面以Windows Server 2012為列(不同操作系統可能有一些區別),運行WF.MSC命令后,在高級安全Windows防火牆的入站規則(Inbound Rules)里面找到下面幾條規則:

 

文件和打印機共享(回顯請求-ICMP v4-In)     File and Printer Sharing (Echo Request - ICMPv4-In)

文件和打印機共享(回顯請求-ICMP v6-In)     File and Printer Sharing (Echo Request - ICMPv6-In)

 

注意,如下所示可能有多條規則,這個是因為后面的Profile的值不同緣故(Private、Public、Domain)以及IPV4 與 IPV6的與緣故

 

clip_image003

 

如下所示,在操作(Action)選擇阻止連接(Block the connecting),如果這個規則沒有啟用,可以先啟用或選擇啟用規則(Enable)選項,點擊應用后就會生效。另外,注意根據實際情況選擇IPV4與IPV6規則。

 

clip_image004

 

 

 

IP策略實現服務器禁止Ping

 

 

(實驗環境為Windows Server 2012 R2)依次單擊開始→管理工具→本地安全策略,打開本地安全設置對話框,右擊該對話框左側的IP安全策略,在本地計算機選項,點擊創建IP安全策略,然后如下所示,一步一步的配置。

 

clip_image005

 

 

clip_image006

 

 

 

命名IP篩選器為Disabled Ping Security Policy,描述語言可以為IP安全策略,禁止PING,然后單擊[下一步]按鈕。

 

 

 

 

clip_image007

 

 

 

接下來依次單擊[下一步]

 

clip_image008

 

 

選擇編輯屬性

 

clip_image009

 

 

clip_image010

 

 

 

 

clip_image011

 

 

clip_image012

 

clip_image013

 

 

clip_image014

 

 

 

 

clip_image015

 

 

 

clip_image016

 

clip_image017

 

 安全策略創建完畢后並不能馬上生效,我們還需通過指派使其發揮作用。右擊本地安全設置對話框右側的[Disabled Ping Security Policy]策略,執指派”(Assign)令即可啟用該策略。總體來說,防火牆層面禁用ping要方便、快捷很多,IP安全策略禁用PING感覺非常繁瑣。

 

 

 

 

 

 

參考資料:

 

http://www.361way.com/rejctping/1452.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM