【不正アクセス対策】fail2banのsshdとrecidiveの組み合わせが大変効果的と思う理由

【PR】
※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。

長期BANを行うrecidiveは該当IPに対して全てのポートをアクセス拒否にする

fail2banでrecidiveを有効にしておくと
デフォルトでは
ssh等で1日に5回失敗した場合に、1週間該当IPからのアクセスを拒否し続けるのですが、
きっかけとなったssh等だけではなく該当IPからのすべてのポートアクセスを拒否するようなので、攻撃に対して、大変効果的だと思います。実際、sshだけではなくrsyncdとか外のサービスも不正アクセス試行されますので。

実験してみた

試しに実験してみたところ、
sshd,ftp,httpを開けておいたサーバに対して
fail2banのsshdとrecidiveを有効にし、
WindowsからのTeratermでsshアクセスをわざと連続で失敗したところ、
4回まではsshアクセスは不可でも、ftp,httpアクセスはできましたが、
5回失敗してresidiveに登録されたとたん、sshだけではなく、ftpもhttpもアクセスできなくなりました。

手動で制限を解除する

手動解除はダイレクトのssh経由ではできませんが(拒否されてますからね)
拒否されていない、他のサーバ経由や実際の画面を開けるならそちらから
以下でできます。
拒否されていることを確認

fail2ban-client status sshd
[root@localhost ~]# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed: 1
|  |- Total failed:     30
|  `- Journal matches:  _SYSTEMD_UNIT=sshd.service + _COMM=sshd
`- Actions
   |- Currently banned: 1
   |- Total banned:     5
   `- Banned IP list: xxx.xxx.xxx.xxx ←目的のIPが拒否されていることを確認

sshの拒否を解除

fail2ban-client set sshd unbanip xxx.xxx.xxx.xxx

これだけだとftp,httpは拒否されたままなので

[root@localhost ~]# fail2ban-client status recidive
Status for the jail: recidive
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     5
|  `- File list:        /var/log/fail2ban.log
`- Actions
   |- Currently banned: 1
   |- Total banned:     2
   `- Banned IP list: xxx.xxx.xxx.xxx ←目的のIPが拒否されていることを確認

recidiveも解除

fail2ban-client set recidive unbanip xxx.xxx.xxx.xxx

Tips

Posted by admin