PAM_SSS_GSS(8)

NAME
pam_sss_gss - Módulo PAM para autenticação GSSAPI do SSSD

SYNOPSIS

pam_sss_gss.so [debug]

DESCRIÇÃO

pam_sss_gss.so autentica o utilizador sobre GSSAPI em cooperação com o SSSD.

Este módulo irá tentar autenticar o utilizador usando nome de serviço baseado-em-maquina do GSSAPI host@hostname o que traduz para host/hostname@REALM principal do Kerberos. A parte REALM do nome principal Kerberos é derivada pelos mecanismos internos do Kerberos e pode ser definida explicitamente na configuração da secção [domain_realm] em /etc/krb5.conf.

SSSD é usado para fornecer o nome de serviço desejado e para validar as credenciais do utilizador usando chamadas GSSAPI. Se o bilhete de serviço já estiver presente na cache de credenciais do Kerberos ou o bilhete do utilizador puder ser usado para obter o bilhete do serviço correto então o utilizador será autenticado.

Se pam_gssapi_check_upn for True (predefinição) então o SSSD requer que as credenciais usadas para obter o bilhete de serviço possam ser associadas com o utilizador. Isto significa que o principal que possui as credenciais Kerberos tem de corresponder ao nome principal do utilizador como definido em LDAP.

Para activar a autenticação GSSAPI no SSSD, defina a opção pam_gssapi_services em [pam] ou secção domain do sssd.conf. As credenciais de serviços precisam de ser guardadas na keytab do SSSD (já está presente se usar o provedor ipa ou ad). A localização da keytab pode ser definida com a opção krb5_keytab. Veja sssd.conf(5) e sssd-krb5(5) para mais detalhes sobre estas opções.

Alguns desenvolvimentos Kerberos permitem associar indicadores de autenticação com um método particular de pré-autenticação usado para obter um bilhete de concessão de bilhete pelo utilizador. O pam_sss_gss.so permite forçar a presença de indicadores de autenticação nos bilhetes de serviço antes de que se possa aceder a um serviço particular do PAM.

Se a opção pam_gssapi_indicators_map estiver definida em [pam] ou secção domain do sssd.conf, então o SSSD irá executar uma verificação da presença de quaisquer indicadores configurados no bilhete de serviço.

OPÇÕES

debug
    Escreve informação de depuração.

TIPOS DE MÓDULOS FORNECIDOS

Apenas se o tipo de módulo auth for fornecido.

VALORES DE RETORNO

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 a autenticação GSSAPI não é suportada.

PAM_AUTH_ERR
    Falha de autenticação.

PAM_AUTHINFO_UNAVAIL
    Incapaz de aceder à informação de autenticação. Isto pode ser devido a uma falha de rede ou de hardware.

PAM_SYSTEM_ERR
    Ocorreu um erro do sistema. Os ficheiros log do SSSD podem conter informação adicional acerca do erro.

EXEMPLOS

O principal caso de uso é fornecer autenticação sem palavra passe no sudo mas sem a necessidade de desactivar completamente a autenticação. Para conseguir isto, primeiro active a autenticação GSSAPI para o sudo no sssd.conf:

    [domain/MYDOMAIN]
    pam_gssapi_services = sudo, sudo-i

E depois active o módulo na pilha PAM desejada (ex. /etc/pam.d/sudo e /etc/pam.d/sudo-i).

    ...
    auth sufficient pam_sss_gss.so
    ...

RESOLUÇÃO DE PROBLEMAS

Registos do SSSD, a saída de depuração do pam_sss_gss e o syslog podem conter informação auxiliar acerca do erro. Aqui estão alguns problemas comuns:

1. Eu tenho a variável de ambiente KRB5CCNAME definida e a autenticação não funciona: Dependendo da sua versão de sudo, é possível que o sudo não passe esta variável para o ambiente PAM. Tente adicionar KRB5CCNAME a env_keep em /etc/sudoers ou nas suas opções predefinidas de regras sudo do LDAP.

2. Autenticação não funciona e o syslog contém "Servidor não encontrado na base de dados do Kerberos": Provavelmente o Kerberos não é capaz de resolver o reino correctamente para o bilhete de serviço baseado no nome de máquina. Tente adicionar o nome de máquina directamente a [domain_realm] em /etc/krb5.conf tal como:

3. Autenticação não funciona e o syslog contém "Nenhuma credencial do Kerberos disponível": Você não tem nenhumas credenciais que possam ser usadas obter o bilhete de serviço requerido. Use o kinit ou autentique-se sobre o SSSD para adquirir essas credenciais.

4. Autenticação não funciona e o registo sssd-pam do SSSD contém "Utilizador com UPN [$UPN] não foi encontrado." ou "UPN [$UPN] não corresponde ao utilizador alvo [$username].": Você está a usar credenciais que não podem ser mapeadas ao utilizador que está a ser autenticado. Tente usar o kswitch para selecionar um principal diferente, certifique-se que se autentica com o SSSD ou considere desactivar pam_gssapi_check_upn.

    [domain_realm]
    .myhostname = MYREALM

VEJA TAMBÉM

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)

AUTHORS

O autor do SSSD - https://github.com/SSSD/sssd/