useradd 使用什么 PAM 服务名称?

useradd 使用什么 PAM 服务名称?

标题说明了一切,但为了表明我做了研究,我会说我昨天花了将近半天的时间来寻找这个问题的答案。

我曾经看到过一个页面,其中暗示 system-auth 正在被使用useradd,但是除了这句话之外,我没有看到任何令人信服的东西。

当然,我可以使用 PAM 通过程序来验证给定的用户pam_start( "system-auth" ) ;,但如何添加用户呢?

如果我不仅想使用 Active Directory 或 LDAP 访问我的 Linux 服务器,还想从该 Linux 服务器主动添加新用户(以 root 身份),该怎么办?

简单可行吗useradd jerry?它如何知道将 jerry 添加到 LDAP 而不是 /etc/passwd 和 /etc/shadow?

最好的是参考一篇我可以阅读的文章,而不是意见“我认为 system-auth 很好”或“你应该使用 passwd 服务名称”

提前谢谢你!——格雷格。

答案1

useradd 使用什么 PAM 服务名称?

它根本不使用 PAM 来查找系统身份验证服务。它使用 PAM 的唯一目的是对调用的用户useradd(而不是正在创建的用户帐户)进行身份验证。并且只有在编译为使用 setuid 和 PAM 时才会发生这种情况。

添加用户怎么样

PAM 不涉及用户或组管理(尽管名称具有误导性pam_acct_mgmt),只涉及身份验证。

如果我想使用 Active Domain,该怎么办

假设您指的是 Active Directory,它使用 LDAP 和 Kerberos 的组合,但 PAM 与 Kerberos 配合不佳。

或 LDAP

您必须使用ldapadd或其他一些 LDAP 感知工具。

最好能引用一篇我可以读的文章

我可以给你源代码至少。从src/useradd.c您可以跟踪对 的调用pw_update,该调用在 中定义lib/pwio.c,并看到全局passwd_db配置了宏PASSWD_FILE,该宏在 中默认为lib/defines.h/etc/passwd有类似的代码路径将其连接到/etc/shadow/etc/group/etc/gshadow

相关内容