Pour activer la fonctionnalité d'authentification unique réelle sur une machine virtuelle (VM), installez les bibliothèques dont dépend la fonctionnalité d'authentification unique réelle, le certificat d'autorité de certification (CA) racine pour prendre en charge l'authentification approuvée et Horizon Agent. Si l'authentification unique réelle est également émise par une autorité de certification (CA) subordonnée, vous devez installer l'intégralité de la chaîne de certificats d'autorité de certification (CA) racine et subordonnée. Pour terminer la configuration de l'authentification, vous devez modifier certains fichiers de configuration.
Utilisez la procédure suivante pour activer l'authentification unique réelle sur une VM Ubuntu.
Procédure
- Sur la VM Ubuntu, installez le module de support pkcs11.
sudo apt install libpam-pkcs11
- Installez le module libnss3-tools.
sudo apt install libnss3-tools
- Installez le certificat ou la chaîne de certificat d'autorité de certification (CA) racine.
- Localisez le certificat ou la chaîne de certificats d'autorité de certification (CA) racine que vous avez téléchargé et transférez-le vers un fichier PEM.
openssl x509 -inform der -in /tmp/certificate.cer -out /tmp/certificate.pem
- Créez un répertoire /etc/pki/nssdb pour qu'il contienne la base de données système.
sudo mkdir -p /etc/pki/nssdb
- Utilisez la commande certutil pour installer le certificat ou la chaîne de certificats d'autorité de certification (CA) racine dans la base de données système /etc/pki/nssdb.
sudo certutil -A -d /etc/pki/nssdb -n "root CA cert" -t "CT,C,C" -i /tmp/certificate.pem
- Créez un répertoire /etc/pam_pkcs11/cacerts et copiez le certificat ou la chaîne de certificats d'autorité de certification (CA) racine à cet emplacement.
mkdir -p /etc/pam_pkcs11/cacerts
sudo cp /tmp/certificate.pem /etc/pam_pkcs11/cacerts
- Créez un lien de hachage pour le certificat ou la chaîne de certificats d'autorité de certification (CA) racine. Dans le répertoire /etc/pam_pkcs11/cacerts, exécutez la commande suivante.
- Installez le module Horizon Agent, avec l'authentification unique réelle activée.
sudo ./install_viewagent.sh -T yes
- Ajoutez le paramètre suivant au fichier de configuration personnalisé Horizon Agent /etc/vmware/viewagent-custom.conf. Utilisez l'exemple suivant, où NETBIOS_NAME_OF_DOMAINE est le nom NetBIOS du domaine de votre organisation.
NetbiosDomain=NETBIOS_NAME_OF_DOMAIN
- Modifiez le fichier de configuration /etc/pam_pkcs11/pam_pkcs11.conf.
- Si nécessaire, créez le fichier de configuration /etc/pam_pkcs11/pam_pkcs11.conf. Localisez le fichier d'exemple dans /usr/share/doc/libpam-pkcs11/examples, copiez-le dans le répertoire /etc/pam_pkcs11 et renommez le fichier pam_pkcs11.conf. Ajoutez les informations de votre système dans le fichier en fonction des besoins.
- Modifiez le fichier de configuration /etc/pam_pkcs11/pam_pkcs11.conf afin que son contenu soit semblable à l'exemple suivant.
Note : Pour Ubuntu 20,04, ajoutez
ms
à la fin de la ligne
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, append "ms" at end of use_mappers
- Modifier les paramètres auth dans le fichier de configuration PAM.
- Ouvrez le fichier de configuration PAM dans /etc/pam.d/gdm-vmwcred.
- Modifiez le fichier de configuration PAM, comme indiqué dans l'exemple suivant.
auth requisite pam_vmw_cred.so
auth sufficient pam_pkcs11.so try_first_pass
- Modifiez le fichier de configuration /etc/krb5.conf en définissant le mode égal à
644
.
Note : Si vous ne modifiez pas
/etc/krb5.conf comme spécifié, la fonctionnalité d'authentification unique réelle peut ne pas fonctionner.
- Redémarrez la VM et reconnectez-vous.