Para habilitar la función True SSO en una máquina virtual Ubuntu/Debian, instale las bibliotecas de las que depende la función True SSO, la entidad de certificación (CA) raíz para poder usar la autenticación de confianza, y Horizon Agent. Si una CA subordinada también emite la autenticación True SSO, debe instalar toda la cadena de certificados de CA raíz y subordinadas. Para completar la configuración de autenticación, debe editar algunos archivos de configuración.
Utilice el siguiente procedimiento para habilitar True SSO con Samba en una máquina virtual Ubuntu/Debian.
Procedimiento
- En la máquina virtual, instale el paquete de soporte de pkcs11.
sudo apt install libpam-pkcs11
- Instale el paquete para libnss3-tools.
sudo apt install libnss3-tools
- Instale el certificado de CA raíz o la cadena de certificados.
- Busque el certificado de CA raíz o la cadena de certificados que descargó y transfiéralos a un archivo PEM.
sudo openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
- Cree el directorio /etc/pki/nssdb para contener la base de datos del sistema.
sudo mkdir -p /etc/pki/nssdb
- El comando certutil le permitirá instalar el certificado CA raíz o la cadena de certificados en la base de datos del sistema /etc/pki/nssdb.
Reemplace el certificado de CA raíz en el siguiente comando de ejemplo con el nombre del certificado de CA raíz en la base de datos del sistema.
sudo certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/certificate.pem
- Cree el directorio /etc/pam_pkcs11/cacerts y copie el certificado de CA raíz o la cadena de certificados allí.
sudo mkdir -p /etc/pam_pkcs11/cacerts
sudo cp /tmp/certificate.pem /etc/pam_pkcs11/cacerts
- Cree un vínculo hash para el certificado de CA raíz o la cadena de certificados. En el directorio /etc/pam_pkcs11/cacerts, ejecute el siguiente comando.
sudo pkcs11_make_hash_link
- Instale el paquete Horizon Agent con True SSO habilitado.
sudo ./install_viewagent.sh -T yes
- Agregue el siguiente parámetro al archivo de configuración personalizada de Horizon Agent /etc/vmware/viewagent-custom.conf. Utilice el siguiente ejemplo, donde NOMBRE_NETBIOS_DEL_DOMINIO es el nombre de NetBIOS del dominio de su organización.
NetbiosDomain=NETBIOS_NAME_OF_DOMAIN
- Edite el archivo de configuración /etc/pam_pkcs11/pam_pkcs11.conf.
- Si es necesario, cree el archivo de configuración /etc/pam_pkcs11/pam_pkcs11.conf. Busque el archivo de ejemplo en /usr/share/doc/libpam-pkcs11/examples, cópielo en el directorio /etc/pam_pkcs11 y cámbiele el nombre por pam_pkcs11.conf. Añada la información de su sistema al contenido del archivo según sea necesario.
- Modifique el archivo de configuración /etc/pam_pkcs11/pam_pkcs11.conf para que incluya contenido similar al siguiente ejemplo.
Nota: Para Ubuntu 20.04 o versiones posteriores, anexe
ms
al final de la línea
use_mappers
.
use_pkcs11_module = coolkey;
pkcs11_module coolkey {
module = /usr/lib/vmware/viewagent/sso/libvmwpkcs11.so;
slot_num = 0;
ca_dir = /etc/pam_pkcs11/cacerts;
nss_dir = /etc/pki/nssdb;
}
mapper ms {
debug = false;
module = internal;
# module = /usr/$LIB/pam_pkcs11/ms_mapper.so;
ignorecase = false;
# ignore domain name
ignoredomain = true;
domain = "DOMAIN.COM"; #<== Replace "DOMAIN.COM" with your organization's domain name
}
use_mappers = digest, cn, pwent, uid, mail, subject, null, ms; #<== For Ubuntu 20.04 or later, append "ms" at end of use_mappers
- En el terminal Linux, establezca los permisos de acceso para el archivo de configuración /etc/krb5.conf en
644
, como se muestra en el siguiente ejemplo.
sudo chmod 644 /etc/krb5.conf
Compruebe que los permisos se hayan modificado.
ls -l /etc/krb5.conf
-rw-r--r-- 1 root root xxx xx xx xxxx /etc/krb5.conf
Nota: Si no modifica los permisos de
/etc/krb5.conf según lo especificado, es posible que la función True SSO no funcione.
- Reinicie la máquina virtual y vuelva a iniciar sesión.