Unir manualmente una instancia de Amazon EC2 Linux a su Active Directory AWS administrado de Microsoft AD mediante Winbind - AWS Directory Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Unir manualmente una instancia de Amazon EC2 Linux a su Active Directory AWS administrado de Microsoft AD mediante Winbind

Puede usar el servicio Winbind para unir manualmente sus instancias de Amazon EC2 Linux a un dominio de Active Directory AWS administrado de Microsoft AD. Esto permite a los usuarios de Active Directory locales actuales utilizar sus credenciales de Active Directory al acceder a las instancias de Linux unidas a su Active Directory AWS administrado de Microsoft AD. Son compatibles las siguientes distribuciones y versiones de instancias de Linux:

  • Amazon Linux AMI 2018.03.0

  • Amazon Linux 2 (64 bits x86)

  • AMI de Amazon Linux 2023

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

  • Ubuntu Server 18.04 LTS y Ubuntu Server 16.04 LTS

  • CentOS 7 x86-64

  • SUSE Linux Enterprise Server 15 SP1

nota

Puede que funcionen otras versiones y distribuciones de Linux, pero no se han probado.

Unir una instancia de Linux a su Active Directory AWS administrado de Microsoft AD

importante

Algunos de los siguientes procedimientos, si no se siguen correctamente, pueden hacer que la instancia resulte inaccesible o inservible. Por lo tanto, recomendamos encarecidamente que realice una copia de seguridad o una instantánea de la instancia antes de realizar estos procedimientos.

Para unir una instancia de Linux al directorio

Siga los pasos para su instancia de Linux específica mediante una de las siguientes pestañas:

Amazon Linux/CENTOS/REDHAT
  1. Conéctese a la instancia con cualquier cliente SSH.

  2. Configure la instancia de Linux para utilizar las direcciones IP de los servidores DNS proporcionados por AWS Directory Service. Puede hacerlo configurándolo en el conjunto de opciones de DHCP asociado a la VPC o ajustándolo manualmente en la instancia. Si quieres configurarlo manualmente, consulta Cómo asignar un servidor DNS estático a una EC2 instancia privada de Amazon en el AWS Knowledge Center para obtener instrucciones sobre cómo configurar el servidor DNS persistente para tu distribución y versión de Linux en particular.

  3. Asegúrese de que su instancia de Linux esté actualizada.

    sudo yum -y update
  4. Instale los paquetes necesarios de Samba o Winbind en la instancia de Linux.

    sudo yum -y install authconfig samba samba-client samba-winbind samba-winbind-clients
  5. Haga una copia de seguridad del archivo smb.conf principal para poder volver a él en caso de que se produzca un error:

    sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
  6. Abra el archivo de configuración original [/etc/samba/smb.conf] en un editor de texto.

    sudo vim /etc/samba/smb.conf

    Complete la información del entorno de dominio de Active Directory como se muestra en el siguiente ejemplo:

    [global] workgroup = example security = ads realm = example.com idmap config * : rangesize = 1000000 idmap config * : range = 1000000-19999999 idmap config * : backend = autorid winbind enum users = no winbind enum groups = no template homedir = /home/%U@%D template shell = /bin/bash winbind use default domain = false
  7. Abra el archivo de host [/etc/hosts] en un editor de texto.

    sudo vim /etc/hosts

    Agregue la dirección IP privada de su instancia de Linux de la siguiente manera:

    10.x.x.x Linux_hostname.example.com Linux_hostname
    nota

    Si no especificó la dirección IP en el archivo /etc/hosts, es posible que reciba el siguiente error de DNS al unir la instancia al dominio:

    No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER

    Este error significa que la unión se hizo correctamente, pero el comando [net ads] no pudo registrar el registro DNS en DNS.

  8. Una la instancia de Linux a Active Directory mediante la utilidad net.

    sudo net ads join -U join_account@example.com
    join_account@example.com

    Una cuenta del example.com dominio que tiene privilegios de unión a un dominio. Introduzca la contraseña de la cuenta cuando se le solicite. Para obtener más información sobre cómo delegar estos privilegios, consulte Delegación de privilegios de vinculación a directorios para AWS Managed Microsoft AD.

    example.com

    El nombre de DNS completo del directorio.

    Enter join_account@example.com's password: Using short domain name -- example Joined 'IP-10-x-x-x' to dns domain 'example.com'
  9. Modifique el archivo de configuración PAM. Utilice el siguiente comando para agregar las entradas necesarias para la autenticación de winbind:

    sudo authconfig --enablewinbind --enablewinbindauth --enablemkhomedir --update
  10. Configure el servicio SSH para permitir autenticación de contraseñas al editar el archivo /etc/ssh/sshd_config.

    1. Abra el archivo /etc/ssh/sshd_config en un editor de texto.

      sudo vi /etc/ssh/sshd_config
    2. Establezca la opción PasswordAuthentication en yes.

      PasswordAuthentication yes
    3. Reinicie el servicio SSH.

      sudo systemctl restart sshd.service

      Otra opción:

      sudo service sshd restart
  11. Una vez que la instancia se haya reiniciado, siga estos pasos para conectarse a ella con cualquier cliente SSH y agregue privilegios raíz para el grupo o usuario del dominio a la lista de sudoers:

    1. Abra el archivo sudoers con el siguiente comando:

      sudo visudo
    2. Agregue los grupos o usuarios necesarios de su dominio de confianza de la siguiente manera y, a continuación, guárdelos.

      ## Adding Domain Users/Groups. %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL %domainname\\groupname ALL=(ALL:ALL) ALL domainname\\username ALL=(ALL:ALL) ALL %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL Trusted_DomainName\\username ALL=(ALL:ALL) ALL

      (En el ejemplo anterior, se utiliza“\<espacio>” para crear el carácter de espacio en Linux).

SUSE
  1. Conéctese a la instancia con cualquier cliente SSH.

  2. Configure la instancia de Linux para utilizar las direcciones IP de los servidores DNS proporcionados por AWS Directory Service. Puede hacerlo configurándolo en el conjunto de opciones de DHCP asociado a la VPC o ajustándolo manualmente en la instancia. Si quieres configurarlo manualmente, consulta Cómo asignar un servidor DNS estático a una EC2 instancia privada de Amazon en el AWS Knowledge Center para obtener instrucciones sobre cómo configurar el servidor DNS persistente para tu distribución y versión de Linux en particular.

  3. Asegúrese de que su instancia de SUSE Linux 15 esté actualizada.

    1. Conecte el repositorio de paquetes.

      sudo SUSEConnect -p PackageHub/15.1/x86_64
    2. Actualice SUSE.

      sudo zypper update -y
  4. Instale los paquetes necesarios de Samba o Winbind en la instancia de Linux.

    sudo zypper in -y samba samba-winbind
  5. Haga una copia de seguridad del archivo smb.conf principal para poder volver a él en caso de que se produzca un error:

    sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
  6. Abra el archivo de configuración original [/etc/samba/smb.conf] en un editor de texto.

    sudo vim /etc/samba/smb.conf

    Complete la información del entorno de dominio de Active Directory como se muestra en el siguiente ejemplo:

    [global] workgroup = example security = ads realm = example.com idmap config * : rangesize = 1000000 idmap config * : range = 1000000-19999999 idmap config * : backend = autorid winbind enum users = no winbind enum groups = no template homedir = /home/%U@%D template shell = /bin/bash winbind use default domain = false
  7. Abra el archivo de host [/etc/hosts] en un editor de texto.

    sudo vim /etc/hosts

    Agregue la dirección IP privada de su instancia de Linux de la siguiente manera:

    10.x.x.x Linux_hostname.example.com Linux_hostname
    nota

    Si no especificó la dirección IP en el archivo /etc/hosts, es posible que reciba el siguiente error de DNS al unir la instancia al dominio:

    No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER

    Este error significa que la unión se hizo correctamente, pero el comando [net ads] no pudo registrar el registro DNS en DNS.

  8. Una la instancia de Linux al directorio con el siguiente comando.

    sudo net ads join -U join_account@example.com
    join_account

    El AMAccount nombre s del example.com dominio que tiene privilegios de unión a un dominio. Introduzca la contraseña de la cuenta cuando se le solicite. Para obtener más información sobre cómo delegar estos privilegios, consulte Delegación de privilegios de vinculación a directorios para AWS Managed Microsoft AD.

    example.com

    El nombre de DNS completo del directorio.

    Enter join_account@example.com's password: Using short domain name -- example Joined 'IP-10-x-x-x' to dns domain 'example.com'
  9. Modifique el archivo de configuración PAM. Utilice el siguiente comando para agregar las entradas necesarias para la autenticación de Winbind:

    sudo pam-config --add --winbind --mkhomedir
  10. Abra el archivo de configuración de Name Service Switch [/etc/nsswitch.conf] en un editor de texto.

    vim /etc/nsswitch.conf

    Agregue la directiva de Winbind como se muestra a continuación.

    passwd: files winbind shadow: files winbind group: files winbind
  11. Configure el servicio SSH para permitir autenticación de contraseñas al editar el archivo /etc/ssh/sshd_config.

    1. Abra el archivo /etc/ssh/sshd_config en un editor de texto.

      sudo vim /etc/ssh/sshd_config
    2. Establezca la opción PasswordAuthentication en yes.

      PasswordAuthentication yes
    3. Reinicie el servicio SSH.

      sudo systemctl restart sshd.service

      Otra opción:

      sudo service sshd restart
  12. Una vez que la instancia se haya reiniciado, siga estos pasos para conectarse a ella con cualquier cliente SSH y agregue privilegios raíz para el grupo o usuario del dominio a la lista de sudoers:

    1. Abra el archivo sudoers con el siguiente comando:

      sudo visudo
    2. Agregue los grupos o usuarios necesarios de su dominio de confianza de la siguiente manera y, a continuación, guárdelos.

      ## Adding Domain Users/Groups. %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL %domainname\\groupname ALL=(ALL:ALL) ALL domainname\\username ALL=(ALL:ALL) ALL %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL Trusted_DomainName\\username ALL=(ALL:ALL) ALL

      (En el ejemplo anterior, se utiliza“\<espacio>” para crear el carácter de espacio en Linux).

Ubuntu
  1. Conéctese a la instancia con cualquier cliente SSH.

  2. Configure la instancia de Linux para utilizar las direcciones IP de los servidores DNS proporcionados por AWS Directory Service. Puede hacerlo configurándolo en el conjunto de opciones de DHCP asociado a la VPC o ajustándolo manualmente en la instancia. Si quieres configurarlo manualmente, consulta Cómo asignar un servidor DNS estático a una EC2 instancia privada de Amazon en el AWS Knowledge Center para obtener instrucciones sobre cómo configurar el servidor DNS persistente para tu distribución y versión de Linux en particular.

  3. Asegúrese de que su instancia de Linux esté actualizada.

    sudo apt-get -y upgrade
  4. Instale los paquetes necesarios de Samba o Winbind en la instancia de Linux.

    sudo apt -y install samba winbind libnss-winbind libpam-winbind
  5. Haga una copia de seguridad del archivo smb.conf principal para poder volver a él en caso de que se produzca un error.

    sudo cp /etc/samba/smb.conf /etc/samba/smb.bk
  6. Abra el archivo de configuración original [/etc/samba/smb.conf] en un editor de texto.

    sudo vim /etc/samba/smb.conf

    Complete la información del entorno de dominio de Active Directory como se muestra en el siguiente ejemplo:

    [global] workgroup = example security = ads realm = example.com idmap config * : rangesize = 1000000 idmap config * : range = 1000000-19999999 idmap config * : backend = autorid winbind enum users = no winbind enum groups = no template homedir = /home/%U@%D template shell = /bin/bash winbind use default domain = false
  7. Abra el archivo de host [/etc/hosts] en un editor de texto.

    sudo vim /etc/hosts

    Agregue la dirección IP privada de su instancia de Linux de la siguiente manera:

    10.x.x.x Linux_hostname.example.com Linux_hostname
    nota

    Si no especificó la dirección IP en el archivo /etc/hosts, es posible que reciba el siguiente error de DNS al unir la instancia al dominio:

    No DNS domain configured for linux-instance. Unable to perform DNS Update. DNS update failed: NT_STATUS_INVALID_PARAMETER

    Este error significa que la unión se hizo correctamente, pero el comando [net ads] no pudo registrar el registro DNS en DNS.

  8. Una la instancia de Linux a Active Directory mediante la utilidad net.

    sudo net ads join -U join_account@example.com
    join_account@example.com

    Una cuenta del example.com dominio que tiene privilegios de unión a un dominio. Introduzca la contraseña de la cuenta cuando se le solicite. Para obtener más información sobre cómo delegar estos privilegios, consulte Delegación de privilegios de vinculación a directorios para AWS Managed Microsoft AD.

    example.com

    El nombre de DNS completo del directorio.

    Enter join_account@example.com's password: Using short domain name -- example Joined 'IP-10-x-x-x' to dns domain 'example.com'
  9. Modifique el archivo de configuración PAM. Utilice el siguiente comando para agregar las entradas necesarias para la autenticación de Winbind:

    sudo pam-auth-update --add --winbind --enable mkhomedir
  10. Abra el archivo de configuración de Name Service Switch [/etc/nsswitch.conf] en un editor de texto.

    vim /etc/nsswitch.conf

    Agregue la directiva de Winbind como se muestra a continuación.

    passwd: compat winbind group: compat winbind shadow: compat winbind
  11. Configure el servicio SSH para permitir autenticación de contraseñas al editar el archivo /etc/ssh/sshd_config.

    1. Abra el archivo /etc/ssh/sshd_config en un editor de texto.

      sudo vim /etc/ssh/sshd_config
    2. Establezca la opción PasswordAuthentication en yes.

      PasswordAuthentication yes
    3. Reinicie el servicio SSH.

      sudo systemctl restart sshd.service

      Otra opción:

      sudo service sshd restart
  12. Una vez que la instancia se haya reiniciado, siga estos pasos para conectarse a ella con cualquier cliente SSH y agregue privilegios raíz para el grupo o usuario del dominio a la lista de sudoers:

    1. Abra el archivo sudoers con el siguiente comando:

      sudo visudo
    2. Agregue los grupos o usuarios necesarios de su dominio de confianza de la siguiente manera y, a continuación, guárdelos.

      ## Adding Domain Users/Groups. %domainname\\AWS\ Delegated\ Administrators ALL=(ALL:ALL) ALL %domainname\\groupname ALL=(ALL:ALL) ALL domainname\\username ALL=(ALL:ALL) ALL %Trusted_DomainName\\groupname ALL=(ALL:ALL) ALL Trusted_DomainName\\username ALL=(ALL:ALL) ALL

      (En el ejemplo anterior, se utiliza“\<espacio>” para crear el carácter de espacio en Linux).

Conexión a la instancia de Linux

Cuando un usuario se conecta a la instancia mediante un cliente SSH, se le solicita que indique su nombre de usuario. El usuario puede introducir el nombre de usuario en formato username@example.com o EXAMPLE\username. La respuesta será similar a la siguiente, en función de la distribución de Linux que utilice:

Amazon Linux, Red Hat Enterprise Linux y 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

SUSE Linux

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%