Para admitir True SSO en un escritorio Ubuntu, integre el escritorio con un dominio de Active Directory mediante las soluciones Samba y Winbind.
Utilice el siguiente procedimiento para integrar un escritorio Ubuntu con un dominio de AD.
Algunos ejemplos incluidos en el procedimiento utilizan valores de marcador de posición para representar entidades en su configuración de red, como el nombre de host de su escritorio Ubuntu. Reemplace los valores de marcador de posición con información específica de su configuración, tal y como se describe en la siguiente tabla.
Valor del marcador de posición |
Descripción |
DIRECCIÓN_IP_dns |
Dirección IP del servidor de nombres DNS |
midominio.com |
Nombre DNS de su dominio de AD |
MIDOMINIO.COM |
Nombre DNS de su dominio de AD, en mayúsculas |
mihost |
Nombre del host de su escritorio Ubuntu |
MIDOMINIO |
Nombre DNS del grupo de trabajo o el dominio NT que incluye su servidor Samba, en mayúsculas |
nombredehost-ads |
Nombre de host del servidor de AD |
usuario-admin |
Nombre de usuario del administrador del dominio de AD |
Requisitos previos
- El DNS puede resolver el servidor de Active Directory (AD) en el sistema Linux.
- El protocolo de tiempo de redes (NTP) está configurado en el sistema Linux.
Procedimiento
- En su escritorio Ubuntu, instale los paquetes samba y winbind.
sudo apt install samba krb5-config krb5-user winbind libpam-winbind libnss-winbind
- Cuando se le solicite, configure las opciones de autenticación de Kerberos tal como se muestra a continuación.
- En Reino predeterminado de la versión 5 de Kerberos, introduzca el nombre de DNS de su dominio de AD en mayúsculas.
Por ejemplo, si el nombre del dominio de AD es
midominio.com, introduzca
MIDOMINIO.COM.
- En Servidores de Kerberos para su reino, introduzca el nombre de host de su servidor AD (representado como nombrehost_ads en los ejemplos de este procedimiento).
- En Servidor administrativo para su reino de Kerberos, introduzca de nuevo el nombre de host de su servidor AD.
- Actualice la configuración PAM.
- Abra la página de configuración de PAM.
- Seleccione Crear el directorio del usuario (home) al iniciar sesión y, a continuación, seleccione Aceptar.
- Edite el archivo de configuración /etc/nsswitch.conf, tal como se muestra en el ejemplo siguiente.
passwd: compat winbind
group: compat winbind
shadow: compat
gshadow: files
- Para asegurarse de que el archivo generado automáticamente resolv.conf hace referencia a su dominio de AD como un dominio de búsqueda, edite la opción NetworkManager con la conexión de su sistema.
- Abra el panel de control de NetworkManager y desplácese a Ajustes de IPv4 de la conexión de su sistema. En Método, seleccione Solo direcciones automáticas (DHCP). En Servidores DNS, introduzca la dirección IP de su servidor DNS (representado como DIRECCIÓN_IP_dns en los ejemplos de este procedimiento). A continuación, haga clic en Guardar.
- Edite el archivo de configuración de la conexión de su sistema, que se encuentra en /etc/NetworkManager/system-connections. Utilice el siguiente ejemplo.
[ipv4]
dns=dns_IP_ADDRESS
dns-search=mydomain.com
ignore-auto-dns=true
method=auto
Nota: Cuando se crea un nuevo escritorio virtual de clones instantáneos, se añade un nuevo adaptador de red virtual. Cualquier ajuste del adaptador de red (por ejemplo, el servidor DNS) que aparezca en la plantilla del escritorio virtual, se perderá cuando se añade el nuevo adaptador de red al escritorio virtual de clones instantáneos. Para evitar que se pierda la configuración del servidor DNS al añadir el nuevo adaptador de red a un escritorio virtual clonado, deberá especificar un servidor DNS en su sistema Linux.
- Especifique el servidor DNS editando el archivo de configuración /etc/resolv.conf, tal y como se muestra en el ejemplo siguiente.
nameserver dns_IP_ADDRESS
search mydomain.com
- Reinicie el sistema y vuelva a iniciar sesión.
- Edite el archivo de configuración /etc/hosts, tal y como se muestra en el ejemplo siguiente.
127.0.0.1 localhost
127.0.1.1 myhost.mydomain.com myhost
- Edite el archivo de configuración /etc/samba/smb.conf, tal y como se muestra en el siguiente ejemplo.
[global]
security = ads
realm = MYDOMAIN.COM
workgroup = MYDOMAIN
idmap uid = 10000-20000
idmap gid = 10000-20000
winbind enum users = yes
winbind enum groups = yes
template homedir = /home/%D/%U
template shell = /bin/bash
client use spnego = yes
client ntlmv2 auth = yes
encrypt passwords = yes
winbind use default domain = yes
restrict anonymous = 2
kerberos method = secrets and keytab
winbind refresh tickets = true
- Reinicie el servicio smbd.
sudo systemctl restart smbd.service
- Edite el archivo de configuración /etc/krb5.conf de manera que tenga un contenido similar al del ejemplo siguiente.
[libdefaults]
default_realm = MYDOMAIN.COM
dns_lookup_realm = true
dns_lookup_kdc = true
[realms]
MYDOMAIN.COM = {
kdc = ads-hostname
admin_server = ads-hostname
}
[domain_realm]
.mydomain.com = MYDOMAIN.COM
mydomain.com = MYDOMAIN.COM
- Una su escritorio Ubuntu al dominio de AD.
- Inicie un ticket de Kerberos.
sudo kinit admin-user
Cuando se le solicite, introduzca su contraseña de administrador.
- Compruebe que el ticket se ha creado correctamente.
sudo klist
Este comando le permitirá consultar información sobre el ticket, incluida la fecha de inicio válida y la fecha de expiración.
- Cree un archivo keytab de Kerberos.
sudo net ads keytab create -U admin-user
- Únase al dominio de AD.
sudo net ads join -U admin-user
- Reinicie y verifique el servicio Winbind.
- Reinicie el servicio Winbind.
sudo systemctl restart winbind.service
- Para verificar el servicio Winbind, ejecute los siguientes comandos y compruebe que devuelven el resultado correcto.
- wbinfo -u
- wbinfo -g
- getend passwd
- getend group
- Reinicie el sistema y vuelva a iniciar sesión.