Rocky LinuxでのPAM(Pluggable Authentication Modules)による認証管理ガイド

Rocky LinuxでのPAM(Pluggable Authentication Modules)による認証管理ガイド

この記事では、Rocky LinuxでPAMを使用して認証管理を行う方法について、詳細なステップを解説します。PAMを用いることで、システムの認証プロセスを柔軟かつセキュアに設定できます。

PAMの基礎知識と役割

PAM(Pluggable Authentication Modules)は、Unix/Linuxシステムで広く使用される認証フレームワークであり、サービスごとに異なる認証方法を容易に統合できます。

PAMの設定ファイルの構造理解

PAMの設定ファイルは通常/etc/pam.d/にあり、各サービス用のファイルが個別に存在します。設定ファイルはモジュールタイプ、制御フラグ、モジュールパス、引数の順で記述されています。

PAMモジュールの種類と用途

PAMにはいくつかのモジュールが存在し、それぞれの目的に応じて選ばれます。例えば、pam_unix.soは標準的なUnix認証を行い、pam_faildelay.soはログイン失敗時の遅延を設定します。

パスワード認証の強化

パスワード認証を強化するため、/etc/pam.d/system-authに以下の行を追加します。これにより、パスワードが簡単すぎる場合や一定以上長い期間が経過した際に規制をかけることができます。

password requisite pam_pwquality.so retry=3

ログイン試行回数の制限

不正なログイン試行を防ぐため、pam_tally2.soを利用します。例えば、以下の行を/etc/pam.d/loginに追加します。

auth required pam_tally2.so deny=5 unlock_time=900

これにより、5回連続で失敗したアカウントは15分間ロックされます。

二要素認証の設定

PAMを使用して二要素認証を設定することも可能です。ここではpam_google_authenticator.soを利用します。まず、パッケージをインストールし、ユーザーごとに初期設定を行います。

sudo dnf install google-authenticator
google-authenticator

特定ユーザーのアクセス制限

特定のユーザーに対してアクセスを制限するには、pam_access.soモジュールを使用します。/etc/security/access.confでルールを定義し、/etc/pam.d/sshdに追加します。

-:ALL EXCEPT localuser:ALL

設定変更のテストと検証

PAM設定を変更したら、必ずテスト環境で検証を行い、意図した通りに動作するかを確認します。また、syslog/var/log/secureでログを確認し、エラーがないことを確認することが重要です。

以上の手順により、Rocky LinuxにおいてPAMを使用した強力かつ柔軟な認証管理が可能になります。