💭

AlmaLinuxにおけるFail2banについて

に公開

Fail2banってなに?

こんにちは、今回は** AlmaLinux 9.5 **におけるセキュリティ強化の一環として、Fail2banの導入と基本的な設定方法について紹介します。

Fail2banは、ログファイルを監視して不正アクセスを検知し、一定回数失敗したIPを自動でBAN(遮断)してくれる便利なツールです。


Fail2banとは?

Fail2banは以下のような特徴を持つセキュリティツールです:

  • ログファイルを監視し、不正アクセスを検出
  • iptablesやfirewalldと連携してIPを自動ブロック
  • SSH、Apache、Postfixなど多くのサービスに対応
  • 柔軟な設定と拡張性

インストール手順(以下設定はrootユーザーで行ってください)

1.EPEL リポジトリの有効化

Fail2ban は EPEL リポジトリから提供されているため、まずはリポジトリを追加します。

dnf install epel-release -y

2.Fail2banのインストール

dnf install fail2ban -y

3.サービスの起動と自動起動設定

systemctl enable --now fail2ban

基本設定

Fail2banの設定ファイルは /etc/fail2ban 以下にあります。

1.設定ファイルのコピー

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.d/jail.local

2.jail.localの編集

vi /etc/fail2ban/jail.d/jail.local

以下のように編集します:

[DEFAULT]
ignoreip = 127.0.0.1/8 ::1 192.168.0.0/16
bantime  = 1h
findtime  = 10m
maxretry = 5

[sshd]
enabled = true
port    = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s

状態確認と操作

Fail2banの状態確認や操作はfail2ban-clientコマンドで行います。

現在のステータス確認

fail2ban-client status

SSH Jailの詳細確認

fail2ban-client status sshd

IPの手動ブロック/解除

fail2ban-client set sshd banip 192.168.1.1
fail2ban-client set sshd unbanip 192.168.1.1

ログの確認

Fail2ban のログは以下に出力されます:

/var/log/fail2ban.log

テストとカスタマイズ

Fail2ban には多くのフィルターが用意されており、Apache や Postfix、MySQL などのログにも対応可能です。必要に応じて /etc/fail2ban/filter.d/ 以下のフィルターをカスタマイズしてみましょう。


まとめ

Fail2ban を導入することで、SSH をはじめとしたサービスへの不正アクセスを自動で防ぐことができます。AlmaLinux 9.5 のような安定したサーバー環境において、Fail2ban は非常に有効なセキュリティ対策の一つです。

Discussion