pam_faillock モジュールを有効にした後にログインできない

pam_faillock モジュールを有効にした後にログインできない

私はUbuntu 20.04 LTSを実行しています。pam_faillockファイルに次の2行を追加してモジュールを有効にしました/etc/pam.d/common-auth

auth     [default=die]  pam_faillock.so authfail                           
auth     sufficient     pam_faillock.so authsucc

以下に次の行を追加します。

auth  [success=2 default=ignore]   
pam_unix.so nullok

上:

auth  [success=1 default=ignore]  
psm_sss.so use_first_pass

/etc/pam.d/common-auth私の変更は以下に投稿され、コメントアウトされています。

# here are the per-package modules (the "Primary" block)
auth    [success=2 default=ignore]  pam_unix.so nullok
#auth    [default=die]               pam_faillock.so authfail
#auth    sufficient                  pam_faillock.so authsucc
auth    [success=1 default=ignore]  pam_sss.so use_first_pass
# here's the fallback if no module succeeds
auth    requisite           pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required            pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional            pam_cap.so 
auth    required  pam_faildelay.so delay=4000000
# end of pam-auth-update config

この行を追加した後、次の行のコメントを外しました。/etc/security/faillock.conf

audit
silent
deny = 3
fail_interval = 900
unlock_time = 0

これらの変更後に再起動し、再起動後にログインしようとしたときにパスワードが間違っているというメッセージが表示されました。 (はい、これが悪いパスワードではないことを確認しました。)私はこの分野で最も強力な人ではなく、何が起こるのかわかりません。

ベストアンサー1

私はあなたの行のコメントを削除し、現在正しいと思われる場所に配置しました。認証フローを修正するために、他の1〜2行も移動しました。

# here are the per-package modules (the "Primary" block)
auth    [success=4 default=ignore]  pam_unix.so nullok
auth    [success=3 default=ignore]  pam_sss.so use_first_pass
auth    [default=die]               pam_faillock.so authfail
auth    required                    pam_faildelay.so delay=4000000
# here's the fallback if no module succeeds
auth    requisite                   pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth    required                    pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth    optional                    pam_cap.so 
auth    sufficient                  pam_faillock.so authsucc
# end of pam-auth-update config

また、最初の2auth行も変更しました。[success=N]PAMに成功時にNルールをスキップするように指示し、成功はからpam_unixまたはにpam_sssジャンプしpam_permit、失敗した場合pam_faillockpam_faildelayおよびに移動するように指示しますpam_deny

pam_faillockまだインストールしていないためテストできません。したがって、これをテストする前に、システムでルートシェルを開き、PAM設定ファイルを変更する以外に触れないでください。

2番目のターミナルセッションを使用して、ログインなどを試して動作するかどうかをテストします。

それ以外の場合は、変更を元に戻す準備ができた最初のセッションを開きます。設定が正しいことを確認するまで、このセッションを閉じないでください。

おすすめ記事