- blogs:
- cles::blog
遅ればせながらbrutessh対策
ssh iptablessshにブルートフォースアタックが来ていることはずいぶん前からわかっていたんですが、最近はいろいろと変種が登場しているようで、ログイン名の辞書が日本語になっていたりするものもあります。そんなアタックのログを微笑ましく見ていたんですが、そんな変種の中にはログイン試行回数がやたらと多いものがあるようで、デイリーのレポートメールの容量が数メガになってしまうようになりました。
これはさすがに笑えなくなってきたので対策をすることにしました。
† まず、下調べ
ちょっとググるとたくさん情報が出てきます。まとめサイトとしてはこの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が必要です→https://blog.cles.jp/item/1202
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
- SMARTEK デジタル温湿度計 (1)
- シャープの空気清浄加湿器の... (1)
2 . Word で数式がグレーアウトされていて挿入できないときは(15270)
3 . awk で指定した n カラム目以降を出力する(11793)
4 . アーロンチェアのポスチャーフィットを修理(11590)
5 . Windows 10 で勝手にログアウトされないようにする(9787)