2.4. Juntando um sistema RHEL a um domínio AD

Esta seção descreve como unir um sistema Red Hat Enterprise Linux a um domínio AD, usando realmd para configurar o Samba Winbind.

Procedimento

  1. Se seu AD requer o tipo de criptografia RC4 obsoleto para autenticação Kerberos, habilite o suporte para estas cifras na RHEL:

    # update-crypto-policies --set DEFAULT:AD-SUPPORT
  2. Instale os seguintes pacotes:

    # yum install realmd oddjob-mkhomedir oddjob samba-winbind-clients \ samba-winbind samba-common-tools samba-winbind-krb5-locator
  3. Para compartilhar diretórios ou impressoras no membro do domínio, instale o pacote samba:

    # yum install samba
  4. Faça o backup do arquivo de configuração existente /etc/samba/smb.conf Samba:

    # mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
  5. Junte-se ao domínio. Por exemplo, para ingressar em um domínio chamado ad.example.com:

    # realm join --membership-software=samba --client-software=winbind ad.example.com

    Usando o comando anterior, o utilitário realm automaticamente:

    • Cria um arquivo /etc/samba/smb.conf para uma associação no domínio ad.example.com
    • Adiciona o módulo winbind para pesquisas de usuários e grupos ao arquivo /etc/nsswitch.conf
    • Atualiza os arquivos de configuração do Módulo de Autenticação Pluggável (PAM) no diretório /etc/pam.d/
    • Inicia o serviço winbind e permite que o serviço seja iniciado quando o sistema inicia
  6. Opcionalmente, defina um mapeamento alternativo de identificação no back end ou configurações personalizadas de mapeamento de identificação no arquivo /etc/samba/smb.conf. Para detalhes, consulte a seção Entendendo e configurando o Samba ID mapping na documentação Deploying different types of servers.
  7. Edite o arquivo /etc/krb5.conf e adicione a seguinte seção:

    [plugins]
        localauth = {
            module = winbind:/usr/lib64/samba/krb5/winbind_krb5_localauth.so
            enable_only = winbind
        }
  8. Verifique se o serviço winbind está funcionando:

    # systemctl status winbind
    ...
       Active: active (running) since Tue 2018-11-06 19:10:40 CET; 15s ago
    Importante

    Para que o Samba possa consultar informações de usuários e grupos de domínio, o serviço winbind deve estar em execução antes de você iniciar smb.

  9. Se você instalou o pacote samba para compartilhar diretórios e impressoras, ative e inicie o serviço smb:

    # systemctl enable --now smb

Etapas de verificação

  1. Exibir os detalhes de um usuário AD, tais como a conta do administrador AD no domínio AD:

    # getent passwd "AD\administrator"
    AD\administrator:*:10000:10000::/home/administrator@AD:/bin/bash
  2. Consultar os membros do grupo de usuários do domínio no domínio AD:

    # getent group "AD\Domain Users"
        AD\domain users:x:10000:user1,user2
  3. Opcionalmente, verifique se você pode utilizar usuários e grupos de domínio quando definir permissões em arquivos e diretórios. Por exemplo, para definir o proprietário do arquivo /srv/samba/example.txt para AD\administrator e o grupo para AD\Domain Users:

    # chown "AD\administrator":"AD\Domain Users" /srv/samba/example.txt
  4. Verificar se a autenticação Kerberos funciona como esperado:

    1. No membro do domínio AD, obtenha um ticket para o principal administrator@AD.EXAMPLE.COM:

      # kinit administrator@AD.EXAMPLE.COM
    2. Exibir o bilhete Kerberos em cache:

      # klist
      Ticket cache: KCM:0
      Default principal: administrator@AD.EXAMPLE.COM
      
      Valid starting       Expires              Service principal
      01.11.2018 10:00:00  01.11.2018 20:00:00  krbtgt/AD.EXAMPLE.COM@AD.EXAMPLE.COM
              renew until 08.11.2018 05:00:00
  5. Mostrar os domínios disponíveis:

    # wbinfo --all-domains
    BUILTIN
    SAMBA-SERVER
    AD

Recursos adicionais