dans un premier temps, nous allons nous occuper de la conf général de dovecot
mettre au debut du fichier /etc/doveot/dovecot.conf pour isoler la tâche de login
login_chroot = yes
login_user = dovecot
login_process_per_connection = yes
Dans le protocole imap, nous allons rajouter se paramètre qui permet de modifier le comportement de Dovecot
face à certains clients mails et de leurs bugs éventuels
protocol imap {
imap_client_workarounds = outlook-idle delay-newmail netscape-eoh tb-extra-mailbox-sep
}
outlook-idle : Outlook et Outlook Express ne coupent jamais avec une commande IDLE.
Si Dovecot ne reçoit rien pendant 30 minutes, il coupe la connexion.
C’est correct, mais Outlook Express ne se reconnecte pas et vous ne voyez donc plus l’arrivée de nouveaux messages.
netscape-eoh : force l’ajout d’une ligne vide en fin de hearder des mails.
Normalement cette ligne vide est présente. Mais en le forçant, on en est certain
tb-extra-mailbox-sep : en théorie seulement nécessaire avec des boites au format mailbox
Dovecot envoie par défaut ses logs dans syslog. Pour décharger le fichier et avoir une meilleur vue
de se qui se passe au sein de dovecot, nous allons lui créer son propre fichier de logs
Rajouter dans le fichier dovecot.conf la ligne ci-dessous.
Donner lui les bons droits
création du fichier pour la rotation des logs
[code]vi /etc/logrotate.d/dovecot
/var/log/dovecot-info.log {
missingok
notifempty
delaycompress
sharedscripts
postrotate
/bin/kill -USR1 cat /var/run/dovecot/master.pid 2>/dev/null
2> /dev/null || true
endscript
}[/code]
******************* Mise en place du SSL ************************
Ouvrez le fichier dovecot.cot et modifier la section : protocol imap et rajoutez à la suite
les lignes suivantes
protocol imap {
imap_client_workarounds = outlook-idle delay-newmail netscape-eoh tb-extra-mailbox-sep
listen = 127.0.0.1:143
ssl_listen = *:993
}
les certificat SSL ont étés générés lors de l’install. Mais rien ne vous empêche
de mettre vos propres certificats
pour utiliser le SSL modifier la variable dèja enregistré à “no” mettez là à “yes”
et ajouter la ligne suivante (à vérifier)
disable_plaintext_auth = yes
auth_mechanisms = plain
le certificat auto-signé de Dovecot se trouve dans /etc/ssl/certs/dovecot.pem
Rajouter dans le fichier dovecote.conf les lignes suivantes
ssl = yes
ssl_cert_file = /etc/ssl/certs/dovecot.pem
ssl_key_file = /etc/ssl/private/dovecot.pem
vous pouvez aussi les certificats dans la partie “protocol imap”
Redémarrons les services :
root@facteur:~# service dovecot restart
Restarting IMAP/POP3 mail server: dovecotIf you have trouble with authentication failures,
enable auth_debug setting. See http://wiki.dovecot.org/WhyDoesItNotWork
This message goes away after the first successful login.
.
root@facteur:~# service saslauthd restart
Stopping SASL Authentication Daemon: saslauthd.
Starting SASL Authentication Daemon: saslauthd.
root@facteur:~# service postfix restart
Stopping Postfix Mail Transport Agent: postfix.
Starting Postfix Mail Transport Agent: postfix.
les clients peuvent se connecter au serveur IMAP sur le port 993
et toutes les communications seront chiffrées
petites vérifications
lsof -i tcp:993
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
dovecot 3018 root 8u IPv4 6764 0t0 TCP *:imaps (LISTEN)
imap-logi 3029 dovecot 5u IPv4 6764 0t0 TCP *:imaps (LISTEN)
imap-logi 3030 dovecot 5u IPv4 6764 0t0 TCP *:imaps (LISTEN)
imap-logi 3031 dovecot 5u IPv4 6764 0t0 TCP *:imaps (LISTEN)
netstat -tulpen | grep LISTEN
....
tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN 0 6764 3018/dovecot
....
testez la connexion : openssl s_client -connect 127.0.0.1:993
CONNECTED(00000003)
depth=0 /O=Dovecot mail server/OU=facteur.bougnat.org/CN=facteur.bougnat.org/emailAddress=root@facteur.bougnat.org
verify error:num=18:self signed certificate
verify return:1
depth=0 /O=Dovecot mail server/OU=facteur.bougnat.org/CN=facteur.bougnat.org/emailAddress=root@facteur.bougnat.org
verify return:1
---
Certificate chain
0 s:/O=Dovecot mail server/OU=facteur.bougnat.org/CN=facteur.bougnat.org/emailAddress=root@facteur.bougnat.org
i:/O=Dovecot mail server/OU=facteur.bougnat.org/CN=facteur.bougnat.org/emailAddress=root@facteur.bougnat.org
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIEdzCCA1+gAwIBAgIJAIUkTR2yA5P0MA0GCSqGSIb3DQEBBQUAMIGDMRwwGgYD
.....
7aBwPRRdyKwgx4Ocz8ab2iWYrQ21N/6aB34DODTaVDLn1IP/h4XgZLBC6w==
-----END CERTIFICATE-----
....
---
No client certificate CA names sent
---
SSL handshake has read 1846 bytes and written 319 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: 193039B58181C09ABBE4364CA961AD3A77F5A4FB0BAA7BA99199C41EE845FBE2
Session-ID-ctx:
Master-Key: FB2FFB51A9AC7F82C65FA9A494AE5E8D5F7D6492D3CF50C8444ACBD915F1851F51D07B7997DBE03B5A2B0F2DD7BFC4E9
Key-Arg : None
Start Time: 1311957648
Timeout : 300 (sec)
Verify return code: 18 (self signed certificate)
---
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE AUTH=PLAIN] Dovecot ready.
a1 LOGIN essai@essai.org essai
a1 OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS] Logged in
a2 LIST "" "*"
* LIST (\HasNoChildren) "." "Sent"
* LIST (\HasNoChildren) "." "Junk"
* LIST (\HasNoChildren) "." "Trash"
* LIST (\HasNoChildren) "." "Drafts"
* LIST (\HasNoChildren) "." "dovecot.sieve"
* LIST (\HasNoChildren) "." "INBOX"
a2 OK List completed.
a3 EXAMINE INBOX
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
* OK [PERMANENTFLAGS ()] Read-only mailbox.
* 11 EXISTS
* 2 RECENT
* OK [UNSEEN 10] First unseen.
* OK [UIDVALIDITY 1307884974] UIDs valid
* OK [UIDNEXT 12] Predicted next UID
* OK [HIGHESTMODSEQ 1] Highest
a3 OK [READ-ONLY] Select completed.
a4 LOGOUT
* BYE Logging out
a4 OK Logout completed.
closed
Si vous vous connectez au serveur avec outlook express, lors du paramétrage de votre compte,
n’oubliez pas de renseigner dans l’onglet “Avancé” le port 993 dans le champ "Courrier entrants (IMAP)"
et de cocher “Ce serveur nécessite une connexion sécurisée (SSL)”