
私は今RHCEを勉強し始めました。 PAM構成のトピックについて次の段落を見て、少し混乱しました/etc/pam.d/system-auth
。
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
~によるとPAMドキュメント、sufficient
これはスタックの残りの部分の処理が停止されることを意味します。この場合、3行目はログインしたユーザーのUIDを確認しません。
私の説明が正しいのか、それとも私が何かを間違って理解しているのでしょうか?
答え1
sufficient
ガイドライン制御ドメイン意味はpam_unix
報告が成功した場合この場合、スタックはすぐに成功を返します。失敗した場合pam_unix
(たとえば、ユーザーにパスワードがないか存在しない場合)、pam_succeed_if
この行は500未満のUIDを持つユーザーのログインをすぐに拒否します。最後に、既存のUnixメソッドで認証に失敗したUID ≥ 500のユーザーは、このスタックによって拒否されますが、呼び出しスタックによって承認される可能性があります(設定されている.rhosts
場合はrshd
このスタックを呼び出すなど)。言い換えれば:
if unix authentication ok then success
else if uid < 500 then fail hard
else fail (but allow caller to proceed)
sufficient
ネットワークベースの認証方法(NISやLDAPなど)は、通常、この行の前に行として追加されますpam_deny
。 UIDが500より大きい場合にのみネットワークアカウントを許可し、ローカル認証の優先順位を付与します。このように、NISまたはLDAPサーバーはシステムユーザーを提供することはできず、「実際の」ユーザー(通常は低いUIDがシステムユーザーである)のみを提供できます。また、ネットワークがダウンしても、ローカルアカウントを持つユーザーは引き続きログインできます。