Pour configurer l'authentification Kerberos pour Active Directory, suivez les étapes ci-après.
Pour bénéficier de toutes les fonctionnalités offertes par l'authentification Kerberos, il est nécessaire d'indiquer les informations d'identification d'un utilisateur disposant d'un accès en écriture à Active Directory. Cet utilisateur sert à lire les utilisateurs et à supprimer les entrées d'ordinateur du répertoire.
Vous devez configurer le serveur Active Directory et les hôtes Oracle VDI avant de configurer le répertoire d'utilisateurs dans l'interface Oracle VDI Manager :
L'authentification Kerberos doit être activée dans Active Directory.
Elle doit déjà être activée en tant que configuration par défaut.
Assurez-vous que chaque forêt Active Directory possède un serveur de catalogue global.
Dans chaque forêt, configurez un contrôleur de domaine en tant que serveur de catalogue global.
Définissez le Niveau fonctionnel de la forêt.
Si le Contrôleur de domaine fonctionne sous Microsoft Windows Server 2008 R2, le Niveau fonctionnel de la forêt doit être défini sur Windows Server 2008 ou Windows Server 2008 R2 (et non pas sur la valeur utilisée par défaut, Windows Server 2003). Pour plus d'informations sur le Niveau fonctionnel de la forêt, reportez-vous à la documentation de Microsoft.
Synchronisez l'heure des hôtes Oracle VDI avec celle du serveur Active Directory.
Pour vérifier que les horloges de tous les hôtes sont synchronisées, utilisez le logiciel Network Time Protocol (NTP) ou la commande rdate.
Par exemple, utilisez ntpdate
mon.hôte.windows
.
Dans un environnement de production, cela convient mieux qu'un serveur de temps NTP.
Modifiez le fichier de configuration Kerberos par défaut du système dans les hôtes Oracle VDI.
Le fichier de configuration Kerberos par défaut du système est :
/etc/krb5/krb5.conf
dans les
plates-formes Oracle Solaris.
/etc/krb5.conf
dans les plates-formes
Oracle Linux.
La mise en majuscules des noms de domaine dans le fichier de configuration Kerberos est très importante pour vous assurer que vous respecter la mise en majuscules, comme indiqué dans l'exemple.
Le fichier de configuration Kerberos doit au moins comporter les sections suivantes :
[libdefaults]
: définit les
paramètres par défaut de
l'authentification Kerberos. Vous devez
définir le domaine
default_realm
.
[realms]
: définit les KDC pour
chaque domaine Kerberos. Un domaine peut avoir plusieurs
kdc
. Le port peut être omis si le
port par défaut 88 est utilisé.
Pour que les utilisateurs finaux puissent mettre à
jour leur mot de passe (voir la
Section 7.2.6, « Modification du mot de passe utilisateur »),
les détails du serveur chargé du changement
de mot de passe pour chaque domaine Kerberos doivent
être spécifiés. Les entrées
kpasswd_server
et
admin_server
identifient le serveur
d'administration Kerberos qui gère le
changement de mot de passe. Lorsque
kpasswd_server
est omis,
admin_server
est utilisé
à la place. Le port peut être omis en cas
d'utilisation du port 464 par défaut.
Format de la définition d'un domaine :
REALM_NAME
= { kdc =host:port
kdc =host:port
... kpasswd_server =host:port
admin_server =host:port
kpasswd_protocol = SET_CHANGE }
[domain_realm]
: associe les domaines
Active Directory aux domaines Kerberos.
Vous trouverez ci-dessous un exemple du fichier de configuration Kerberos pour une forêt à un seul domaine :
[libdefaults] default_realm = MY.COMPANY.COM [realms] MY.COMPANY.COM = { kdc = my.windows.host admin_server = my.windows.host kpasswd_protocol = SET_CHANGE } [domain_realm] .my.company.com = MY.COMPANY.COM my.company.com = MY.COMPANY.COM
Vous pouvez vérifier que Kerberos et la
résolution de noms requise sont correctement
configurés à l'aide de
getent
, nslookup
et
kinit
.
Exemple :
# getent hosts <mon.hôte.windows> doit renvoyer l'adresse IP et le nom d'hôte.
# getent hosts <IP_de_mon.hôte.windows> doit renvoyer l'adresse IP et le nom d'hôte.
# nslookup -query=any _gc._tcp.<ma.société.com> doit résoudre le domaine.
# kinit -V <super-user@MA.SOCIETE.COM> doit réussir.
Redémarrez le service VDA.
# /opt/SUNWvda/sbin/vda-service restart
Configurez le répertoire d'utilisateurs dans Oracle VDI Manager.
Dans Oracle VDI Manager, sélectionnez Paramètres → Société.
Dans le tableau Sociétés, cliquez sur Nouveau pour ouvrir l'Assistant New Company (Nouvelle société).
Sélectionnez Active Directory et cliquez sur Suivant.
Sélectionnez Authentification Kerberos.
Entrez le domaine d'Active Directory.
Par exemple,
ma.société.com
.
Entrez le nom principal d'un utilisateur disposant de suffisamment de privilèges pour écrire dans Active Directory.
Par exemple, super-utilisateur
ou
super-utilisateur@ma.société.com
.
Entrez le mot de passe de cet utilisateur.
Cliquez sur Suivant pour vérifier vos choix avant de terminer la configuration.
Pour plus d'informations sur l'authentification Kerberos :
Page principale de krb5.conf(4)
:
http://download.oracle.com/docs/cd/E19253-01/816-5174/6mbb98ufn/index.html
Service Kerberos sous Oracle Solaris : http://download.oracle.com/docs/cd/E19253-01/816-4557/seamtm-1/index.html
Kerberos sous Oracle Linux : http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Deployment_Guide/ch-kerberos.html
Oracle VDI prend en charge la fonction de listes blanche et noire pour l'authentification Kerberos. Cette fonction est un ensemble facultatif de listes de noms d'hôtes pouvant être spécifiées pour une société, et permet de mieux contrôler les serveurs Active Directory que Oracle VDI peut interroger.
La liste blanche du répertoire constitue la liste des serveurs de catalogue global Active Directory (séparés par des virgules) systématiquement utilisés pour les requêtes LDAP. L'ordre des serveurs dans la Liste blanche est important. Lorsque Oracle VDI ne peut pas contacter le premier serveur de la liste, il passe au suivant. La liste noire du répertoire est la liste des serveurs Active Directory (séparés par des virgules) qui ne sont jamais utilisés pour les requêtes LDAP. Les paramètres de la liste noire sont prioritaires sur ceux de la liste blanche.
Cette fonction ne peut être activée que dans l'interface de ligne de commande.