SSHへのログインアクセスのアタックが止まらんのでfail2banを導入。
firewalldとの連携でみすったので備忘録
インストール
$ sudo dnf install epel-release
$ sido dnf install firewalld
$ sudo dnf install fail2ban fail2ban-firewalld
設定
fail2banの方針として.confファイルはアップデートなどで上書きされることがあるのでデフォルトでから変えたい設定が有る場合はファイル拡張子.localとしてコピーもしくは新規作成してそちらのファイルで値を変更・追加する。
$ cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
$ vi /etc/fail2ban/jail.local
詰まったところ
firewalldでのポート指定
firewalldのrich-ruleでのポート指定方法は特定の番号かx-y
の範囲指定なので
fail2banでのデフォルトの範囲指定1:65535
ではだめっぽい
/etc/fail2ban/jail.local
[sshd]
enabled = true
port = 1-65535
[recidive]
enabled = true
port = 1-65535
banする際のrejectからdropに変える方法
dnfでインストールしたfail2ban-firewalld
で以下のファイルが読み込まれる
/etc/fail2ban/jail.d/00-firewalld.conf
[DEFAULT]
banaction = firewallcmd-rich-rules
banaction_allports = firewallcmd-rich-rules
banactionは/etc/fail2ban/action.d/firewallcmd-common.conf
なのでこちらの設定をlocalファイルを用意して値を変える
/etc/fail2ban/action.d/firewallcmd-common.local
[Init]
blocktype = DROP
rich-blocktype = drop
rich ruleを使っているのでblocktypeに加えてrich-blocktype
も設定する