Bonne configuration dovecot (+exim)

Bonjour à tous et à toutes,

voila je viens vers vous afin de vous demander un petit avis concernant la configuration d’un serveur de mail.

Donc j’ai un serveur qui tourne sous Debian Wheezy, et j’ai installé exim et dovecot. tout est «correctement» configuré (du moins je le suppose).

J’utilise dovecot avec une base de donnée sqlite pour l’identification

et le transport Exim ressemble à ça :

[quote]dovecot:
driver = pipe
command = /usr/lib/dovecot/deliver
message_prefix =
message_suffix =
log_output
delivery_date_add
envelope_to_add
return_path_add
temp_errors = 64 : 69 : 70: 71 : 72 : 73 : 74 : 75 : 78
[/quote]

donc j’ai créé une boite mail pour tester, et je me retrouve avec le message d’erreur suivant :

[quote]Dec 3 08:44:20 HOST dovecot: master: Dovecot v2.1.7 starting up (core dumps disabled)
Dec 3 08:44:38 HOST dovecot: imap-login: Login: user=USER@DOMAIN.TLD, method=PLAIN, rip=RIP, lip=LIP, mpid=302, TLS, session=
Dec 3 08:44:38 HOST dovecot: imap(USER@DOMAIN.TLD: Initialization failed: Namespace ‘’: mkdir(/var/mail/DOMAIN.TLD) failed: Permission denied
Dec 3 08:44:38 HOST dovecot: imap(USER@DOMAIN.TLD): Error: Invalid user settings. Refer to server log for more information.[/quote]

(j’ai configuré les boites mailbox de la sorte : /var/mail/DOMAIN.TLD/USER)

Donc quand je regarde les droits sur /var/mail j’ai :

dans mon /etc/passwd j’ai :

et ma conf SQLITE (password query) ressemble à ça :

password_query = SELECT user||'@'||domain as user, password, 103 AS userdb_uid, 106 AS userdb_gid \ FROM box WHERE user = '%n' AND domain = '%d' AND enable=1;

j’ai configuré la variable suivante :

[quote]# Group to enable temporarily for privileged operations. Currently this is

used only with INBOX when either its initial creation or dotlocking fails.

Typically this is set to “mail” to give access to /var/mail.

#mail_privileged_group =
mail_privileged_group = mail
[/quote]

cependant je soupçonne devoir configurer les variables :

Voila, si quelqu’un avait une piste ? une idée ?

Je vous remercie !

Que donne la commande dovecot -n ? (en root)

ceci fluo :

edit:

je me demande si j’ai pas oublié un petit truc ici :

[quote]protocols = " imap"
service imap-login {
inet_listener imaps {
port = 993
ssl = yes
}[/quote]

protocols devrait valoir imaps et non pas imap, non ?

[quote]

edit:

je me demande si j’ai pas oublié un petit truc ici :

[quote]protocols = " imap"
service imap-login {
inet_listener imaps {
port = 993
ssl = yes
}[/quote]

protocols devrait valoir imaps et non pas imap, non ?[/quote]
=> Non, car l’erreur du log ne fait pas allusion au ssl. Et même si tu commente ces paramètres ssl, tu auras toujours les mêmes erreurs.

Pour l’instant, tu cherches, à te connecter aux boites aux lettres des utilisateurs unix, des utilisateurs virtuels ou les deux ?

Et que donne la commande postconf -n (en root) ?

uniquement boites d’utilisateurs virtuel (dans base de données SQLITE)

le résultat de la commande donne :

^^ et le aptitude install postconf (on ne sais jamais ?)

[quote]Impossible de trouver un paquet dont le nom ou la description corresponde à « postconf »
Impossible de trouver un paquet dont le nom ou la description corresponde à « postconf »
[/quote]

[quote=“fluo”][quote]
Et que donne la commande postconf -n (en root) ?[/quote][/quote]

[quote=“fluo”][quote=“fluo”][quote]
Et que donne la commande postconf -n (en root) ?[/quote][/quote][/quote]

je suis en root ^^

edit: A savoir que j’utilise EXIM et pas postfix (je suppose que postconf lié à ça)

Zut, c’est vrai, tu utilises exim. Postfix aurait été plus simple car presque tout le monde utilise postfix, mais peu de personnes utilisent exim (et donc moins de retours sur les forum).

Là, je dois m’absenter, mais pour les utilisateurs virtuels, t’est obligé de créer un utilisateur unix, par exemple vmail, dans /var/mail/ pour stocker les boites mails des utilisateurs virtuels. Car dovecot se sert des droits de vmail pour accéder aux boites mails des utilisateurs virtuels.

[quote=“fluo”]Zut, c’est vrai, tu utilises exim. Postfix aurait été plus simple car presque tout le monde utilise postfix, mais peu de personnes utilisent exim (et donc moins de retours sur les forum).

Là, je dois m’absenter, mais pour les utilisateurs virtuels, t’est obligé de créer un utilisateur unix, par exemple vmail, dans /var/mail/ pour stocker les boites mails des utilisateurs virtuels. Car dovecot se sert des droits de vmail pour accéder aux boites mails des utilisateurs virtuels.[/quote]

c’est bien ce qu’il me semblait avoir lu dans la doc, je vais attendre ton retour :smiley:

Peux tu poster ici la configuration de exim ?

Quel est le chemin des boite aux lettres des utilisateurs unix ?

la conf exim ? y a beaucoup de fichier… lol

[quote]dc_eximconfig_configtype='internet’
dc_other_hostnames=‘HOSTNAME’
dc_local_interfaces=‘0.0.0.0.465’ // port 465
dc_readhost=’‘
dc_relay_domains=’'
dc_minimaldns=‘false’
dc_relay_nets=’‘
dc_smarthost=’'
CFILEMODE='644’
dc_use_split_config=‘false’
dc_hide_mailname=’'
dc_mailname_in_oh='true’
dc_localdelivery=‘mail_spool’
[/quote]

pour le transport dovecot, c’est posté dans le message initial du topic.

dans /etc/dovecot/conf.d/10-mail.conf j’ai déclaré la valeur suivante :

[quote=“AnGe7”]
pour le transport dovecot, c’est posté dans le message initial du topic.

dans /etc/dovecot/conf.d/10-mail.conf j’ai déclaré la valeur suivante :

=> ça m’étonnerais que ce soit /var/mail/%d/%n pour les utilisateurs unix.

Pour mettre en place les utilisateurs virtuels dans dovecot, il faut d’abord mettre en place les utilisateurs virtuels dans la configuration d’exim.

Comme je ne connais pas exim, je ne peux t’aider davantage, désolé.

Quoiqu’il en soit sur l’IRC exim je me suis fais viré parce que mon problème ne concerne en aucun cas EXIM pour eux xD

edit: ma conf dovecot dans exim :

Dans le fichier /etc/exim4/conf.d/transport/20-dovecot.conf j’ai mis :

comme indiqué ici : palkeo.com/sys/serveur_mail.html mais du coup je doute très fortement que ça soit exacte. Notamment quand je vois ce qui est marqué ici :

wiki2.dovecot.org/HowTo/VirtualhostingWithExim

mais je suis pas sure de bien comprendre…

Salut,
Alors effectivement, il y a un problème de droits.

Soit tes boîtes mails stockés dans ton “/var/mail/” , il faut que le répertoire “/var/mail” appartienne au groupe/user faisant le lien entre les users virtuels et un user système (jsais pas si je suis très clair la).

En gros, moi mon répertoire c’est “/home/vmail”, voici ces droits :

# ll /home/vmail/ total 4,0K drwx------ 14 virtualuser virtualuser 4,0K déc. 2 09:52 ns352217.ovh.net
Comme tu la compris, c’est l’user “virtualuser” qui fait le lien users virtuels/machine

Sinon, bon je suis pas pro sur exim, mais tu dois surement devoir définir quelque part une UID et une GID qui sera utilisé par/pour les users virtuels. Par exemple, pour postfix j’ai du ajouté ca dans ma config quand je suis passé en mode users virtuels :

[code]######Modification config pour passage en utilisateurs virtuels
virtual_uid_maps = static:2010
virtual_gid_maps = static:2010
virtual_mailbox_base = /home/vmail

virtual_transport = dovecot

virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_mailbox_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
relay_domains = mysql:/etc/postfix/mysql_relay_domains.cf
[/code]
Donc le lien avec une UID/GID , et ensuite vers les fichiers contenant les informations de connexion à la BDD et avec les query de requête SQL. Tu dois rentré le même genre d’information dans la config d’exim4, le 2nd lien que tu fournis ressemble à ca :slightly_smiling:.

Ensuite, pour la partie /etc/dovecot/conf.d/10-mail.conf

[quote]mail_location = maildir:/var/mail/%d/%n[/quote], ca me parait “bizarre” mais pas faux, “%d” correspond au domaine virtuel, et “%n” au “name” de l’utilisateur. C’est de cette manière qu’est organisé mon répertoire, mais j’ai pas ca dans mon fichier de conf dovecot, il contient : mail_location = maildir:~/mail:LAYOUT=fs par contre dans la configuration de dovecot j’ai sensiblement la même chose que toi :

# doveconf -n mail_location = maildir:/home/vmail/%d/%n:LAYOUT=fs:INDEX=/home/vmail/%d/%n/indexes

Donc ca sonne pas faux, pour l’instant ton message d’erreur, c’est une erreur de dovecot (IMAP) aucun rapport avec EXIM.
Ton erreur est pour l’instant un problème de droit, donc faut changer les droits de ton répertoire vmail, mais si t’as pas déclarer d’user pour faire office de “facteur” (lien users virtuels/physique) ca ira jamais.

J’espère avoir pu t’éclairer/te donner des pistes, par contre j’utilise postfix et pas exim donc ca va être difficile de t’aider.

donc j’ai configuré de tel sorte :

j’ai ajouté un utilisateur vmail

cet utilisateur je lui ai associé les groupes mail ainsi que Debian-exim

Dans Exim j’ai configuré mon transport de la sorte :

[quote]
dovecot_virtual_delivery:
driver = pipe
command = /usr/local/libexec/dovecot/dovecot-lda -d $local_part@$domain -f $sender_address
message_prefix =
message_suffix =
delivery_date_add
envelope_to_add
return_path_add
log_output
user = vmail
group = vmail
temp_errors = 64 : 69 : 70: 71 : 72 : 73 : 74 : 75 : 78[/quote]

Ok, donc là j’ai bien défini vmail comme user et group.

et enfin mon fichier de conf dovecot (dovecot -n) :

Mon dossier /var/mail à les droits suivants :

et même avec ça, j’ai toujours la même erreur à savoir :

Toujours pas de piste ? :frowning:

J’ai résolu mon problème en ajoutant l’utilisateur «vmail» au groupe «mail».

Dans mon /etc/group j’ai :

maitenant je me retrouve avec l’erreur EXIM :

qui je suppose est liée à ça :

exim.org/exim-html-4.50/doc/ … tml#IX1432

Cependant, je ne veux pas désactivé cette synchronisation, je souhaite qu’elle fonctionne.

Il s’avère qu’il s’agissait d’un problème lié au fait que dans Evolution j’ai configuré mon compte comme utilisant le SSL et que le SSL était mal configuré derrière, du coup ça bloquait,

[strike]maintenant je me retrouve avec l’erreur suivante :

[quote]2013-12-10 10:19:23 exim 4.80 daemon started: pid=10873, -q30m, listening for SMTP on port 465 (IPv4)
2013-12-10 10:19:23 Start queue run: pid=10875
2013-12-10 10:19:23 End queue run: pid=10875

2013-12-10 10:19:38 H=HOSTNAME ([192.168.0.11]) [IP] F=USER@DOMAIN.TLD rejected RCPT : relay not permitted
2013-12-10 10:19:39 unexpected disconnection while reading SMTP command from HOSTNAME ([192.168.0.11]) [IP]
[/quote][/strike]

Edit: Bon, ok je vais passé pour un gros naze mais bon, on sait-on jamais, peux être qu’un jour un mec comme moi aura le même soucis, en fait, au moment de l’installation d’exim j’ai choisi l’option «NE PAS SPLITER LA CONF» du coup, toute la conf que j’ai créée / modifiée dans conf.d/ était jamais prise en compte… forcément maintenant ça marche… je laisse le topic ouvert au cas où je me retrouverais avec une nouvelle erreur bloquante mais ça n’a pas l’air pour le moment.

Est-ce que quelqu’un aurait des informations concernant le message suivant :

[quote]lowest numbered MX record points to local host
temporarily rejected RCPT : lowest numbered MX record points to local host[/quote]

merci d’avance,