PING 工具用於測試網絡質量。這通常被黑客用來欺騙主機或目標服務器執行洪水攻擊。用戶有時會覺得需要阻止不必要的服務器請求,以確保他們的系統安全並保護他們的服務器免受任何形式的攻擊。本文介紹如何阻止 PING 請求。本教程還向您展示瞭如何取消阻止 PING 請求。

數據包 Internet 分析器 (PING)

PING 用於檢查源和目標之間的連接狀態。用戶可以知道數據包接收響應需要多長時間。本文介紹了與您的服務器通信以在您的 Ubuntu、Debian 或 Linux Mint 20 系統上阻止和解除阻止它所需的 iptables 命令。

先決條件

  • Ubuntu 20.04 或 Linux Mint 20 或 Debian 10
  • 用戶和 sudo 權限

本教程中使用的命令在 Ubuntu 系統上進行了測試。第一步是安裝iptables。為此,請使用系統上的終端窗口。使用以下命令打開終端 Ctrl+Alt+T 捷徑。

在 Ubuntu 上阻止/解除阻止 PING 請求

ICMP 是用於發送 PING 請求的協議。數據包將請求回顯到目標系統並獲得回顯回復作為響應。 PING 命令具有連續發送 ICMP 數據包的能力。這種數據包發送機制一直持續到用戶按下 Ctl+C 鍵盤快捷鍵來停止它。

要阻止 PING 請求,用戶必須阻止 ICMP 請求。了解如何阻止和取消阻止這些回顯請求。方法如下。

  • 通過內核參數
  • 通過 iptables

如何通過內核參數阻止/解除阻止 PING 請求

您可以使用內核方法臨時或永久阻止 PING 請求。可以使用 sysctl 命令編輯和更改內核參數。

臨時阻止/取消阻止請求

阻止 PING 請求的第一種方法是暫時阻止它們。 sysctl 命令。 該命令用於在基於 Linux 平台的系統上修改或讀寫內核參數。 /proc/sys 目錄。

阻止 PING 請求

要阻止 PING 請求,請在終端中發出以下命令:

$ sudo sysctl -w net.ipv4.icmp_echo_ignore_all=1

這裡, net.ipv4.icmp_echo_ignore_all 控制系統對傳入 ICMP 請求的響應的參數。 0 表示是,1 表示沒有響應請求。其中 1 表示所有請求都被忽略或拒絕

當我發送 PING 請求時,沒有收到任何數據包作為響應。

ping 成功阻止

取消阻止 PING 請求

現在我們要取消阻止 PING 請求,因此在終端窗口中輸入以下命令:

$ sudo sysctl -w net.ipv4.icmp_echo_ignore_all=0

使用 sysctl 取消阻止 ping

用戶還可以使用內核參數值在 /proc/sys 目錄中為 echo 命令更改它。請注意,用戶必須具有 sudo 用戶權限。然後使用以下命令切換到 root 帳戶:

$ sudo -s

在終端中輸入以下命令:

$ echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all

忽略 ping

要解鎖它,請使用:

$ echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all

解鎖 ping

這是一種臨時阻止和解除阻止 PING 請求的方法。

永久阻止/解鎖請求

要更改內核的參數,您可以使用 /etc/sysctl.conf 文檔。要阻止請求,您需要編輯此文件。

阻止 PING 請求

要阻止您必須編輯的請求 /etc/sysctl.conf 文件使用:

$ sudo nano /etc/sysctl.conf

編輯 sysctl.conf

將打開一個編輯器窗口。在此文件中輸入以下行:

net.ipv4.icmp_echo_ignore_all = 1

sysctl.conf 文件

然後保存並關閉此文件。要使更改在不重新啟動的情況下生效,請發出以下命令:

$ sysctl -p

應用 sysctl 配置

取消阻止 PING 請求

為此,編輯 /etc/sysctl.conf 文件使用:

$ sudo nano /etc/sysctl.conf

使用 sysctl 取消阻止 ping

這次我們需要將 net.ipv4.icmp_echo_ignore_all 的值更新為“0”。 net.ipv4.icmp_echo_ignore_all=0

再次允許 ping

然後保存並關閉此文件。要使更改在不重新啟動的情況下生效,請發出以下命令:

$ sysctl -p

應用配置更改

這樣,用戶可以永久阻止和取消阻止 PING 請求。

如何使用 iptables 阻止/取消阻止 PING 請求

從命令行使用 iptables 實用程序來啟用或禁用流量。它按規則工作。 政策鏈.iptables 非常適合數據包智能網絡,在這種網絡中,每組數據包的流量都被單獨監控。他們處理查找規則,將每個數據包與列表進行匹配並將其映射到每個規則。如果沒有規則匹配,則不會建立連接。 iptables 的數據包過濾器是用 C 編程語言編寫的,迄今為止,有新的發行版和版本可供下載,使用: https://git.netfilter.org/iptables/

阻止/取消阻止來自 iptables 的 ping

第 1 步:安裝 iptables

要安裝 iptables,請在終端窗口中輸入以下命令:

$ sudo apt-get install iptables

安裝 iptables

安裝開始如下:

安裝 IP 表

第 2 步:驗證 iptables 安裝

接下來,您需要驗證您的 iptables 安裝。在終端窗口中輸入以下命令:

$ iptables --version

iptables 版本檢查

按 Enter,您應該會在輸出中看到與此類似的版本。

IPTables 版本

下面介紹如何禁用和啟用 ping 命令。

使用 iptables 阻止 ping

iptables 是一個基於規則的網絡過濾引擎。用戶可以添加這些規則來阻止 ping 到達 向和從 他們的服務器。 我們將介紹一系列添加規則集以阻止 PING 的示例。

例子:

規則1:

使用以下命令拒絕或阻止請求。 -一種 在下面的命令中,它意味著添加規則。當我運行以下 ping 命令時,我收到一條錯誤消息:

$ sudo iptables -A INPUT -p icmp --icmp-type echo-request -j REJECT

阻止icmp

如果您 p​​ing 任何 IP 地址,您將看到類似於以下內容的輸出:

ping 端口不可達

規則 2:

您還可以使用以下規則在輸入結束時阻止 PING:這不會顯示錯誤消息。

$ sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

在不通知的情況下刪除 ping 請求

第三條:

要在出口端丟棄或阻止 PING 請求,您還可以使用以下命令:

$ sudo iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP

阻止icmp

從 iptables 解鎖 ping

以下是如何從 iptables 啟用 PING 命令。

列出可用規則

您可以使用以下命令查看添加到 iptables 的所有規則:

列出防火牆規則

輸出如下所示:

iptables 列表

刪除阻止規則集

用戶可以刪除充當 ping 阻止程序的規則集或將其刪除。如上例所示,此處拒絕 ICMP。所以通過以下方式刪除它:

$ sudo iptables -D INPUT -p icmp --icmp-type echo-request -j REJECT

刪除規則

用戶可以輕鬆刪除所有不必要的規則。他們可以簡單地使用 -D 命令 刪除規則。

刪除自定義規則

要刪除添加到 iptables 的自定義規則,請在終端窗口中輸入以下命令以刪除不需要的規則。

$ sudo iptables -F

應用防火牆配置

通過這種方式,用戶可以從 iptables 添加和取消阻止 PING。

結論是

本文展示瞭如何在 Linux Mint 20 系統上使用內核參數和 iptables 禁用和啟用 PING。內核參數允許用戶永久或臨時保存設置。 它解釋了安裝 iptables 並通過一個很好的例子展示瞭如何禁用 ping。接下來我們看看如何從 iptables 解鎖 PING。本文介紹如何刪除和刪除規則,無論它們是自定義的還是充當系統的阻止程序。