# Dovecot et le SSL

**URL:** <https://www.debian-fr.org/t/dovecot-et-le-ssl/33315>\
**Category:** Trucs et Astuces\
**Created:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/dovecot-et-le-ssl/33315 "2016-02-21T02:57:54Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![gilles974](https://www.debian-fr.org/user_avatar/www.debian-fr.org/gilles974/32/3998_2.png) [@gilles974](https://www.debian-fr.org/u/gilles974)\
**Post date:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/dovecot-et-le-ssl/33315/1 "2016-02-21T02:57:54Z")

</div>

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.

```auto

```

Donner lui les bons droits

```auto

```

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)

```auto
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 :

```auto
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

```auto
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

```auto
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)”

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/dovecot-et-le-ssl/33315/2 "2016-02-21T02:57:57Z")

</div>

Salut,

On ne peut que regretter que ce travail ne soit pas sur LE wiki, afin de pouvoir l’améliorer ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")

---

<div class="post-metadata">

**Author:** ![gilles974](https://www.debian-fr.org/user_avatar/www.debian-fr.org/gilles974/32/3998_2.png) [@gilles974](https://www.debian-fr.org/u/gilles974)\
**Post date:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/dovecot-et-le-ssl/33315/3 "2016-02-21T02:57:57Z")

</div>

se n’est pas faute d’avoir essayé

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/dovecot-et-le-ssl/33315/4 "2016-02-21T02:57:59Z")

</div>

Re,

Alors tu devrais demander de l’aide, Lol se fera sans doute un plaisir pour te guider 🙂
