web-dev-qa-db-ja.com

-A INPUT -j REJECT --reject-with icmp-Host-prohibited Iptables行は正確に何をしますか?

Redhat iptablesのドキュメントを読んでいますが、次の行で何ができるのかわかりません。

... -j REJECT **--reject-with icmp-Host-prohibited**   
... -j REJECT **--reject-with icmp-Host-prohibited** 
36
David

REJECTターゲットはパケットを拒否します。拒否するICMPメッセージを指定しない場合、サーバーはデフォルトで到達不能なICMPポート(タイプ3、コード3)を送り返します。

--reject-withは、この動作を変更して、特定のICMPメッセージを送信元ホストに送り返します。 --reject-withと利用可能な拒否メッセージに関する情報は man iptables にあります。

拒否

これは、一致したパケットへの応答としてエラーパケットを送り返すために使用されます。それ以外の場合は、DROPと同等であるため、TARGETを終了し、ルールトラバースを終了します。このターゲットは、INPUT、FORWARD、OUTPUTチェーン、およびこれらのチェーンからのみ呼び出されるユーザー定義チェーンでのみ有効です。次のオプションは、返されるエラーパケットの性質を制御します。

--reject-with type

指定できるタイプは次のとおりです。

  • icmp-net-unreachable
  • icmp-Host-unreachable
  • icmp-port-unreachable
  • icmp-proto-unreachable
  • icmp-net-prohibited
  • icmp-Host-prohibitedまたは
  • icmp-admin-prohibited(*)

適切なICMPエラーメッセージを返します(ポート到達不能がデフォルトです)。オプションtcp-resetは、TCPプロトコルにのみ一致するルールで使用できます。これにより、TCP RSTパケットが送り返されます。これは主に役立ちます壊れたメールホストにメールを送信するときに頻繁に発生するident(113/tcp)プローブをブロックします(それ以外の場合はメールを受け入れません)。

(*)icmp-admin-prohibitedをサポートしていないカーネルで使用すると、REJECTではなくプレーンDROPになります。

38
Chris Down