pam_sss - Módulo PAM para SSSD
pam_sss.so [quiet] [forward_pass]
[use_first_pass] [use_authtok] [retry=N]
[ignore_unknown_user] [ignore_authinfo_unavail]
[domains=X] [allow_missing_name] [prompt_always]
[try_cert_auth] [require_cert_auth]
[allow_chauthtok_by_root]
pam_sss.so é a interface do PAM para o System
Security Services daemon (SSSD). Erros e resultados são registados
através do syslog(3) com a habilidade LOG_AUTHPRIV.
quiet
Suprime mensagens de relatório para utilizadores
desconhecidos.
forward_pass
Se forward_pass for definida a palavra passe
inserida é colocada na pilha para ser usada por outros módulos
PAM.
use_first_pass
O argumento use_first_pass força o módulo a
usar uma palavra passe de módulos empilhada previamente e nunca
irá pedir ao utilizador - se nenhuma palavra passe estiver
disponível ou se a palavra passe não for apropriada, será
negado o acesso ao utilizador.
use_authtok
Quando o mudar de palavra passe força o
módulo a definir a nova palavra passe para aquela fornecida por um
módulo de palavra passe empilhada previamente.
retry=N
Se especificada é pedida ao utilizador outras N
vezes por uma palavra passe se a autenticação falhar. A
predefinição é 0.
Por favor note que esta opção pode não
funcionar como esperado se a aplicação que chama o PAM lidar
por si própria com o diálogo com o utilizador. Um exemplo
típico é sshd com PasswordAuthentication.
ignore_unknown_user
Se esta opção for especificada e o
utilizador não existir, o módulo PAM irá retornar
PAM_IGNORE. Isto faz a estrutura do PAM ignorar este módulo.
ignore_authinfo_unavail
Especifica que o módulo PAM deve retornar
PAM_IGNORE se não puder contactar o daemon do SSSD. Isto faz a
estrutura do PAM ignorar este módulo.
domains
Permite ao administrador restringir os domínios a
que um serviço PAM particular tem permissão de se autenticar. O
formato é uma lista separada por vírgulas de nomes de
domínio SSSD, como especificada no ficheiro sssd.conf.
NOTA: Se isto for usado para um serviço que não
corre como utilizador root, ex. um servidor web, tem de ser usado em
conjunto com as opções “pam_trusted_users” e
“pam_public_domains”. Por favor veja o manual
sssd.conf(5) para mais informação sobre estas duas
opções do respondedor PAM.
allow_missing_name
O principal objectivo desta opção é
deixar o SSSD determinar o nome de utilizador baseando-se em
informação adicional, por ex, o certificado a partir de um
Smartcard.
O caso de utilização actual são gestores de
login que conseguem monitorizar um leitor Smartcard para eventos de
cartão. No caso de um Smartcard ser inserido o gestor de login
irá chamar a pilha PAM que inclui uma linha como
auth sufficient pam_sss.so allow_missing_name
Neste caso o SSSD irá tentar determinar o nome de
utilizador baseando-se no conteúdo do Smartcard, retorna-o para
pam_sss o qual irá finalmente coloca-lo na pilha do PAM.
prompt_always
Pede sempre ao utilizador por credenciais. Com esta
opção as credenciais pedidas por outros módulos PAM,
tipicamente uma palavra passe, serão ignoradas e o pam_sss irá
incitar as credenciais outra vez. Com base na resposta de
pré-autorização dada pelo SSSD o pam_sss pode pedir uma
palavra passe, um PIN de Smartcard ou outras credenciais.
try_cert_auth
Tenta usar autenticação baseada em
certificado, isto é, autenticação com um Smartcard ou
dispositivos semelhantes. Se um Smartcard estiver disponível e o
serviço for permitido para autenticação por Smartcard o
utilizador será incitado por um PIN e a autenticação
baseada em certificado irá continuar
Se nenhum Smartcard estiver disponível ou a
autenticação baseada em certificado não seja permitida
para o serviço actual será retornado PAM_AUTHINFO_UNAVAIL.
require_cert_auth
Faz autenticação baseada em certificado,
isto é, autenticação com Smartcard ou dispositivo
semelhante. Se um Smartcard não estiver disponível o utilizador
será incitado a inserir um. O SSSD irá esperar pelo Smartcard
até ao tempo limite definido por p11_wait_for_card_timeout, por favor
veja
sssd.conf(5) para detalhes.
Se nenhum Smartcard estiver disponível após o tempo
limite ou a autenticação baseada em certificado não
seja permitida para o serviço actual será retornado
PAM_AUTHINFO_UNAVAIL.
allow_chauthtok_by_root
Por predefinição a acção PAM
chauthtok irá fazer curto-circuito para retornar PAM_SUCCESS quando
pam_sss.so é invocado pelo utilizador root.
Esta opção desativa este comportamento permitindo
altera testemunhos de autenticação quando se corre como
root.
São disponibilizados todos os tipos de módulos
(account, auth, password e session).
Se o respondedor PAM do SSSD não estiver a correr, ex. se o
socket do respondedor PAM não estiver disponível, o pam_sss
irá retornar PAM_USER_UNKNOWN quando chamado como módulo
account para evitar problemas com utilizadores de outras fontes
durante o controlo de acesso.
PAM_SUCCESS
A operação do PAM terminou com
sucesso.
PAM_USER_UNKNOWN
O utilizador não é conhecido pelo
serviço de autenticação ou o respondedor PAM do SSSD
não esta a correr.
PAM_AUTH_ERR
Falha de autenticação. Também pode
ser retornado quando existir um problema com a obtenção do
certificado.
PAM_PERM_DENIED
Permissão negada. Os ficheiros de relatório
do SSSD podem conter informação adicional acerca do erro.
PAM_IGNORE
Veja as opções ignore_unknown_user e
ignore_authinfo_unavail.
PAM_AUTHTOK_ERR
Incapaz de obter o novo testemunho de
autenticação. Também pode ser retornado quando o
utilizador se autenticar com certificados e estiverem disponíveis
múltiplos certificados, mas a versão instalada do GDM não
suporta a selecção de múltiplos certificados.
PAM_AUTHINFO_UNAVAIL
Incapaz de aceder à informação de
autenticação. Isto pode ser devido a uma falha de rede ou de
hardware.
PAM_BUF_ERR
Ocorreu um erro de memória. Também pode ser
retornado quando as opções use_first_pass ou use_authtok foram
definidas, mas nenhuma palavra passe foi encontrada a partir do módulo
PAM previamente empilhado.
PAM_SYSTEM_ERR
Ocorreu um erro do sistema. Os ficheiros log do SSSD
podem conter informação adicional acerca do erro.
PAM_CRED_ERR
Incapaz de definir as credenciais do utilizador.
PAM_CRED_INSUFFICIENT
A aplicação não tem credenciais
suficientes para autenticar o utilizador. Por exemplo, PIN em falta durante
autenticação por smartcard ou factor em falta durante
autenticação de dois-factores.
PAM_SERVICE_ERR
Erro em módulo de serviço.
PAM_NEW_AUTHTOK_REQD
O testemunho de autenticação do utilizador
expirou.
PAM_ACCT_EXPIRED
A conta do utilizador expirou.
PAM_SESSION_ERR
Incapaz de obter regras IPA Desktop Profile ou
informação do utilizador.
PAM_CRED_UNAVAIL
Incapaz de obter credenciais de utilizador do
Kerberos.
PAM_NO_MODULE_DATA
Nenhum método de autenticação
encontrado pelo Kerberos. Isto pode acontecer se o utilizador tiver uma
Smartcard assinada mas o plugin pkint não está disponível
no cliente.
PAM_CONV_ERR
Falha de conversação.
PAM_AUTHTOK_LOCK_BUSY
Nenhum KDC apropriado disponível para
mudança de palavra passe.
PAM_ABORT
Chamada PAM desconhecida.
PAM_MODULE_UNKNOWN
Tarefa ou comando PAM não suportado.
PAM_BAD_ITEM
O módulo de autenticação não
é capaz de lidar com credenciais Smartcard.
Se um reset de palavra passe pelo root falhar, porque o provedor
SSSD correspondente não suporta resets de palavras passe, pode ser
mostrada uma mensagem individual. A mensagem pode, por exemplo, conter
instruções sobre como fazer reset à palavra passe.
A mensagem é lida do ficheiro pam_sss_pw_reset_message.LOC
onde LOC significa uma string de locale retornado por setlocale(3).
Se não existir ficheiro correspondente é mostrado o
conteúdo de pam_sss_pw_reset_message.txt. O root tem de ser o dono
dos ficheiros e apenas o root pode ter permissões de leitura e
escrita enquanto todos os outros utilizadores só podem ter
permissões de leitura.
Estes ficheiros são procurados no directório
/etc/sssd/customize/NOME_DOMÍNIO/. Se não estiver presente
nenhum ficheiro correspondente, é mostrada uma mensagem
genérica.
sssd(8), sssd.conf(5), sssd-ldap(5),
sssd-ldap-attributes(5), sssd-krb5(5), sssd-simple(5),
sssd-ipa(5), sssd-ad(5), sssd-idp(5),
sssd-sudo(5), sssd-session-recording(5), sss_cache(8),
sss_debuglevel(8), sss_obfuscate(8), sss_seed(8),
sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(1),
sss_ssh_knownhosts(1), sssd-ifp(5), pam_sss(8).
sss_rpcidmapd(5)