Mise en place d'un serveur Courier POP3 avec SSL

From Deimos.fr / Bloc Notes Informatique
Jump to: navigation, search

1 Introduction

Si l'envie vous vient d'installer un serveur POP3 pour que vos emails puissent etre rappatrier depuis un client mail ou un autre serveur, alors Courier POP3 est une bonne solution. De plus la mise en place du SSL est tout aussi sympatique puisque secure.

Pour que le serveur POP3 soit complètement foncitonnel, il faudra bien évidement qu'il soit accompagné d'un serveur de mail (voir documentations ici)

J'ai fais cette installe sous OpenBSD, donc toute cette doc sera faite pour OpenBSD, mais vu la complexité de la chose, c'est très très facilement portable.

2 Installation

Installation de courier-pop3 :

Command pkg_add
$ pkg_add -iv courier-pop3-4.1.1p0
 
--- courier-pop3-4.1.1p0 -------------------
You now need to edit appropriately the Courier-POP3 configuration files
installed in /etc/courier/courier/.
 
To use POP3-SSL, be sure to read ssl(8) and run the mkpop3dcert script
if you require a self-signed certificate.
 
To control the daemon use /usr/local/libexec/pop3.rc and
/usr/local/libexec/pop3-ssl.rc.

Il faut également installer courier-imap parcequ'il y a des commandes nécessaires pour que le serveur POP3 se lance (voilà un truc super mal foutu) :

Command pkg_add
$ pkg_add -iv courier-imap-4.1.1p2
 
parsing courier-imap-4.1.1p2
Dependencies for courier-imap-4.1.1p2 resolve to: courier-authlib-0.58p3, gdbm-1.8.3p0
found libspec c.41.0 in /usr/lib
found libspec courierauth.0.0 in package courier-authlib-0.58p3
found libspec courierauthsasl.0.0 in package courier-authlib-0.58p3
found libspec crypto.13.0 in /usr/lib
found libspec gdbm.3.0 in package gdbm-1.8.3p0
found libspec ssl.11.0 in /usr/lib
adding group _courier
adding user _courier
installed /etc/courier/imapd-ssl from /usr/local/share/examples/courier/imapd-ssl.dist**************************************************************************** | 99%
installed /etc/courier/imapd.cnf from /usr/local/share/examples/courier/imapd.cnf
installed /etc/courier/imapd from /usr/local/share/examples/courier/imapd.dist*************************************************************************************| 100%
installed /etc/courier/quotawarnmsg from /usr/local/share/examples/courier/quotawarnmsg.example
courier-imap-4.1.1p2: complete            
 
--- courier-imap-4.1.1p2 -------------------
You now need to edit appropriately the Courier-IMAP configuration files
installed in /etc/courier/courier/.
 
Pay particular attention to the details in imapd.cnf, and read ssl(8) if
necessary. You MUST set the CN in imapd.cnf to the hostname by which
your IMAP server is accessed, or else clients will complain. When this
is done, you can use the 'mkimapdcert' script to automatically generate
a server certificate, which is installed into /etc/ssl/private/imapd.pem
 
To control the daemon use /usr/local/libexec/imapd.rc and
/usr/local/libexec/imapd-ssl.rc, and to run the authdaemon, place the
following in /etc/rc.local:
 
mkdir -p /var/run/courier{,-auth}/
/usr/local/sbin/authdaemond start

3 Configuration

On va se placer dans le dossier /etc/courier :

Command
cd /etc/courier

Et éditer le fichier pop3d-ssl afin de remplacer ces champs :

Configuration File pop3d-ssl
POP3DSSLSTART=YES
POP3_TLS_REQUIRED=1
SSLPIDFILE=/var/run/pop3d-ssl.pid

On va maintenant éditer le fichier pop3d.cnf afin de générer un fichier propre à notre serveur :

Configuration File pop3d.cnf
RANDFILE = /usr/local/sbin/pop3d.rand
 
[ req ]
default_bits = 2048
encrypt_key = yes 
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no
 
[ req_dn ]
C=FR
ST=IDF
L=Paris
O=Company Mail Server
OU=Company Mail Server SSL
CN=niceday
[email protected]
 
 
[ cert_type ]
nsCertType = server

Ensuite on va générer la clef ssl :

Command mkpop3dcert
$ mkpop3dcert
 
Generating a 2048 bit RSA private key
...+++
............................+++
writing new private key to '/etc/ssl/private/pop3d.pem'
-----
512 semi-random bytes loaded
Generating DH parameters, 512 bit long safe prime, generator 2
This is going to take a long time
.............+................................+.

La clef se situe donc dans /etc/ssl/private/pop3d.pem.

4 Contrôle du service

On va donc démarrer notre service maintenant que la configuration est terminée :

Command
/usr/local/libexec/pop3d-ssl.rc start