iptables


記述内容

SSHなどでポート開放を行うと、ブルートフォースアタックを受けることになり、公開鍵認証でない場合はいずれか侵入される不安があります。
その際に有効なのが、iptablesによりhashlimitを使用して接続元からの接続回数にて接続を拒否する方法です。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -m hashlimit --hashlimit-name ssh_hashlimit --hashlimit-mode srcip --hashlimit 10/m --hashlimit-burst 10 --hashlimit-htable-expire 120000 -j ACCEPT
--hashlimit-name ssh_hashlimit     <-- hashlimitの設定の名称
--hashlimit-mode srcip             <-- 制限元を接続元のIPアドレスを指定
--hashlimit 10/m                   <-- 1分間に10回(10/hourは1時間に10回)
--hashlimit-burst 10               <-- 同一ホストからの最大接続回数を10回
--hashlimit-htable-expire 120000   <-- 単位はmsec。120秒。

管理ファイル

hashlimitの設定テーブルは下記ディレクトリのファイルに保存されています。

# ls /proc/net/ipt_hashlimit/

設定例

-A INPUT -p tcp -m multiport --dport 80,443 -m state --state NEW -m hashlimit --hashlimit-name web_limit --hashlimit 20/m --hashlimit-burst 200 --hashlimit-mode srcip --hashlimit-htable-expire 300000 -j ACCEPT




トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-06-30 (木) 01:40:11