ユーザー認証およびパスワード・ポリシーの構成

従来のデジタル・アイデンティティ・ポリシーに従う場合、Pluggable Authentication Module (PAM)機能を使用して、パスワードの複雑さ、長さ、経過期間、有効期限、前のパスワードの再利用を決定するルールを含む強力なユーザー認証およびパスワード・ポリシーを実施できます。ログイン試行に何回も失敗した後、通常の勤務時間後、または同時セッションが多数開かれている場合に、ユーザー・アクセスをブロックするようPAMを構成できます。これらのポリシーの一部は、パスワードの保存時または更新時にユーザーが適切でないセキュリティ・プラクティスを実装できるようになるため、セキュリティにとって有用ではなくなることに注意してください。詳細は、https://pages.nist.gov/800-63-3/sp800-63-3.htmlを参照してください。

PAMは様々なモジュールおよびカスタマイズ可能なパラメータが使用されているため、高度にカスタマイズできます。たとえば、デフォルトのパスワード整合性チェック・モジュールpam_pwquality.soはパスワードの強度をテストします。PAM構成ファイル(/etc/pam.d/system-auth)には、パスワードの強度をテストするための次のデフォルト・エントリが含まれます。
password    requisite    pam_pwquality.so local_users_only retry=3 authtok_type= enforce_for_root
password    requisite    pam_pwhistory.so use_authtok enforce_for_root remember=4
password    sufficient   pam_unix.so sha512 shadow use_authtok enforce_for_root remember=4
password    sufficient   pam_sss.so use_authtok
password    required     pam_deny.so

pam_pwquality.soの行では、適切なパスワードを選択するために3回試行できることが定義されています。モジュールのデフォルト設定では、パスワード長は最小6文字で、そのうち3文字は前のパスワードと同じにできません。このモジュールは、/etc/passwdファイルで定義されているユーザーのパスワードの品質のみをテストします。

pam_unix.soの行は、新しいパスワードの入力を求める前にスタックで指定された古いパスワードをモジュールがテストし、SHA-512パスワード・ハッシュと/etc/shadowファイルを使用してアクセスを決定することを指定します。pam_pwqualityでは、/etc/passwdファイルに定義されているユーザーに対して、そのようなチェックが実行されます。

制御フラグとモジュール・パラメータを構成して、ユーザーがパスワードを変更するときに実行されるチェックを変更できます:

password  required  pam_pwquality.so retry=3 minlen=8 difok=5 minclass=-1
password  required  pam_unix.so use_authtok sha512 shadow remember=5
password  required  pam_deny.so

pam_pwquality.soの行では、ユーザーは適切なパスワードの選択を3回試行できます。パスワードは最小8文字で、そのうち5文字は前のパスワードと異なる必要があり、大文字、小文字、数字および特殊文字を少なくとも1つずつ使用する必要があることを指定しています。

pam_unix.soの行では、モジュールではパスワード・チェックを実行せず、SHA-512パスワード・ハッシュと/etc/shadowファイルを使用し、各ユーザーの過去5つのパスワードに関する情報を/etc/security/opasswdファイルに保存することを指定しています。

詳細は、pam_deny(8)pam_pwquality(8)およびpam_unix(8)の各マニュアル・ページを参照してください。