BLOGTIMES
2005/12/15

遅ればせながらbrutessh対策

  ssh  iptables 
このエントリーをはてなブックマークに追加

sshにブルートフォースアタックが来ていることはずいぶん前からわかっていたんですが、最近はいろいろと変種が登場しているようで、ログイン名の辞書が日本語になっていたりするものもあります。そんなアタックのログを微笑ましく見ていたんですが、そんな変種の中にはログイン試行回数がやたらと多いものがあるようで、デイリーのレポートメールの容量が数メガになってしまうようになりました。

これはさすがに笑えなくなってきたので対策をすることにしました。

まず、下調べ

ちょっとググるとたくさん情報が出てきます。まとめサイトとしてはこの2つが情報がまとまっていて見やすいです。

これらのサイトを参考に検討した結果、ログをスキャンする形式のものだと、かなり頻繁にログをスキャンしないといけなさそうなので、iptablesを使って短時間に一定以上の接続をしようとするとブロックすることにしました。

具体的なスクリプトは「(ひ)メモ - ipt_recent」を参考に多少カスタマイズ*1して使っています。

sshdの設定

いろいろ調べていてsshって複数のポートをlistenできることを初めて知りました。

[ssh:00251] Re: FYI: SSHサーバーへの攻撃が増加傾向,侵入後はフィッシング・サイトに悪用も

sshd は複数のポートを同時に listen できるので、sshd_config に
Port 22
Port XXX
のように Port を 2個書きます。

ipt_recentを使う方法だと、プロトコルのステートを認識していないのでsshdの認証結果と関係なく(つまり、sshにちゃんとログインできた場合であっても)一定時間に一定回数以上ログインをするとサーバから接続拒否をされるようになってしまいます。

そのため、この設定を使って標準ポートでない方はipt_recentの制限をかけないように設定してみました。これでたくさんコンソールを開かなくてはならないような作業でも大丈夫ですね。しばらくこの設定で様子見をしようと思います。

  • *1: 諸般の事情によりアクセス禁止にしているネットワークがあるので。

トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/1202
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form

コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。

OpenID を使ってログインすることができます。

Identity URL: Yahoo! JAPAN IDでログイン