SSH 経由のログイン失敗の検出と処理
UNIX システムに対するブルート フォース ベースの攻撃を防ぐために、 for Unix には、ホスト上のユーザ ログインの失敗を検出し、ユーザ ID を無効化する機能が用意されています。
capamsc141
UNIX システムに対するブルート フォース ベースの攻撃を防ぐために、
Privileged Access Manager
for UNIX には、ホスト上のユーザ ログインの失敗を検出し、ユーザ ID を無効化する機能が用意されています。 serevu
このトピックでは、SSH で発生したログインの失敗を検出および処理するように
Privileged Access Manager
を設定する方法について説明します。また、SSH 経由のログインの失敗が発生した場合の PAM (Pluggable Authentication Modules)、seosd
、serevu
間のデータ フローについても説明します。以下の手順に従います。
- PAM を使用するアプリケーション経由のログインの失敗を検出するようにモジュールを設定します。PAM は、UNIX フレーバーのデフォルト認証サブシステムです。serevuが PAM を使用できるようにするには、seos.ini 設定ファイルの以下のトークンを設定します。serevu[pam_seos]serevu_use_pam_seos = yes
- が認証用に PAM を使用するように設定するには、/etc/opt/ssh/sshd_config の以下のトークンを設定します。sshdUsePAM yesこの設定によって、sshdデーモンは、ログインの失敗が発生したことを PAM システムに通知できるようになります。
- Privileged Access Managerが sshd から受信した PAM シグナルをインターセプトするように設定するには、以下の行を /etc/pam.conf に追加します。sshd auth optional /usr/lib/security/pam_seos.sl
- ローカルseosdbは、sshdのloginapplレコードを保持します。Selang に以下の行を追加します。PAMSC> nr loginappl SSHD loginpath(/usr/sbin/sshd) loginseq(SGRP SUID) defaccess(x)これで、SSH クライアントで発生したログイン失敗を /opt/CA/PAMSC/log/pam_seos_failed_logins.log ファイルで検索できるようになります。この設定を実行すると、データ フローは以下のようになります。
- sshdは、ログインの失敗が発生したことを PAM に通知します。
- Privileged Access Managerは、この PAM シグナルをインターセプトし、pam_seos_failed_logins.log に情報を書き込みます。
- serevuは定期的にそのログをスキャンし、それに従って処理を行います。
- 各ユーザに許可される失敗ログイン回数は、seos.ini で設定できます。[serevu]def_fail_count = 3
- serevuがseload時に自動的に起動するようにするには、以下のコードを seos.ini に追加します。[daemons]<>serevu = yes