Associe manualmente uma instância Amazon EC2 Linux ao seu Simple AD Active Directory - AWS Directory Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Associe manualmente uma instância Amazon EC2 Linux ao seu Simple AD Active Directory

Além das instâncias EC2 do Amazon Windows, você também pode unir determinadas instâncias do Amazon EC2 Linux ao seu Simple AD Active Directory. As seguintes distribuições e versões de instância do Linux são suportadas:

  • Amazon Linux AMI 2018.03.0

  • Amazon Linux 2 (64 bits x86)

  • Amazon Linux 2023 AMI

  • Red Hat Enterprise Linux 8 (HVM) (64 bits x86)

  • Servidor Ubuntu 18.04 LTS e Servidor Ubuntu 16.04 LTS

  • CentOS 7 x86-64

  • SUSEServidor corporativo Linux 15 SP1

nota

Outras distribuições e versões do Linux podem funcionar, mas não foram testadas.

Pré-requisitos

Antes de associar uma instância do Amazon Linux, CentOS, Red Hat ou Ubuntu ao seu diretório, a instância deve primeiro ser iniciada conforme especificado em Associe perfeitamente uma instância Amazon EC2 Linux ao seu Simple AD Active Directory.

Importante

Alguns dos procedimentos a seguir, se não forem executados corretamente, podem tornar sua instância inacessível ou não utilizável. Portanto, nós sugerimos enfaticamente que você faça um backup ou tire um snapshot da sua instância antes de executar esses procedimentos.

Para associar uma instância do Linux ao seu diretório

Siga as etapas para a sua instância do Linux específica usando uma das seguintes guias:

Amazon Linux
  1. Conecte-se à instância usando qualquer SSH cliente.

  2. Configure a instância Linux para usar os DNS endereços IP dos AWS Directory Service DNS servidores fornecidos. Você pode fazer isso configurando-o no conjunto de DHCP Opções anexado ao VPC ou configurando-o manualmente na instância. Se você quiser configurá-lo manualmente, consulte Como atribuo um DNS servidor estático a uma EC2 instância privada da Amazon no Centro de AWS Conhecimento para obter orientação sobre como configurar o DNS servidor persistente para sua distribuição e versão específicas do Linux.

  3. Verifique se sua instância do Amazon Linux de 64 bits está atualizada.

    sudo yum -y update
  4. Instale os pacotes do Amazon Linux necessários em sua instância do Linux.

    nota

    Alguns desses pacotes já podem estar instalados.

    Enquanto você instala os pacotes, você pode ver várias telas pop-up de configuração. Você geralmente pode deixar os campos nessas telas em branco.

    Amazon Linux
    sudo yum install samba-common-tools realmd oddjob oddjob-mkhomedir sssd adcli krb5-workstation
    nota

    Para obter ajuda na determinação da versão do Amazon Linux que você está usando, consulte Identificação de imagens do Amazon Linux no Guia EC2 do usuário da Amazon para instâncias Linux.

  5. Junte a instância ao diretório com o comando a seguir.

    sudo realm join -U join_account@EXAMPLE.COM example.com --verbose
    join_account@EXAMPLE.COM

    Uma conta no example.com domínio que tem privilégios de associação de domínio. Digite a senha da conta quando solicitado. Para obter mais informações sobre como delegar esses privilégios, consulte Delegando privilégios de associação de diretórios para o Managed AWS Microsoft AD.

    example.com

    O DNS nome totalmente qualificado do seu diretório.

    ... * Successfully enrolled machine in realm
  6. Configure o SSH serviço para permitir a autenticação por senha.

    1. Abra o arquivo /etc/ssh/sshd_config em um editor de textos.

      sudo vi /etc/ssh/sshd_config
    2. Defina a configuração PasswordAuthentication como yes.

      PasswordAuthentication yes
    3. Reinicie o serviço SSH.

      sudo systemctl restart sshd.service

      Alternativa:

      sudo service sshd restart
  7. Depois que a instância for reiniciada, conecte-se a ela com qualquer SSH cliente e adicione o grupo de administradores do domínio à lista sudoers executando as seguintes etapas:

    1. Abra o arquivo sudoers com o seguinte comando:

      sudo visudo
    2. Adicione o seguinte ao final do arquivo sudoers e salve-o.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

      (O exemplo acima usa "\<space>" para criar o caractere de espaço do Linux.)

CentOS
  1. Conecte-se à instância usando qualquer SSH cliente.

  2. Configure a instância Linux para usar os DNS endereços IP dos AWS Directory Service DNS servidores fornecidos. Você pode fazer isso configurando-o no conjunto de DHCP Opções anexado ao VPC ou configurando-o manualmente na instância. Se você quiser configurá-lo manualmente, consulte Como atribuo um DNS servidor estático a uma EC2 instância privada da Amazon no Centro de AWS Conhecimento para obter orientação sobre como configurar o DNS servidor persistente para sua distribuição e versão específicas do Linux.

  3. Verifique se sua instância do CentOS 7 está atualizada.

    sudo yum -y update
  4. Instale os pacotes do CentOS 7 necessários na sua instância do Linux.

    nota

    Alguns desses pacotes já podem estar instalados.

    Enquanto você instala os pacotes, você pode ver várias telas pop-up de configuração. Você geralmente pode deixar os campos nessas telas em branco.

    sudo yum -y install sssd realmd krb5-workstation samba-common-tools
  5. Junte a instância ao diretório com o comando a seguir.

    sudo realm join -U join_account@example.com example.com --verbose
    join_account@example.com

    Uma conta no example.com domínio que tem privilégios de associação de domínio. Digite a senha da conta quando solicitado. Para obter mais informações sobre como delegar esses privilégios, consulte Delegando privilégios de associação de diretórios para o Managed AWS Microsoft AD.

    example.com

    O DNS nome totalmente qualificado do seu diretório.

    ... * Successfully enrolled machine in realm
  6. Configure o SSH serviço para permitir a autenticação por senha.

    1. Abra o arquivo /etc/ssh/sshd_config em um editor de textos.

      sudo vi /etc/ssh/sshd_config
    2. Defina a configuração PasswordAuthentication como yes.

      PasswordAuthentication yes
    3. Reinicie o serviço SSH.

      sudo systemctl restart sshd.service

      Alternativa:

      sudo service sshd restart
  7. Depois que a instância for reiniciada, conecte-se a ela com qualquer SSH cliente e adicione o grupo de administradores do domínio à lista sudoers executando as seguintes etapas:

    1. Abra o arquivo sudoers com o seguinte comando:

      sudo visudo
    2. Adicione o seguinte ao final do arquivo sudoers e salve-o.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

      (O exemplo acima usa "\<space>" para criar o caractere de espaço do Linux.)

Red hat
  1. Conecte-se à instância usando qualquer SSH cliente.

  2. Configure a instância Linux para usar os DNS endereços IP dos AWS Directory Service DNS servidores fornecidos. Você pode fazer isso configurando-o no conjunto de DHCP Opções anexado ao VPC ou configurando-o manualmente na instância. Se você quiser configurá-lo manualmente, consulte Como atribuo um DNS servidor estático a uma EC2 instância privada da Amazon no Centro de AWS Conhecimento para obter orientação sobre como configurar o DNS servidor persistente para sua distribuição e versão específicas do Linux.

  3. Certifique-se de que a instância do Red Hat - 64 bits está atualizada.

    sudo yum -y update
  4. Instale os pacotes do Red Hat necessários na sua instância do Linux.

    nota

    Alguns desses pacotes já podem estar instalados.

    Enquanto você instala os pacotes, você pode ver várias telas pop-up de configuração. Você geralmente pode deixar os campos nessas telas em branco.

    sudo yum -y install sssd realmd krb5-workstation samba-common-tools
  5. Junte a instância ao diretório com o comando a seguir.

    sudo realm join -v -U join_account example.com --install=/
    join_account

    O sAMAccountnome de uma conta no example.com domínio que tem privilégios de associação de domínio. Digite a senha da conta quando solicitado. Para obter mais informações sobre como delegar esses privilégios, consulte Delegando privilégios de associação de diretórios para o Managed AWS Microsoft AD.

    example.com

    O DNS nome totalmente qualificado do seu diretório.

    ... * Successfully enrolled machine in realm
  6. Configure o SSH serviço para permitir a autenticação por senha.

    1. Abra o arquivo /etc/ssh/sshd_config em um editor de textos.

      sudo vi /etc/ssh/sshd_config
    2. Defina a configuração PasswordAuthentication como yes.

      PasswordAuthentication yes
    3. Reinicie o serviço SSH.

      sudo systemctl restart sshd.service

      Alternativa:

      sudo service sshd restart
  7. Depois que a instância for reiniciada, conecte-se a ela com qualquer SSH cliente e adicione o grupo de administradores do domínio à lista sudoers executando as seguintes etapas:

    1. Abra o arquivo sudoers com o seguinte comando:

      sudo visudo
    2. Adicione o seguinte ao final do arquivo sudoers e salve-o.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

      (O exemplo acima usa "\<space>" para criar o caractere de espaço do Linux.)

Ubuntu
  1. Conecte-se à instância usando qualquer SSH cliente.

  2. Configure a instância Linux para usar os DNS endereços IP dos AWS Directory Service DNS servidores fornecidos. Você pode fazer isso configurando-o no conjunto de DHCP Opções anexado ao VPC ou configurando-o manualmente na instância. Se você quiser configurá-lo manualmente, consulte Como atribuo um DNS servidor estático a uma EC2 instância privada da Amazon no Centro de AWS Conhecimento para obter orientação sobre como configurar o DNS servidor persistente para sua distribuição e versão específicas do Linux.

  3. Certifique-se de que a instância do Ubuntu - 64 bits está atualizada.

    sudo apt-get update sudo apt-get -y upgrade
  4. Instale os pacotes do Ubuntu necessários na sua instância do Linux.

    nota

    Alguns desses pacotes já podem estar instalados.

    Enquanto você instala os pacotes, você pode ver várias telas pop-up de configuração. Você geralmente pode deixar os campos nessas telas em branco.

    sudo apt-get -y install sssd realmd krb5-user samba-common packagekit adcli
  5. Desative a DNS resolução reversa e defina o domínio padrão como o do FQDN seu domínio. As instâncias do Ubuntu devem ser resolvidas de forma reversa DNS antes que o reino funcione. Caso contrário, você deve desativar o DNS in /etc/krb 5.conf reverso da seguinte maneira:

    sudo vi /etc/krb5.conf
    [libdefaults] default_realm = EXAMPLE.COM rdns = false
  6. Junte a instância ao diretório com o comando a seguir.

    sudo realm join -U join_account example.com --verbose
    join_account@example.com

    O sAMAccountnome de uma conta no example.com domínio que tem privilégios de associação de domínio. Digite a senha da conta quando solicitado. Para obter mais informações sobre como delegar esses privilégios, consulte Delegando privilégios de associação de diretórios para o Managed AWS Microsoft AD.

    example.com

    O DNS nome totalmente qualificado do seu diretório.

    ... * Successfully enrolled machine in realm
  7. Configure o SSH serviço para permitir a autenticação por senha.

    1. Abra o arquivo /etc/ssh/sshd_config em um editor de textos.

      sudo vi /etc/ssh/sshd_config
    2. Defina a configuração PasswordAuthentication como yes.

      PasswordAuthentication yes
    3. Reinicie o serviço SSH.

      sudo systemctl restart sshd.service

      Alternativa:

      sudo service sshd restart
  8. Depois que a instância for reiniciada, conecte-se a ela com qualquer SSH cliente e adicione o grupo de administradores do domínio à lista sudoers executando as seguintes etapas:

    1. Abra o arquivo sudoers com o seguinte comando:

      sudo visudo
    2. Adicione o seguinte ao final do arquivo sudoers e salve-o.

      ## Add the "Domain Admins" group from the example.com domain. %Domain\ Admins@example.com ALL=(ALL:ALL) ALL

      (O exemplo acima usa "\<space>" para criar o caractere de espaço do Linux.)

nota

Ao usar o Simple AD, se você criar uma conta de usuário em uma instância do Linux com a opção "Forçar usuário a alterar a senha no primeiro login", esse usuário não poderá alterar inicialmente sua senha usando o comando kpasswd. Para alterar a senha pela primeira vez, um administrador de domínio deverá atualizar a senha de usuário usando as ferramentas de gerenciamento do Active Directory.

Gerenciar contas de uma instância do Linux

Para gerenciar contas no Simple AD de uma instância do Linux, você deve atualizar arquivos de configuração específicos na sua instância do Linux da seguinte maneira:

  1. Defina krb5_use_kdcinfo como False no arquivo/.conf. etc/sssd/sssd Por exemplo:

    [domain/example.com] krb5_use_kdcinfo = False
  2. Para que a configuração seja aplicada, você precisa reiniciar o serviço sssd:

    $ sudo systemctl restart sssd.service

    Você também poderia usar o:

    $ sudo service sssd start
  3. Se você pretende gerenciar usuários de uma instância do CentOS Linux, também deverá editar o arquivo /etc/smb.conf para incluir:

    [global] workgroup = EXAMPLE.COM realm = EXAMPLE.COM netbios name = EXAMPLE security = ads

Restringir o acesso de login da conta

Como todas as contas estão definidas no Active Directory, por padrão, todos os usuários no diretório podem fazer login na instância. Você pode permitir que somente usuários específicos façam login na instância com ad_access_filter em sssd.conf. Por exemplo:

ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)
memberOf

Indica que os usuários só podem ter acesso à instância se participarem de um grupo específico.

cn

O nome comum do grupo que deve ter acesso. Neste exemplo, o nome do grupo é admins.

ou

Essa é a unidade organizacional na qual o grupo acima está localizado. Neste exemplo, a OU é Testou.

dc

Este é o componente de domínio do seu domínio. Neste exemplo, example.

dc

Este é um componente adicional de domínio. Neste exemplo, com.

Você deve adicionar manualmente ad_access_filter ao /etc/sssd/sssd.conf.

Abra o arquivo /etc/sssd/sssd.conf em um editor de textos.

sudo vi /etc/sssd/sssd.conf

Depois disso, seu sssd.conf pode ficar da seguinte forma:

[sssd] domains = example.com config_file_version = 2 services = nss, pam [domain/example.com] ad_domain = example.com krb5_realm = EXAMPLE.COM realmd_tags = manages-system joined-with-samba cache_credentials = True id_provider = ad krb5_store_password_if_offline = True default_shell = /bin/bash ldap_id_mapping = True use_fully_qualified_names = True fallback_homedir = /home/%u@%d access_provider = ad ad_access_filter = (memberOf=cn=admins,ou=Testou,dc=example,dc=com)

Para que a configuração entre em vigor, é necessário reiniciar o serviço sssd:

sudo systemctl restart sssd.service

Você também poderia usar o:

sudo service sssd restart

Mapeamento de ID

O mapeamento de ID pode ser realizado por dois métodos para manter uma experiência unificada entre UNIX /Linux User Identifier (UID) e Group Identifier (GID) e Windows e Active Directory Identidades do Identificador de Segurança (SID).

  1. Centralizado

  2. Distribuído

nota

Mapeamento centralizado da identidade do usuário em Active Directory requer interface de sistema operacional portátil ouPOSIX.

Mapeamento centralizado da identidade do usuário

Active Directory ou outro serviço do Lightweight Directory Access Protocol (LDAP) fornece UID e GID para os usuários do Linux. Em Active Directory, esses identificadores são armazenados nos atributos dos usuários:

  • UID- O nome de usuário do Linux (String)

  • UIDNúmero - O número de ID de usuário do Linux (inteiro)

  • GIDNúmero - O número de identificação do grupo Linux (inteiro)

Para configurar uma instância Linux para usar o UID e GID de Active Directory, definido ldap_id_mapping = False no arquivo sssd.conf. Antes de definir esse valor, verifique se você adicionou umUID, UID GID número e número aos usuários e grupos no Active Directory.

Mapeamento distribuído de identidade de usuário

If (Se) Active Directory não tem a POSIX extensão ou, se você optar por não gerenciar centralmente o mapeamento de identidade, o Linux pode calcular os GID valores UID e. O Linux usa o Identificador de Segurança (SID) exclusivo do usuário para manter a consistência.

Para configurar o mapeamento distribuído de ID de usuário, defina ldap_id_mapping = True no arquivo sssd.conf.

Conecte-se à instância Linux

Quando um usuário se conecta à instância usando um SSH cliente, ele é solicitado a fornecer seu nome de usuário. O usuário pode informar o nome de usuário no formato username@example.com ou EXAMPLE\username. A resposta será semelhante à seguinte, dependendo da distribuição Linux que você estiver usando:

Amazon Linux, Red Hat Enterprise Linux e CentOS Linux

login as: johndoe@example.com johndoe@example.com's password: Last login: Thu Jun 25 16:26:28 2015 from XX.XX.XX.XX

SUSELinux

SUSE Linux Enterprise Server 15 SP1 x86_64 (64-bit) As "root" (sudo or sudo -i) use the: - zypper command for package management - yast command for configuration management Management and Config: https://www.suse.com/suse-in-the-cloud-basics Documentation: https://www.suse.com/documentation/sles-15/ Forum: https://forums.suse.com/forumdisplay.php?93-SUSE-Public-Cloud Have a lot of fun...

Ubuntu Linux

login as: admin@example.com admin@example.com@10.24.34.0's password: Welcome to Ubuntu 18.04.4 LTS (GNU/Linux 4.15.0-1057-aws x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sat Apr 18 22:03:35 UTC 2020 System load: 0.01 Processes: 102 Usage of /: 18.6% of 7.69GB Users logged in: 2 Memory usage: 16% IP address for eth0: 10.24.34.1 Swap usage: 0%