Qual nome do serviço PAM o useradd usa?

1

O título diz tudo, mas para mostrar que fiz minha pesquisa, direi que passei quase a metade do dia de ontem tentando encontrar a resposta para essa pergunta.

Eu encontrei uma página onde foi sugerido que o system-auth está sendo usado por useradd , mas exceto esta declaração, não vi nada convincente lá.

Certamente, posso usar o PAM para autenticar o usuário determinado por um programa usando pam_start( "system-auth" ) ; , mas e por que adicionar um usuário?

E se eu quisesse usar o Active Directory ou o LDAP não apenas para acessar meu servidor Linux, mas também ativamente adicionando desse servidor Linux (como root) novos usuários?

Seria simples useradd jerry funcionar? Como saberia adicionar jerry ao LDAP e não a / etc / passwd e / etc / shadow?

O melhor seria uma referência a um artigo que eu pudesse ler em vez de opinião "Eu acho que system-auth é bom" ou "você deveria usar o nome do serviço passwd"

Obrigado antecipadamente! - Greg.

    
por Grzegorz 01.07.2016 / 16:42

1 resposta

4

What PAM service name does useradd use?

Ele não usa o PAM para procurar o serviço de autenticação do sistema. A única coisa que usa o PAM é autenticar o usuário que está chamando useradd (não a conta de usuário que está sendo criada). E isso só acontece se foi compilado para usar o setuid e o PAM.

what about adding a user

O PAM não aborda o gerenciamento de usuários ou grupos (o nome enganoso de pam_acct_mgmt , não obstante), somente autenticação.

What if I wanted to use Active Domain

Assumindo que você quer dizer Active Directory, que usa uma combinação de LDAP e Kerberos, mas o PAM não funciona bem com o Kerberos.

or LDAP

Você terá que usar ldapadd ou alguma outra ferramenta compatível com LDAP.

The best would be a reference to an article I could read

Eu posso dar a você código-fonte pelo menos. A partir de src/useradd.c , você pode seguir a chamada para pw_update , definida em lib/pwio.c , e ver que a% globalpasswd_db está configurada com a macro PASSWD_FILE , cujo valor padrão é lib/defines.h a /etc/passwd . Existem caminhos de código semelhantes que o ligam a /etc/shadow , /etc/group e /etc/gshadow .

    
por 01.07.2016 / 23:16