タイトルにはすべてが書かれていますが、私が調査を行ったことを示すために、昨日はその質問の答えを見つけるためにほぼ半日を費やしたと言います。
System-authがuseradd
によって使用されていることが示唆されたページに出くわしましたが、このステートメントを除いて、説得力のあるものは何もありませんでした。
確かに、PAMを使用して、pam_start( "system-auth" ) ;
を使用するプログラムによって特定のユーザーを認証できますが、ユーザーを追加するのはどうでしょうか。
Active DirectoryまたはLDAPを使用してLinuxサーバーにアクセスするだけでなく、そのLinuxサーバーから(rootとして)新しいユーザーを積極的に追加したい場合はどうなりますか?
簡単だろうuseradd jerry
働いた?/etc/passwdや/ etc/shadowではなくLDAPにジェリーを追加することをどのようにして知ることができますか?
「system-authは良いと思う」や「passwdサービス名を使うべきだ」という意見ではなく、私が読むことができる記事への参照が最善でしょう。
前もって感謝します! -グレッグ。
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
に接続する同様のコードパスがあります。