4.2. Configuración de un host RHEL para utilizar AD como proveedor de autenticación
Realice este procedimiento para que el usuario denominado AD_user pueda iniciar sesión en el sistema rhel8_host utilizando la contraseña establecida en la base de datos de usuarios AD de Active Directory en el dominio example.com. En este ejemplo, el dominio EXAMPLE.COM Kerberos corresponde al dominio example.com.
Requisitos previos
- Tienes acceso de root a rhel8_host.
- La cuenta de usuario AD_user existe en el dominio example.com.
- El ámbito de Kerberos es EXAMPLE.COM.
-
rhel8_host no se ha unido a AD mediante el comando
realm join
.
Procedimiento
Cree la cuenta de usuario AD_user localmente sin asignarle una contraseña:
# useradd AD_user
Abra el archivo
/etc/nsswitch.conf
para editarlo y asegúrese de que contiene las siguientes líneas:passwd: sss files systemd group: sss files systemd shadow: files sss
Abra el archivo
/etc/krb5.conf
para editarlo y asegúrese de que contiene las siguientes secciones y elementos:# To opt out of the system crypto-policies configuration of krb5, remove the # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated. includedir /etc/krb5.conf.d/ [logging] default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log [libdefaults] dns_lookup_realm = false ticket_lifetime = 24h renew_lifetime = 7d forwardable = true rdns = false pkinit_anchors = /etc/pki/tls/certs/ca-bundle.crt spake_preauth_groups = edwards25519 default_realm = EXAMPLE.COM default_ccache_name = KEYRING:persistent:%{uid} [realms] EXAMPLE.COM = { kdc = ad.example.com admin_server = ad.example.com } [domain_realm] .example.com = EXAMPLE.COM example.com = EXAMPLE.COM
Cree el archivo
/etc/sssd/sssd.conf
e inserte en él las siguientes secciones y líneas:[sssd] services = nss, pam domains = EXAMPLE.COM [domain/EXAMPLE.COM] id_provider = files auth_provider = krb5 krb5_realm = EXAMPLE.COM krb5_server = ad.example.com
Cambie los permisos del archivo
/etc/sssd/sssd.conf
:# chmod 600 /etc/sssd/sssd.conf
Inicie el demonio de servicios del sistema de seguridad (SSSD):
# systemctl start sssd
Activar SSSD:
# systemctl enable sssd
Abra el archivo
/etc/pam.d/system-auth
y modifíquelo para que contenga las siguientes secciones y líneas:# Generated by authselect on Wed May 8 08:55:04 2019 # Do not modify this file manually. auth required pam_env.so auth required pam_faildelay.so delay=2000000 auth [default=1 ignore=ignore success=ok] pam_succeed_if.so uid >= 1000 quiet auth [default=1 ignore=ignore success=ok] pam_localuser.so auth sufficient pam_unix.so nullok try_first_pass auth requisite pam_succeed_if.so uid >= 1000 quiet_success auth sufficient pam_sss.so forward_pass auth required pam_deny.so account required pam_unix.so account sufficient pam_localuser.so account sufficient pam_succeed_if.so uid < 1000 quiet account [default=bad success=ok user_unknown=ignore] pam_sss.so account required pam_permit.so password requisite pam_pwquality.so try_first_pass local_users_only password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok password sufficient pam_sss.so use_authtok password required pam_deny.so session optional pam_keyinit.so revoke session required pam_limits.so -session optional pam_systemd.so session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid session required pam_unix.so session optional pam_sss.so
Copie el contenido del archivo
/etc/pam.d/system-auth
en el archivo/etc/pam.d/password-auth
. Introduzca yes para confirmar la sobreescritura del contenido actual del archivo:# cp /etc/pam.d/system-auth /etc/pam.d/password-auth cp: overwrite '/etc/pam.d/password-auth'? yes
Pasos de verificación
Solicite un ticket Kerberos (TGT) para AD_user. Introduzca la contraseña de AD_user tal y como se solicita:
# kinit AD_user Password for AD_user@EXAMPLE.COM:
Muestra el TGT obtenido:
# klist Ticket cache: KEYRING:persistent:0:0 Default principal: AD_user@EXAMPLE.COM Valid starting Expires Service principal 11/02/20 04:16:38 11/02/20 14:16:38 krbtgt/EXAMPLE.COM@EXAMPLE.COM renew until 18/02/20 04:16:34
AD_user se ha conectado con éxito a rhel8_host utilizando las credenciales del dominio Kerberos EXAMPLE.COM.