Outils pour utilisateurs

Outils du site


ateliers:serveurmail:dovecot

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
ateliers:serveurmail:dovecot [2018/01/21 16:53] – [Administration] sakasamaateliers:serveurmail:dovecot [2019/10/28 19:42] – Fix d'une typo sur un lien okhin
Ligne 18: Ligne 18:
     systemctl start dovecot     systemctl start dovecot
  
-__Vérifier statut__ : systemctl status dovecot +__Vérifier statut__ :  
 + 
 +    systemctl status dovecot 
  
  
Ligne 110: Ligne 112:
  
 Puis on relance dovecot (systemctl restart dovecot) Puis on relance dovecot (systemctl restart dovecot)
 +
 +=== Authentification d'utilisateurices virtuelles ===
 +Afin de permettre de créer des comptes mails à des personnes sans leur créer un compte unix, il est nécessaire de gérer des utilisateurices virtuelles. Comme nous avons déjà un qrbre [[ldap]], autant l'utiliser.
 +
 +== Configuration de l'auth dovecot ==
 +Il faut commencer par modifier les directives de configuration de dovecot et de choisir le mode d'identification que l'on veut. Par simplicité, et pour laisser au serveur ldap la gestion de l'identification, on utilisera la technique de l'[[https://wiki.dovecot.org/AuthDatabase/LDAP/AuthBinds|Authentification Bind]] telle que documentée sur le site du projet Dovecot.
 +
 +En pqrticulier; il faut modifier le fichier '''/etc/dovecot/dovecot-ldap.conf.ext''' afin de lui préciser les valeurs nécessaires au fonctionnement sur anarcha:
 +
 +<file conf /etc/dovecot/dovecot-ldap.conf.ext>
 +[...]
 +uris = ldapi://localhost # Nous nous connections localement à notre serveur
 +
 +auth_bind = yes # Pour utiliser la méthode d'auth bind
 +
 +base = dc=anarcha,dc=pink # Notre arbre ldap est structuré sous cette base.
 +
 +user_attrs = =home={%ldap:homeDirectroy},=uid={%ldap:uidNumber},=gid={%ldap:gidNumber}
 +# Nous mappons les attributs ldap (si ils existent) avec leurs équivalents dovecot.
 +# La syntaxe est dérivée de la [[https://doc.dovecot.org/configuration_manual/authentication/user_database_extra_fields/|documentation en ligne]].
 +# Cela nous permet de gérer des utilisateurs réeels (les admins, qui reçoivent aussi des mails)
 +# et virtuels, sans forcer l'utilisation d'un shell ou d'un home global.
 +
 +user_filter = (&(objectClass=inetOrgPerson)(uid=%u))
 +# Ceci est le filtre dlap utilisé pour trouver les utilisateurs dispoant d'une boite mail.
 +# On s'assure que ce sont des inetorPerson, et que l'uid (et pas l'uidNUmber) correspond au
 +# nom d'utilisateur court (sqns le @anarcha.pink à la fin). 
 +# C'est la même syntaxe aue pour les filtres de ldapsearch.
 +
 +pass_attrs = uid=user
 +# Les arguments dont on a besoin pour vérifier le mot de passe de l'utilisateurice et comment
 +# ces champs sont mappés avec les valeurs de l'arbre ldap
 +
 +pass_filter = (&(objectClass=inetOrgPerson)(uid=%u))
 +# Même commentaires que pour user_filter
 +
 +iterate_attrs = uid=user
 +iterate_filters = (objectClass=inetOrgPerson)
 +# Ces attributs et filtres sont utilisés pour lister tous les utilisateurs du système.
 +
 +default_pass_scheme = CRYPT
 +# Les mots de passe que récupèrer dovecot sont, souvent, au format {SCHEME}bla.
 +# Si ce n'est pas le cas, alors on demande au système d'utiliser CRYPT, le même schéma
 +# que pour /etc/shadow par exemple. Et la valeur pqr défaut de l'arbre LDAP.
 +</file>
 +
 +Une fois ce fichier édité, il faut l'activer dans '''/etc/dovecot/conf.d/10-auth.conf''', et penser à désactiver la configuration par défaut afin de n'utliser QUE la config ldap, en commentant et décommentant les bonnes lignes à la fin du fichier
 +
 +<file config /etc/dovecot/conf.d/10-auth.conf>
 +[...]
 +#!include auth-deny.conf.ext
 +#!include auth-master.conf.ext
 +
 +!include auth-ldap.conf.ext
 +#!include auth-system.conf.ext
 +#!include auth-sql.conf.ext
 +#!include auth-passwdfile.conf.ext
 +#!include auth-checkpassword.conf.ext
 +#!include auth-vpopmail.conf.ext
 +#!include auth-static.conf.ext
 +</file>
 +
 +== Ajout de valeurs par défaut ==
 +
 +Comme nous utilison dovecot pour gérer des comptes virtuiels, il est nécessaire de fournir certaines valeurs par défaut, qui ne peuvent pqs être stockées dans l'arbre LDAP, par exemple le numéro d'UID, ou le répertoire HOME.
 +
 +Pour se faire;, il faut modifier les bases d'auth gérées par LDAP (userdb et passdb en l'occurence) gérées dans le fichier '''/etc/dovecot/conf.d/auth-ldap.conf'''
 +
 +<file config /etc/dovecot/conf.d/auth-ldap.conf>
 +passdb {
 +  driver = ldap
 +
 +  # Path for LDAP configuration file, see example-config/dovecot-ldap.conf.ext
 +  args = /etc/dovecot/dovecot-ldap.conf.ext
 +}
 +[...]
 +</file>
 +
 +Rien de bien sorcier jusque là, on dit à dovecot que notre base pour vérifier les mots de passe est gérée par ldap, et aue la configuration de celui-ci est dans le fichier modifié plus haut.
 +
 +<file config /etc/dovecot/conf.d/auth-ldap.conf>
 +[...]
 +userdb {
 +  driver = ldap
 +
 +  # Path for LDAP configuration file, see example-config/dovecot-ldap.conf.ext
 +  args = /etc/dovecot/dovecot-ldap.conf.ext
 +  default_fields = home=/var/mail/%u uid=mail gid=mail
 +}
 +</file>
 +
 +De même pour la base récupérant les informations, on utilise ldap. A noter le champ '''default_fields''' qui permet de fournir des valeurs cohérentes si l'arbre LDAP ne contiens pas toutes les informations. Dans ce cas; on crée un répertoire par utilisateur dans /var/mail, et ce répertoire est géré avec les droits de l'utilisateur '''mail''' appartenant au groupe '''mail''', et aui est l'utilisateur utilisé par dovecot.
 +
 +Il suffit ensuite de redémarrer dovecot.
ateliers/serveurmail/dovecot.txt · Dernière modification : 2020/03/01 15:36 de okhin