Armazenamos nossos usuários no LDAP, ao lado de alguns grupos que têm significado em diferentes sistemas (inclusive funções organizacionais wheel
). Também existem grupos locais nas estações de trabalho, por exemplo, audio
ou video
que não são desejáveis para serem inseridos no LDAP. Agora, se eu fizer login localmente, recebo esses grupos locais, mas se eu fizer login via SSH na mesma máquina, não os tenho. É claro que eles voltam, se eu usar su
logo depois. Posso estar no caminho errado, mas suspeito de PAM.
Entradas relevantes de nsswitch.conf
passwd: compat ldap
shadow: compat ldap
group: compat ldap
Quanto ao pam, sempre a linha de autenticação, mas as outras linhas são as mesmas
/etc/pam.d/sshd
auth include system-remote-login
/etc/pam.d/system-remote-login
(idêntico ao que system-local-login
devo acrescentar)
auth include system-login
/etc/pam.d/system-login
auth required pam_tally2.so onerr=succeed
auth required pam_shells.so
auth required pam_nologin.so
auth include system-auth
auth optional pam_gnome_keyring.so
account required pam_access.so
account required pam_nologin.so
account include system-auth
account required pam_tally2.so onerr=succeed
password include system-auth
password optional pam_gnome_keyring.so
session optional pam_loginuid.so
session required pam_env.so
session optional pam_lastlog.so
session include system-auth
session optional pam_gnome_keyring.so auto_start
session optional pam_motd.so motd=/etc/motd
session optional pam_mail.so
/etc/pam.d/su
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid
auth include system-auth
account include system-auth
password include system-auth
session include system-auth
session required pam_env.so
session optional pam_xauth.so
/etc/pam.d/common-auth:
auth required pam_group.so use_first_pass
Qual poderia ser o problema e como eu o solucionaria? Fico feliz em fornecer outras informações necessárias.
/etc/nsswitch.conf
aparênciagroup
? Qual é a saída degetent YOURUSERNAME
? O seu/etc/pam.d/sshd
@ inclui common- {session, auth, password, account}?Respostas:
Tomei coragem hoje e finalmente resolvi. A cadeia pam funciona assim
/etc/pam.d/sshd
inclui:/etc/pam.d/system-remote-login
isso inclui:/etc/pam.d/system-login
isso inclui:/etc/pam.d/system-auth
que tem um requisito opcionalAparentemente, a última inclusão não funciona por algum motivo. A razão pela qual eu estava tão confusa até agora foi que eu confiei que essas inclusões funcionariam, o que não era o caso. Se alguém puder explicar por que eu ficaria muito grato. Eu sei disso porque se eu adicionar a linha
para o
/etc/pam.d/system-login
então funciona.fonte
O programa de login (que configura seu ambiente, incluindo UID, GID e grupos suplementares) obtém dados de nome de usuário <--> UID, GID e os grupos suplementares aos quais o nome de usuário pertence, de algum tipo de banco de dados. Tradicionalmente dos arquivos / etc / passwd e / etc / groups, hoje também do LDAP. Dependendo da fonte de dados, os grupos que você recebe podem variar.
Cuidado, se diferentes fontes forem misturadas, você poderá muito bem acabar com uma conta com o mesmo nome, mas com UIDs diferentes (o sistema realmente usa UID internamente) ou com diferentes conjuntos de grupos. O resultado é normalmente muito divertido para o espectador casual, enquanto leva à calvície prematura devido à extensa cabeleireira para os responsáveis. (Esteve lá.)
fonte
Into
nsswitch.conf
:afaik isso chama getgrent, que obtém os grupos (entradas de grupo)
EDIT: outra coisa é adicionar o seguinte a
/etc/pam.d/common-auth
:para obter mais informações, dê uma olhada aqui: Atribua grupos locais aos usuários e talvez esse novo grupo -e-grupos-atribuído-por-pam-grupo-so
fonte
pam-auth-update
e reiniciou o nscd?Eu tive um problema quase semelhante: ao fazer o login usando ssh, alguns grupos estavam ausentes. Foi resolvido alterando /etc/nsswitch.conf:
fonte