Cet article suppose que vous utilisez Active Directory pour l'authentification des utilisateurs, que l'authentification unique est effectuée à l'aide de Kerberos et que les utilisateurs de Zimbra OSE correspondent à ceux qui sont entrés dans AD. Rappelez-vous que nous avons déjà écrit sur la configuration de la création automatique d'utilisateurs dans Zimbra OSE à partir d'AD.
Données initiales: Le serveur avec Zimbra 9 est situé sur le domaine madegirah.ru, il utilise le type d'authentification AD. Le serveur AD se trouve à MADEGIRAH.LOCAL.
Le principe de la configuration de SSO dans ce cas sera assez simple. Dans le cadre de celui-ci, nous:
- Créons un utilisateur spécial, le soi-disant «preneur de tickets», qui émettra des tickets aux utilisateurs pour authentification
- Créons un fichier Keytab dans Kerberos
- Configurons l'utilitaire SPNEGO et le serveur Zimbra OSE lui-même pour fonctionner avec Kerberos
- Configurons les navigateurs et les clients de messagerie pour qu'ils fonctionnent avec SSO.
Veuillez noter qu'il est nécessaire de sauvegarder tous les fichiers lorsque vous y apportez des modifications.
Tout d'abord, nous devons créer un nouveau compte zimbra dans AD et l'empêcher de changer le mot de passe.
Après cela, sur le contrôleur de domaine, créez une série d'enregistrements SPN pour celui-ci. Dans notre cas, ce seront les principaux pour les protocoles http, pop, imap et smtp. Pour les ajouter à votre compte zimbra, vous devez exécuter les commandes une par une
- setspn -S HTTP / madegirah.ru zimbra
- setspn -S POP / madegirah.ru zimbra
- setspn -S IMAP / madegirah.ru zimbra
- setspn -S SMTP / madegirah.ru zimbra
Après cela, vérifiez que tous les principaux requis ont été ajoutés à l'utilisateur à l'aide de la commande setspn –L zimbra.
Après cela, créez un dossier C: \ keys sur le contrôleur de domaine, dans lequel nous placerons les fichiers keytab générés à l'aide de Kerberos.
Générons notre premier keytab en utilisant cette commande: ktpass -out c: \ keys \ jetty.keytab -princ HTTP/madegirah.ru@MADEGIRAH.LOCAL -mapUser zimbra -mapOp set -pass ******** -crypto RC4 -HMAC-NT -pType KRB5_NT_PRINCIPAL Crée un
keytab principal unique . Nous devons maintenant y ajouter 3 autres principaux. Cela se fait à l'aide des commandes suivantes:
- ktpass -princ IMAP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c: \ keys \ jetty.keytab -out c: \ keys \ jetty. nouveau.keytab
- ktpass -princ POP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c:\keys\jetty.new.keytab -out c:\keys\jetty.new1.keytab
- ktpass -princ SMTP/madegirah.ru@MADEGIRAH.LOCAL -mapuser zimbra -pass ******** -crypto All -ptype KRB5_NT_PRINCIPAL -in c:\keys\jetty.new1.keytab -out c:\keys\jetty.new2.keytab
En conséquence, le fichier c: \ keys \ jetty.new2.keytab contiendra tous les principaux requis. Supprimons tous les keytabs obtenus lors de l'exécution de l'instruction, à l'exception de jetty.new2.keytab. Nous le renommerons jetty.keytab et le copierons sur le serveur avec Zimbra OSE 9 dans les dossiers / opt / zimbra / data / mailboxd / spnego / et / opt / zimbra / jetty /. Modifiez les droits d'accès au fichier keytab à l'aide des
commandes chown zimbra: zimbra /opt/zimbra/data/mailboxd/spnego/jetty.keytab
chown zimbra: zimbra /opt/zimbra/jetty/jetty.keytab Commençons
maintenant à configurer la collaboration intégrée Zimbra Suite de l'utilitaire SPNEGO, qui fonctionnera avec le fichier .keytab précédemment créé. Vous pouvez configurer SPNEGO à l'aide des commandes suivantes:
sudo su - zimbra
zmprov mcf zimbraSpnegoAuthEnabled TRUE
MCF zimbraSpnegoAuthRealm MADEGIRAH.LOCAL zmprov
zmprov ms madegirah.ru zimbraSpnegoAuthTargetName les HTTP / madegirah.ru
zmprov ms madegirah.ru zimbraSpnegoAuthPrincipal les HTTP / madegirah.ru
zmprov ms madegirah.ru zimbraImapSaslGssapiEnabled à TRUE
zmprov ms madegirah.ru zimbraPop3SaslGssapiEnabled à TRUE
zmprov md madegirah.ru zimbraAuthKerberos5Realm MADEGIRAH. LOCAL
zmprov md madegirah.ru zimbraWebClientLoginURL '/ service / spnego'
zmprov md madegirah.ru zimbraWebClientLogoutURL '../?sso=1'
Nous attirons votre attention sur le fait que la teinture SPNEGO est globale, ce qui signifie que tous les domaines de votre serveur Zimbra doit utiliser le même Active Directory pour l'authentification.
L'étape suivante consiste à convertir le fichier de paramètres /opt/zimbra/jetty/etc/krb5.ini sous la forme suivante:
[libdefaults]
default_realm = MADEGIRAH.local
dns_lookup_realm = no
dns_lookup_kdc = no
kdc_timesync = 1
ticket_lifetime = 24h
default_keytab_name = FILE:/opt/zimbra/data/mailboxd/spnego/jetty.keytab
default_tgs_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = arcfour-rc4-md5 rc4-hmac des-cbc-crc des-cbc-md5
[realms]
MADEGIRAH.local = {
kdc = DC.MADEGIRAH.LOCAL
admin_server = DC.MADEGIRAH.LOCAL
default_domain = MADEGIRAH.LOCAL
}
[domain_realm]
madegirah.local = MADEGIRAH.LOCAL
.madegirah.local = MADEGIRAH.LOCAL
.local = MADEGIRAH.LOCAL
[appdefaults]
autologin = true
forwardable=true
Ceci termine la configuration côté serveur et il ne reste plus qu'à apporter quelques modifications aux paramètres côté utilisateur. En particulier, les navigateurs doivent être configurés pour fonctionner avec SPNEGO. Pour Firefox, entrez about: config dans la barre d'adresse et entrez network.neg dans la zone de recherche. Dans les champs affichés contenant le mot uris dans le nom, spécifiez la valeur madegirah.ru, ou
https://
.
Dans le cas d'Internet Explorer, ajoutez madegirah.ru à l'intranet local . Vous pouvez également le faire via des stratégies de groupe. Google Chrome récupère les paramètres d'Internet Explorer.
Pour l'authentification SSO dans le client de messagerie Thunderbird, vous devez spécifier le type d'authentification GSSAPI lors de la configuration de votre compte. C'est pour que cela fonctionne que nous avons précédemment ajouté des principaux pour IMAP, POP et SMTP. Veuillez noter qu'Outlook ne prend pas en charge ce type d'authentification lors de l'utilisation de POP / IMAP et SMTP en raison de restrictions client.
Une autre nuance désagréable peut être un avertissement concernant une page non sécurisée lors de l'utilisation d'un certificat auto-signé dans Zimbra OSE. Cette nuance n'est pas critique, cependant, l'avertissement qui apparaît régulièrement contredit le principe même de la commodité de la technologie Single Sign-On. Pour le supprimer, vous devez installer le certificat Zimbra OSE sur la machine cible.
Pour ce faire, les commandes suivantes sont nécessaires sur le serveur Zimbra:
sudo su
cd / opt / zimbra / ssl / zimbra / ca
openssl x509 -in ca.pem -outform DER -out ~ / zimbra.cer
Après cela, le certificat reçu doit être transféré sur la machine cible et double-cliquez dessus. Dans la fenêtre qui s'ouvre, vous devez sélectionner "Installer le certificat" et l'importer dans l'assistant d'importation de certificat. La seule mise en garde lors de son installation est que lorsque vous choisissez un magasin pour un certificat, vous devez le placer dans le magasin «Autorités de certification racines de confiance». En outre, vous pouvez installer ce certificat via la stratégie de groupe.
Une fois que ce certificat est spécifié comme approuvé, l'avertissement lors de la connexion au client Web Zimbra OSE et lors de l'utilisation de Thunderbird cesse d'apparaître.