web-dev-qa-db-ja.com

useraddはどのPAMサービス名を使用しますか?

タイトルにはすべてが書かれていますが、私が調査を行ったことを示すために、昨日はその質問の答えを見つけるためにほぼ半日を費やしたと言います。

System-authがuseraddによって使用されていることが示唆されたページに出くわしましたが、このステートメントを除いて、説得力のあるものは何もありませんでした。

確かに、PAMを使用して、pam_start( "system-auth" ) ;を使用するプログラムによって特定のユーザーを認証できますが、ユーザーを追加するのはどうでしょうか。

Active DirectoryまたはLDAPを使用してLinuxサーバーにアクセスするだけでなく、そのLinuxサーバーから(rootとして)新しいユーザーを積極的に追加したい場合はどうなりますか?

簡単だろうuseradd jerry働いた?/etc/passwdや/ etc/shadowではなくLDAPにジェリーを追加することをどのようにして知ることができますか?

「system-authは良いと思う」や「passwdサービス名を使うべきだ」という意見ではなく、私が読むことができる記事への参照が最善でしょう。

前もって感謝します! -グレッグ。

1
Grzegorz

UseraddはどのPAMサービス名を使用しますか?

PAMを使用してシステム認証サービスを検索することはまったくありません。 PAMを使用する唯一のことは、useraddを呼び出しているユーザーを認証することです(作成されているユーザーアカウントではありません)。そしてそれは、setuidとPAMを使用するようにコンパイルされた場合にのみ発生します。

ユーザーの追加はどうですか

PAMは、ユーザーまたはグループの管理(pam_acct_mgmtの誤解を招く名前にもかかわらず)には対応しておらず、認証のみに対応しています。

ActiveDomainを使用したい場合はどうなりますか

LDAPとKerberosの組み合わせを使用するActiveDirectoryを意味すると仮定しますが、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に接続する同様のコードパスがあります。

4
kbolino