Sshポートに対するブルートフォース攻撃を防ぐためにどのツールまたはテクニックを使用しますか。私はセキュリティログで、sshを介してさまざまなユーザーとして何百万回もログインしようとしていることに気付きました。
これはFreeBSDの箱にありますが、どこにでも適用できると思います。
これが、Rainer Wichmannによる その件に関する良い投稿 です。
それを行うためのこれらの方法の長所と短所を説明します:
私はfail2banを使用します。これは、構成可能な時間にわたって数回の試行が失敗した後にIPをロックアウトします。
これとパスワード強度テスト(john(John the Ripper)を使用)を組み合わせて、ブルートフォース攻撃が成功しないことを確認します。
あなたができる小さなことは、DenyHostsのようなものを使うことです:
http://denyhosts.sourceforge.net/
組み込みのhosts.allow/hosts.denyを使用して、SSHの乱用をブロックします。
これらの攻撃を回避する最も簡単な方法の1つは、sshdが待機するポートを変更することです。
Chrisが指摘するように、パスワードの代わりに暗号化キーを使用してください。
それに追加:
パブリックssh接続に実際にアクセスする必要があるのは、フローティングパブリックIPを使用する人または場所の数です。
維持しているパブリックsshホストの数と、一般的な接続基準を絞り込むことができるかどうかに応じて、いくつかの外部ホストへのアクセスを制限する方が、シンプルでメンテナンス可能な構成になる場合があります。
これで問題が解決した場合は、管理のオーバーヘッドを本当に簡略化できます。
他の優れた提案に加えて、本当に簡単なことの1つは、着信接続のレート制限です。 IPごとに1分あたり3接続に制限:
iptables -A INPUT -p tcp --dport 22 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 3/min --limit-burst 3 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
Sshd_configの「AllowUsers」オプションを使用して、少数のユーザーのみがログインできるようにします。他のユーザーは、ユーザー名とパスワードが正しい場合でも拒否されます。
ユーザーをログインに制限することもできますfrom特定のホスト。
例えば。、
AllowUsers user1 [email protected]
これにより、検索スペースが減り、誤って横に置かれたり、有効にされたりした古いユーザーを避けることができます(もちろん、これらのユーザーを無効にする必要がありますが、SSHベースのエントリに使用されないようにする簡単な方法です)。
これはブルートフォース攻撃を完全に阻止するものではありませんが、リスクの軽減に役立ちます。
そのようなものをPFで使用します。
テーブル<ssh-brute>持続
ラベルssh_bruteからのクイックログでブロック
$ ext_if proto tcpを($ ext_if)ポートに渡すssh変調状態\
(max-src-conn-rate 3/10、オーバーロードフラッシュグローバル)
Port-knocking は、この種のものを排除するためのかなり確実な方法です。少し手間がかかり、時には煩わしいこともありますが、問題が解決することは間違いありません。
シェルバンのレート制限の提案 に加えて、遅延の長さが重要です。ログイン試行3回のグループ間の遅延を2分から20分に増やすことで、ログイン試行が3回を超えた異なるIPアドレスの数が減少し、1台のマシンで2週間の期間を44回から3回に比較。これらの3つのアドレスのいずれも、11時間以上試行を続けていませんでした。
非常に逸話的ですが、auth.logは私にとってずっと読みやすくなりました...
コンテキストは重要ですが、次のようなものをお勧めします。
気にしない。彼らは港でベルトを脱がせてください、彼らはキーをブルートフォースするつもりはありません。
oSSECをインストールします。ログインの繰り返しを監視するだけでなく、問題のあるIPのiptablesを含む一時ブロックに入ります。そして最後に、詳細を記載したレポートを送信します。すべてをログに記録します。これはニースです。 Somoneはかつて8000を超えるログイン名でログインを試みました。私はログを解析し、ニースのユーザーリストを取り除きました;)