Ingressar uma máquina virtual Red Hat Enterprise Linux em um domínio Azure AD Domain Services gerenciadoJoin a Red Hat Enterprise Linux virtual machine to an Azure AD Domain Services managed domain

Para permitir que os usuários entrem em máquinas virtuais (VMs) no Azure usando um único conjunto de credenciais, você pode ingressar VMs em um domínio gerenciado Azure Active Directory Domain Services (AD DS).To let users sign in to virtual machines (VMs) in Azure using a single set of credentials, you can join VMs to an Azure Active Directory Domain Services (AD DS) managed domain. Quando você une uma VM a um domínio gerenciado AD DS do Azure, as contas de usuário e as credenciais do domínio podem ser usadas para entrar e gerenciar servidores.When you join a VM to an Azure AD DS managed domain, user accounts and credentials from the domain can be used to sign in and manage servers. As associações de grupo do domínio gerenciado do AD DS do Azure também são aplicadas para permitir que você controle o acesso a arquivos ou serviços na VM.Group memberships from the Azure AD DS managed domain are also applied to let you control access to files or services on the VM.

Este artigo mostra como unir uma VM Red Hat Enterprise Linux (RHEL) a um domínio gerenciado do Azure AD DS.This article shows you how to join a Red Hat Enterprise Linux (RHEL) VM to an Azure AD DS managed domain.

Pré-requisitosPrerequisites

Para concluir este tutorial, você precisará dos seguintes recursos e privilégios:To complete this tutorial, you need the following resources and privileges:

Criar e conectar-se a uma VM do RHEL LinuxCreate and connect to a RHEL Linux VM

Se você tiver uma VM do Linux RHEL existente no Azure, conecte-se a ela usando o SSH e continue na próxima etapa para começar a configurar a VM.If you have an existing RHEL Linux VM in Azure, connect to it using SSH, then continue on to the next step to start configuring the VM.

Se você precisar criar uma VM do RHEL Linux ou desejar criar uma VM de teste para uso com este artigo, você pode usar um dos seguintes métodos:If you need to create a RHEL Linux VM, or want to create a test VM for use with this article, you can use one of the following methods:

Ao criar a VM, preste atenção às configurações de rede virtual para garantir que a VM possa se comunicar com o domínio gerenciado AD DS do Azure:When you create the VM, pay attention to the virtual network settings to make sure that the VM can communicate with the Azure AD DS managed domain:

  • Implante a VM na mesma rede virtual, ou emparelhada, na qual você habilitou Azure AD Domain Services.Deploy the VM into the same, or a peered, virtual network in which you have enabled Azure AD Domain Services.
  • Implante a VM em uma sub-rede diferente da instância do Azure AD Domain Services.Deploy the VM into a different subnet than your Azure AD Domain Services instance.

Depois que a VM for implantada, siga as etapas para se conectar à VM usando SSH.Once the VM is deployed, follow the steps to connect to the VM using SSH.

Configurar o arquivo de hostsConfigure the hosts file

Para certificar-se de que o nome do host da VM esteja configurado corretamente para o domínio gerenciado, edite o arquivo /etc/hosts e defina o nome do host:To make sure that the VM host name is correctly configured for the managed domain, edit the /etc/hosts file and set the hostname:

sudo vi /etc/hosts

No arquivo hosts , atualize o endereço localhost .In the hosts file, update the localhost address. No exemplo a seguir:In the following example:

  • contoso.com é o nome de domínio DNS do seu domínio gerenciado AD DS do Azure.contoso.com is the DNS domain name of your Azure AD DS managed domain.
  • RHEL é o nome do host da sua VM RHEL que você está unindo ao domínio gerenciado.rhel is the hostname of your RHEL VM that you're joining to the managed domain.

Atualize esses nomes com seus próprios valores:Update these names with your own values:

127.0.0.1 rhel rhel.contoso.com

Quando terminar, salve e saia do arquivo de hosts usando o :wq comando do editor.When done, save and exit the hosts file using the :wq command of the editor.

Instalar os pacotes necessáriosInstall required packages

A VM precisa de alguns pacotes adicionais para ingressar a VM no domínio gerenciado AD DS do Azure.The VM needs some additional packages to join the VM to the Azure AD DS managed domain. Para instalar e configurar esses pacotes, atualize e instale as ferramentas de ingresso no domínio yumusando:To install and configure these packages, update and install the domain-join tools using yum:

RHEL 7RHEL 7

sudo yum install realmd sssd krb5-workstation krb5-libs oddjob oddjob-mkhomedir samba-common-tools

RHEL 6RHEL 6

sudo yum install adcli sssd authconfig krb5-workstation

Ingressar VM no domínio gerenciadoJoin VM to the managed domain

Agora que os pacotes necessários estão instalados na VM, ingresse a VM no domínio gerenciado AD DS do Azure.Now that the required packages are installed on the VM, join the VM to the Azure AD DS managed domain.

RHEL 7RHEL 7

  1. Use o realm discover comando para descobrir o domínio gerenciado AD DS do Azure.Use the realm discover command to discover the Azure AD DS managed domain. O exemplo a seguir descobre o realm contoso.com.The following example discovers the realm CONTOSO.COM. Especifique seu próprio nome de domínio gerenciado AD DS do Azure em letras MAIÚSCULAs:Specify your own Azure AD DS managed domain name in ALL UPPERCASE:

    sudo realm discover CONTOSO.COM
    

    Se o realm discover comando não conseguir localizar seu domínio gerenciado AD DS do Azure, examine as seguintes etapas de solução de problemas:If the realm discover command can't find your Azure AD DS managed domain, review the following troubleshooting steps:

    • Verifique se o domínio está acessível da VM.Make sure that the domain is reachable from the VM. Tente ping contoso.com ver se uma resposta positiva é retornada.Try ping contoso.com to see if a positive reply is returned.
    • Verifique se a VM está implantada no mesmo ou em uma rede virtual emparelhada na qual o domínio gerenciado do Azure AD DS está disponível.Check that the VM is deployed to the same, or a peered, virtual network in which the Azure AD DS managed domain is available.
    • Confirme se as configurações do servidor DNS para a rede virtual foram atualizadas para apontar para os controladores de domínio do domínio gerenciado AD DS do Azure.Confirm that the DNS server settings for the virtual network have been updated to point to the domain controllers of the Azure AD DS managed domain.
  2. Agora, inicialize o Kerberos kinit usando o comando.Now initialize Kerberos using the kinit command. Especifique um usuário que pertença ao grupo de Administradores de DC do AAD .Specify a user that belongs to the AAD DC Administrators group. Se necessário, adicione uma conta de usuário a um grupo no Azure ad.If needed, add a user account to a group in Azure AD.

    Novamente, o nome de domínio gerenciado do AD DS do Azure deve ser inserido em letras MAIÚSCULAs.Again, the Azure AD DS managed domain name must be entered in ALL UPPERCASE. No exemplo a seguir, a conta denominada contosoadmin@contoso.com é usada para inicializar o Kerberos.In the following example, the account named contosoadmin@contoso.com is used to initialize Kerberos. Insira sua própria conta de usuário que seja membro do grupo de Administradores de DC do AAD :Enter your own user account that's a member of the AAD DC Administrators group:

    kinit contosoadmin@CONTOSO.COM
    
  3. Por fim, ingresse o computador no domínio gerenciado AD DS do Azure usando realm join o comando.Finally, join the machine to the Azure AD DS managed domain using the realm join command. Use a mesma conta de usuário que é membro do grupo de Administradores de DC do AAD que você especificou kinit no contosoadmin@CONTOSO.COMcomando anterior, como:Use the same user account that's a member of the AAD DC Administrators group that you specified in the previous kinit command, such as contosoadmin@CONTOSO.COM:

    sudo realm join --verbose CONTOSO.COM -U 'contosoadmin@CONTOSO.COM'
    

Leva alguns minutos para ingressar a VM no domínio gerenciado AD DS do Azure.It takes a few moments to join the VM to the Azure AD DS managed domain. A saída de exemplo a seguir mostra que a VM ingressou com êxito no domínio gerenciado do Azure AD DS:The following example output shows the VM has successfully joined to the Azure AD DS managed domain:

Successfully enrolled machine in realm

RHEL 6RHEL 6

  1. Use o adcli info comando para descobrir o domínio gerenciado AD DS do Azure.Use the adcli info command to discover the Azure AD DS managed domain. O exemplo a seguir descobre o realm contoso.com.The following example discovers the realm CONTOSO.COM. Especifique seu próprio nome de domínio gerenciado AD DS do Azure em letras MAIÚSCULAs:Specify your own Azure AD DS managed domain name in ALL UPPERCASE:

    sudo adcli info contoso.com
    

    Se o adcli info comando não conseguir localizar seu domínio gerenciado AD DS do Azure, examine as seguintes etapas de solução de problemas:If the adcli info command can't find your Azure AD DS managed domain, review the following troubleshooting steps:

    • Verifique se o domínio está acessível da VM.Make sure that the domain is reachable from the VM. Tente ping contoso.com ver se uma resposta positiva é retornada.Try ping contoso.com to see if a positive reply is returned.
    • Verifique se a VM está implantada no mesmo ou em uma rede virtual emparelhada na qual o domínio gerenciado do Azure AD DS está disponível.Check that the VM is deployed to the same, or a peered, virtual network in which the Azure AD DS managed domain is available.
    • Confirme se as configurações do servidor DNS para a rede virtual foram atualizadas para apontar para os controladores de domínio do domínio gerenciado AD DS do Azure.Confirm that the DNS server settings for the virtual network have been updated to point to the domain controllers of the Azure AD DS managed domain.
  2. Primeiro, ingresse no domínio usando o comando adcli join, esse comando também criará o keytab para autenticar o computador.First, join the domain using the adcli join command, this command will also creates the keytab to authenticate the machine. Use uma conta de usuário que seja membro do grupo de Administradores de DC do AAD .Use a user account that's a member of the AAD DC Administrators group.

    sudo adcli join contoso.com -U contosoadmin
    
  3. Agora, configure o /ect/krb5.conf e crie os arquivos /etc/sssd/sssd.conf para usar o domínio contoso.com Active Directory.Now configure the /ect/krb5.conf and create the /etc/sssd/sssd.conf files to use the contoso.com Active Directory domain. Certifique-se de que CONTOSO.COM seja substituído pelo seu próprio nome de domínio:Make sure that CONTOSO.COM is replaced by your own domain name :

    Abra o arquivo /ect/krb5.conf com um editor:Open the /ect/krb5.conf file with an editor:

    sudo vi /etc/krb5.conf
    

    Atualize o arquivo krb5.conf para corresponder ao seguinte exemplo:Update the krb5.conf file to match the following sample :

    [logging]
     default = FILE:/var/log/krb5libs.log
     kdc = FILE:/var/log/krb5kdc.log
     admin_server = FILE:/var/log/kadmind.log
    
    [libdefaults]
     default_realm = CONTOSO.COM
     dns_lookup_realm = true
     dns_lookup_kdc = true
     ticket_lifetime = 24h
     renew_lifetime = 7d
     forwardable = true
    
    [realms]
     CONTOSO.COM = {
     kdc = CONTOSO.COM
     admin_server = CONTOSO.COM
     }
    
    [domain_realm]
     .CONTOSO.COM = CONTOSO.COM
     CONTOSO.COM = CONTOSO.COM
    

    Crie o arquivo /etc/sssd/sssd.conf:Create the /etc/sssd/sssd.conf file :

    sudo vi /etc/sssd/sssd.conf
    

    Atualize o arquivo sssd.conf para corresponder ao seguinte exemplo:Update the sssd.conf file to match the following sample :

    [sssd]
     services = nss, pam, ssh, autofs
     config_file_version = 2
     domains = CONTOSO.COM
    
    [domain/CONTOSO.COM]
    
     id_provider = ad
    
  4. Verifique se as permissões /etc/sssd/sssd.conf são 600 e pertencem ao usuário raiz:Make sure /etc/sssd/sssd.conf permissions are 600 and is owned by root user:

    sudo chmod 600 /etc/sssd/sssd.conf
    sudo chown root:root /etc/sssd/sssd.conf
    
  5. Use authconfig para instruir a VM sobre a integração do AD Linux:Use authconfig to instruct the VM about the AD Linux integration :

    sudo authconfig --enablesssd --enablesssdauth --update
    
  6. Inicie e habilite o serviço SSSD:Start and enable the sssd service :

    sudo service sssd start
    sudo chkconfig sssd on
    

Se sua VM não puder concluir com êxito o processo de ingresso no domínio, verifique se o grupo de segurança de rede da VM permite o tráfego de saída do Kerberos na porta TCP + UDP 464 para a sub-rede da rede virtual para seu domínio gerenciado AD DS do Azure.If your VM can't successfully complete the domain-join process, make sure that the VM's network security group allows outbound Kerberos traffic on TCP + UDP port 464 to the virtual network subnet for your Azure AD DS managed domain.

Agora, verifique se você pode consultar informações do AD do usuário usando getentNow check if you can query user AD information using getent

sudo getent passwd contosoadmin

Permitir autenticação de senha para SSHAllow password authentication for SSH

Por padrão, os usuários só podem entrar em uma VM usando a autenticação baseada em chave pública SSH.By default, users can only sign in to a VM using SSH public key-based authentication. Falha na autenticação baseada em senha.Password-based authentication fails. Quando você ingressa a VM em um domínio gerenciado AD DS do Azure, essas contas de domínio precisam usar a autenticação baseada em senha.When you join the VM to an Azure AD DS managed domain, those domain accounts need to use password-based authentication. Atualize a configuração de SSH para permitir a autenticação baseada em senha da seguinte maneira.Update the SSH configuration to allow password-based authentication as follows.

  1. Abra o arquivo sshd_conf com um editor:Open the sshd_conf file with an editor:

    sudo vi /etc/ssh/sshd_config
    
  2. Atualize a linha de PasswordAuthentication para Sim:Update the line for PasswordAuthentication to yes:

    PasswordAuthentication yes
    

    Quando terminar, salve e saia do arquivo sshd_conf usando o comando :wq do editor.When done, save and exit the sshd_conf file using the :wq command of the editor.

  3. Para aplicar as alterações e permitir que os usuários entrem usando uma senha, reinicie o serviço SSH:To apply the changes and let users sign in using a password, restart the SSH service:

    RHEL 7RHEL 7

    sudo systemctl restart sshd
    

    RHEL 6RHEL 6

    sudo service sshd restart
    

Conceder os privilégios sudo de grupo 'Administradores de controlador de domínio do AAD'Grant the 'AAD DC Administrators' group sudo privileges

Para conceder aos membros do grupo de Administradores do AAD DC privilégios administrativos na VM RHEL, você adiciona uma entrada ao /etc/sudoers.To grant members of the AAD DC Administrators group administrative privileges on the RHEL VM, you add an entry to the /etc/sudoers. Depois de adicionados, os membros do grupo de Administradores do AAD DC podem usar o sudo comando na VM do RHEL.Once added, members of the AAD DC Administrators group can use the sudo command on the RHEL VM.

  1. Abra o arquivo do sudoers para edição:Open the sudoers file for editing:

    sudo visudo
    
  2. Adicione a seguinte entrada ao final do arquivo /etc/sudoers .Add the following entry to the end of /etc/sudoers file. O grupo de Administradores do AAD DC contém espaço em branco no nome, portanto, inclua o caractere de escape de barra invertida no nome do grupo.The AAD DC Administrators group contains whitespace in the name, so include the backslash escape character in the group name. Adicione seu próprio nome de domínio, como contoso.com:Add your own domain name, such as contoso.com:

    # Add 'AAD DC Administrators' group members as admins.
    %AAD\ DC\ Administrators@contoso.com ALL=(ALL) NOPASSWD:ALL
    

    Quando terminar, salve e saia do editor usando o :wq comando do editor.When done, save and exit the editor using the :wq command of the editor.

Entrar na VM usando uma conta de domínioSign in to the VM using a domain account

Para verificar se a VM foi unida com êxito ao domínio gerenciado AD DS do Azure, inicie uma nova conexão SSH usando uma conta de usuário de domínio.To verify that the VM has been successfully joined to the Azure AD DS managed domain, start a new SSH connection using a domain user account. Confirme se um diretório base foi criado e se a associação de grupo do domínio foi aplicada.Confirm that a home directory has been created, and that group membership from the domain is applied.

  1. Crie uma nova conexão SSH no console do.Create a new SSH connection from your console. Use uma conta de domínio que pertença ao domínio gerenciado usando ssh -l o comando, contosoadmin@contoso.com como e, em seguida, insira o endereço da VM, como RHEL.contoso.com.Use a domain account that belongs to the managed domain using the ssh -l command, such as contosoadmin@contoso.com and then enter the address of your VM, such as rhel.contoso.com. Se você usar o Azure Cloud Shell, use o endereço IP público da VM em vez do nome DNS interno.If you use the Azure Cloud Shell, use the public IP address of the VM rather than the internal DNS name.

    ssh -l contosoadmin@CONTOSO.com rhel.contoso.com
    
  2. Quando você se conectou com êxito à VM, verifique se o diretório base foi inicializado corretamente:When you've successfully connected to the VM, verify that the home directory was initialized correctly:

    pwd
    

    Você deve estar no diretório /Home com seu próprio diretório que corresponda à conta de usuário.You should be in the /home directory with your own directory that matches the user account.

  3. Agora, verifique se as associações de grupo estão sendo resolvidas corretamente:Now check that the group memberships are being resolved correctly:

    id
    

    Você deve ver suas associações de grupo no domínio gerenciado AD DS do Azure.You should see your group memberships from the Azure AD DS managed domain.

  4. Se você entrou na VM como um membro do grupo de Administradores do controlador de domínio do AAD , verifique se você pode usar sudo corretamente o comando:If you signed in to the VM as a member of the AAD DC Administrators group, check that you can correctly use the sudo command:

    sudo yum update
    

Próximas etapasNext steps

Se você tiver problemas para conectar a VM ao domínio gerenciado AD DS do Azure ou entrar com uma conta de domínio, consulte Solucionando problemas de ingresso no domínio.If you have problems connecting the VM to the Azure AD DS managed domain or signing in with a domain account, see Troubleshooting domain join issues.