一連のUbuntu 10.04サーバーがあり、各サーバーでufwファイアウォールが有効になっています。ポート22(SSH用)および80(Webサーバーの場合)を許可しました。私の質問は、icmpエコー応答(ping応答)を有効にしようとしているということです。
ICMPの機能は他のプロトコルとは異なります-技術的な意味でIPレベルを下回っています。を入力することはできsudo ufw allow 22
ますが、入力することはできませんsudo ufw allow icmp
一連のUbuntu 10.04サーバーがあり、各サーバーでufwファイアウォールが有効になっています。ポート22(SSH用)および80(Webサーバーの場合)を許可しました。私の質問は、icmpエコー応答(ping応答)を有効にしようとしているということです。
ICMPの機能は他のプロトコルとは異なります-技術的な意味でIPレベルを下回っています。を入力することはできsudo ufw allow 22
ますが、入力することはできませんsudo ufw allow icmp
回答:
ufwでは、コマンドラインインターフェイスコマンドによるicmpルールの指定は許可されていません。iptables-restoreスタイルファイルであるルールファイルを使用して、ルールセットを調整できます。
ufwは、icmpエコー応答を含む特定のicmpトラフィックをデフォルトで許可します。これは、デフォルトですでに設定されています/etc/ufw/before.rules
:
-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT
ホストがpingに応答しない場合は、このファイルを調べて上記の行が存在することを確認し、それが機能しない場合は、pingホストとそれらの間のファイアウォールを調べます。
sudo ufw reload
(およびpingリクエストを許可するには、追加する必要があり-A ufw-before-output -p icmp --icmp-type echo-request -j ACCEPT
ました/etc/ufw/before.rules
)
Ubuntu 18.04の場合、/ etc / ufw / before.rulesファイルに次のルールが必要です。
# ok icmp codes for INPUT
-A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT
-A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT
# ok icmp code for FORWARD
-A ufw-before-forward -p icmp --icmp-type destination-unreachable -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type source-quench -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type time-exceeded -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type parameter-problem -j ACCEPT
-A ufw-before-forward -p icmp --icmp-type echo-request -j ACCEPT
これらは私のデフォルトのファイルにありました。
もちろん、これが本当に問題であることを確認してください。私の問題は、pingしようとしているサーバーが存在するネットワークへのpingの送信をコンピューターがブロックしていることです。最終的には、すでにインターネット上にあるWebサイトを使用してpingを実行しました(例:https : //ping.eu/ping/)。
/etc/ufw/before.rulesファイルに次を追加します。
# allow outbound icmp
-A ufw-before-output -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
-A ufw-before-output -p icmp -m state --state ESTABLISHED,RELATED -j ACCEPT
ファイルを編集したら、次のコマンドを実行します。
sudo ufw reload