Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

【後で読む】fail2ban rejectとdropの切り替え

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!

iptablesはDROPすべきか、REJECTか。tcp-resetという手も – nomeu.net

iptablesは DROP , REJECT or –reject-with tcp-rest – Note to Self

REJECT –reject-with tcp-reset

【AIによる回答】

REJECT --reject-with tcp-reset は、iptables で通信を拒否する際に、相手に対して「TCP RST(リセット)パケット」を返信するためのオプションです。
1. 主な動作と特徴
  • 即時切断: 通常の REJECT(デフォルトは ICMP port-unreachable)や DROP(応答なし)とは異なり、接続元に対して「このポートは閉じている」という明確な信号(RSTパケット)を送ります 0.4.12
  • Connection Refused: クライアント側では「Connection refused」というエラーが即座に表示され、タイムアウトを待たずに済みます 0.4.20
  • 隠蔽性DROP が「フィルタリングされている(Firewallがある)」ことを示唆するのに対し、tcp-reset は「サービスが動いていないポート」と同じ振る舞いをするため、Firewallの存在を特定されにくくする効果があります 0.4.8
2. 設定例
このオプションは TCPプロトコルに対してのみ 使用可能です 0.4.2
bash
# 22番ポート(SSH)への接続をTCPリセットで拒否する
iptables -A INPUT -p tcp --dport 22 -j REJECT --reject-with tcp-reset
コードは注意してご使用ください。

 

3. 使い分けのポイント
ターゲット 相手への応答 メリット デメリット
DROP なし(黙殺) 攻撃者のスキャン時間を浪費させる 正規ユーザーもタイムアウトまで待たされる
REJECT (ICMP) ICMPエラー ネットワーク的に「拒否」が明確 Firewallの存在が露呈しやすい
tcp-reset TCP RST ポートが閉じているように見せかけられる TCP以外の通信には使えない
特定のポート(Identなど)へのスキャンを静かに、かつ速やかに処理したい場合に非常に有効な設定です 0.4.25
タイトルとURLをコピーしました