secureログを見ていると結構SSHにアタックされている。
adminとかwebとかoracleとかありそうなIDを試しているようだ。
中には、辞書を使って、a~z まで試していくやからも存在する。
一応、challenge passwordを認めていないので大丈夫だとおもうが、設定ミスなど万が一を考えると、相手に試すチャンスを与えないほうがよいはず。
これまでは、IPをチェックし、whoisで確認。CNやAUなど外国のIPだったら、そのIPブロックごと、iptablesで遮断するようにしていた。
それもだんだん、面倒になってきたので、ここで対策。
いろいろ調べたところ、ツールもいくつかありましたが、iptablesで出来る対策を見つけたので試してみる。
こちらhttp://honoo-no.com/creators/2008/12/09_213321.htmlを参考にさせていただいた。
/etc/sysconfig/iptablesのSSHのところに以下の2行を追加。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -m recent --set --name SSH
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP
-m recent --set --name SSH
で、記録を作成し、
-m recent --update --seconds 60 --hitcount 8 --rttl --name SSH -j DROP
で、1分間に8回のアクセス(新規接続)があった場合に遮断するらしい。
設定したばかりで効果はわかりませんが、何か進展があれば後日。
