Não confunda o nssswitch e o PAM. Não é o mesmo:
/etc/nsswitch.conf
é um arquivo de configuração para configurar, onde o sistema deve obter seus bancos de dados. Databses para usuários, grupos, senhas, pesquisas de DNS e assim por diante. Por exemplo, quando você altera o proprietário ( chown
) ou as permissões ( chmod
) de um arquivo. Então o sistema precisa saber como os uids e gids devem ser interpretados; dos arquivos ( /etc/passwd, /etc/shadow, /etc/group
) ou de um servidor LDAP (ou ambos) ou de outro serviço (NIS, AD, Kerberos). Também relacionado a nsswitch é a prioridade no caso de entradas dublicadas.
PAM é um componente que define, o que na autenticação, alteração de senha ou início de sessão deve acontecer. O PAM concede ou nega o acesso. Monta o sistema de arquivos que precisa ser montado em um login de usuário ( pam_mount.so
), scripts de login de execs ( pam_exec.so
), autentica sobre o método unix ( pam_unix.so
) ou via LDAP ( pam_ldap.so
). Ele passa a senha fornecida pelo usuário de módulo para módulo e (no entanto configurado) os módulos podem quebrar a pilha ou não. Isso termina em uma autenticação bem-sucedida ou malsucedida.