Gestion des mots de passe dans Zimbra Collaboration Suite Open-Source Edition

La gestion des mots de passe a toujours été l'un des problèmes les plus importants associés au fonctionnement sûr des systèmes d'information. La possibilité de stocker en toute sécurité et de changer rapidement les mots de passe de plusieurs comptes, la possibilité pour les utilisateurs de réinitialiser en toute sécurité un mot de passe oublié et la possibilité de réinitialiser en toute sécurité un mot de passe administrateur - toutes ces fonctions ne sont pas moins importantes que la politique de sécurité des mots de passe dont nous avons parlé plus tôt. Dans cet article, nous verrons comment ces fonctions sont implémentées dans Zimbra OSE.



Modification du

mot de passe utilisateur et administrateur global Le mot de passe administrateur global est défini lors de l'installation de Zimbra OSE et peut ensuite être modifié dans les paramètres du client Web. Le mot de passe utilisateur est initialement défini lors de la création du compte, cependant, l'administrateur peut activer la modification forcée du mot de passe lorsque l'utilisateur se connecte pour la première fois au client Web afin que l'utilisateur n'oublie pas de définir son propre mot de passe.

Si l'utilisateur oublie son mot de passe, Zimbra OSE fournit une fonction de récupération de mot de passe. Cette fonction, si elle est activée par l'administrateur, permet à l'utilisateur de spécifier une boîte aux lettres de sauvegarde à laquelle un code de confirmation temporaire sera envoyé. Avec ce code unique, un utilisateur peut accéder au client Web Zimbra OSE et changer son mot de passe.

Cependant, si l'administrateur a soudainement oublié le mot de passe de son compte et ne peut donc pas se connecter au client Web pour changer le mot de passe, il peut utiliser l'attribut  setPassword ou simplement  sp sur la ligne de commande. Par exemple, la commande  zmprov sp admin@company.ru qwerty  vous permet de changer le mot de passe administrateur en qwerty sans vous connecter au client Web Zimbra OSE. La même commande peut être utilisée pour modifier le mot de passe de tout autre utilisateur.

Notez également que l'administrateur n'a pas la possibilité d'afficher le mot de passe de l'utilisateur. Cette limitation est due au fait que Zimbra OSE, en principe, ne stocke pas les mots de passe des utilisateurs en texte clair. Au lieu de cela, Zimbra OSE stocke uniquement les hachages de mot de passe salés et, lors de la tentative de connexion, compare le hachage du mot de passe entré par l'utilisateur avec ce qui est stocké sur le serveur LDAP.

Modification du mot de passe lors de l'authentification via AD

Si AD est utilisé pour authentifier les utilisateurs, les mots de passe ne sont pas non plus stockés sur le serveur. Au lieu de cela, Zimbra OSE passe simplement AD à l'entrée utilisateur et reçoit une réponse indiquant si ce compte est authentifié ou non. Et comme toutes les informations de compte sont stockées sur un autre serveur, lors de l'utilisation d'AD externe, il est généralement recommandé de désactiver la fonction de changement de mot de passe automatique dans le client Web Zimbra OSE.

Cependant, il existe un moyen de combiner l'authentification des utilisateurs via AD avec la possibilité de modifier indépendamment le mot de passe des utilisateurs. Cela peut être fait par une extension appelée  Active Directory Change Password . Il modifie la fonctionnalité du bouton de changement de mot de passe dans le client Web Zimbra OSE afin que le mot de passe dans AD change. 

L'extension est assez facile à installer et fonctionne comme suit:

  • L'utilisateur clique sur le bouton de changement de mot de passe
  • Entrer le mot de passe
  • L'extension définit le DN de l'utilisateur
  • Recherche un serveur AD externe
  • Apporte des modifications au mot de passe du compte via une connexion sécurisée

L'extension est installée sur la ligne de commande à l'aide des commandes suivantes:
 
 mkdir -p /opt/zimbra/lib/ext/adpassword
  wget https://github.com/Zimbra-Community/ADPassword/raw/master/out/artifacts/ADPassword_jar/ADPassword.jar -O /opt/zimbra/lib/ext/adpassword/adPassword.jar
  su zimbra
  zmprov md domain.ext zimbraAuthLdapBindDn "%u@company.ru"
  zmprov md domain.ext zimbraAuthLdapSearchBase «CN=Users,DC=DOMAIN,DC=EXT»
  zmprov md domain.ext zimbraAuthLdapSearchBindDn «CN=serviceAccount,CN=Users,DC=DOMAIN,DC=EXT»
  zmprov md domain.ext zimbraAuthLdapSearchBindPassword "*********"
  zmprov md domain.ext zimbraAuthLdapSearchFilter "(samaccountname=%u)"
  zmprov md domain.ext zimbraAuthLdapURL «ldaps://ad.company.ru:636»
  zmprov md domain.ext zimbraExternalGroupLdapSearchBase «CN=Users,DC=DOMAIN,DC=EXT»
  zmprov md domain.ext zimbraExternalGroupLdapSearchFilter "(samaccountname=%u)"
  zmprov md domain.ext zimbraAuthMech «ad»
  zmprov md domain.ext zimbraAuthMechAdmin «ad»
  zmprov md domain.ext zimbraPasswordChangeListener ADPassword
  zmprov gd domain.ext | grep -i ldap | grep -v Gal
  zmprov gd domain.ext | grep -i zimbraPasswordChangeListener
  zmprov md domain.ext zimbraAuthFallbackToLocal FALSE
  zmcontrol restart

De plus, si vos serveurs Zimbra OSE et Active Directory utilisent des certificats SSL différents, vous devez ajouter le certificat AD à la liste de confiance sur le serveur Zimbra OSE. Si les deux systèmes d'information utilisent le même certificat, vous pouvez ignorer cette étape.

Ainsi, après avoir installé cette extension, vos utilisateurs pourront changer leur mot de passe directement dans le client Web Zimbra OSE, même lorsqu'ils utilisent l'authentification à l'aide d'AD.

Réinitialisation de masse du mot de passe

Il s'agit de situations tout à fait acceptables dans lesquelles vous devrez peut-être réinitialiser rapidement les mots de passe pour un grand nombre d'utilisateurs de Zimbra OSE. Dans le cas où le nombre d'utilisateurs est suffisamment important, la réinitialisation manuelle des mots de passe prendra beaucoup de temps, ce qui peut tout simplement être inacceptable dans une situation critique. Un script peut aider à optimiser cette tâche, qui peut réinitialiser automatiquement les mots de passe des utilisateurs d'un seul domaine et d'un serveur de messagerie entier.

Par exemple, réinitialisez les mots de passe de tous les utilisateurs du domaine company.ru. Pour ce faire, connectez-vous au serveur et exécutez la commande  zmprov -l gaa company.ru> /tmp/domainusers.txt . À la suite de l'exécution de cette commande, le fichier texte domainusers.txt sera créé, dans lequel tous les utilisateurs du domaine spécifié par nous seront répertoriés. Si vous ne spécifiez pas de domaine dans cette commande, tous les comptes de ce serveur seront écrits dans le fichier texte.

Après cela, vous pouvez supprimer du fichier texte reçu tous les comptes système, tels que galsync ou spam, ainsi que les utilisateurs dont le mot de passe ne sera pas réinitialisé. Lorsque le fichier est prêt, vous pouvez exécuter le script suivant:

pour i dans `cat / tmp / domainusers.txt`; do newpass = "Z1mBr @` openssl rand -base64 12`0a "&& / opt / zimbra / bin / zmprov sp $ i $ newpass && echo $ i $ newpass >> newlogin.txt && echo $ i && sleep 5s; terminé

Le résultat de ce script sera un fichier newlogin.txt avec de nouveaux mots de passe de compte. Nous vous recommandons de l'enregistrer dans un endroit sûr dès que possible et de supprimer ce fichier du serveur. Après cela, vous pouvez informer les utilisateurs de leurs nouveaux mots de passe afin qu'ils puissent continuer à travailler dans Zimbra OSE.

Mot de passe séparé pour les appareils mobiles

Une autre fonctionnalité intéressante qui devient disponible après l'installation de la suite d'extensions Zextras pour Zimbra OSE est un mot de passe distinct pour entrer dans la boîte aux lettres à partir d'un appareil mobile. En d'autres termes, un mot de passe supplémentaire est créé pour le compte en utilisant son compte sur l'appareil mobile, avec lequel il peut synchroniser son appareil avec la boîte aux lettres, mais ne peut pas se connecter au client Web Zimbra OSE. Cette fonctionnalité peut augmenter considérablement la sécurité de l'utilisation du courrier électronique en dehors du bureau, car l'appareil mobile peut être compromis ou même volé, et la fonction de mot de passe mobile aidera à empêcher le mot de passe du compte réel de tomber entre les mains des attaquants.


La création d'un mot de passe pour les appareils mobiles est assez simple. Cela peut être fait à la fois dans la console d'administration à l'aide du plugin Zextras et sur la ligne de commande. Ainsi, par exemple, en utilisant la commande  zxsuite mobile setAccountMobilePassword manager@company.ru Z1mBr @, vous donnerez à l'utilisateur manager@company.ru le mot de passe Z1mBr @. En utilisant la commande  zxsuite mobile getAccountMobilePassword manager@company.ru, vous pouvez voir le mot de passe mobile de l'utilisateur manager@company.ru, et en utilisant la commande zxsuite mobile unsetAccountMobilePassword manager@company.ru, vous pouvez supprimer complètement le mot de passe mobile de l'utilisateur spécifié. 

Pour toutes questions relatives à la Suite Zextras, vous pouvez contacter le représentant de la société Zextras Ekaterina Triandafilidi par e-mail katerina@zextras.com

All Articles