Installer Dovecot

Auteur : Olivier BOYER - oboyer () ajoute ! org

Mots clés

OpenBSD, dovecot, imap, imaps, pop3, pop3s

Introduction

Page du projet : http://dovecot.org/

Dovecot est un serveur IMAP et POP3 libre, pour les systèmes Unix-like, développé pour être sécurisé.

Le produit va être installé via les ports.

Présentation de la maquette

Les éléments suivants sont mis en oeuvre :

  • Un système OpenBSD 3.8
  • Un serveur imap(s) et pop3(s)
  • Le serveur se nomme imap.leaves.org

Note

Toutes les commandes présentées ici, sont à exécuter, sauf mention contraire, en tant qu'administrateur de la machine.

Pré-requis

Ce document considère que le système OpenBSD est installé, fonctionnel et que l'arborescence des ports est présente dans /usr/ports.

Installer Dovecot

Pour installer le produit, exécutez les commandes suivantes :

# cd /usr/ports/mail/dovecot
# make install clean clean=depends

A la fin de l'installation, le message suivant s'affiche :

Files to facilitate the generation of a self-signed
certificate and key for Dovecot have been installed:
/etc/ssl/dovecot-openssl.cnf (Edit this accordingly!)
/usr/local/sbin/dovecot-mkcert.sh

If this has been or will be accomplished by other means,
use the following paths for the files:
/etc/ssl/dovecotcert.pem
/etc/ssl/private/dovecot.pem

If you wish to have Dovecot started automatically at boot time,
simply add the follow lines to /etc/rc.local:

if [ -x /usr/local/sbin/dovecot ]; then
        echo -n ' dovecot';       /usr/local/sbin/dovecot
fi

Un nouvel utilisateur _dovecot et un nouveau groupe _dovecot sont créés automatiquement. Le serveur dovecot s'exécutera sous l'identité de l'utilisateur _dovecot:_dovecot.

Configurer dovecot

Editer le fichier /etc/dovecot.conf

[Mettre un exemple de fichier de conf]

Configurer le support SSL

dovecot est fourni avec un script shell qui crée automatiquement les certificats et les copie au bon endroit. Ce script est : /usr/local/sbin/dovecot-mkcert.sh

Script dovecot-mkcert.sh

Modifier comme suit le script dovecot-mkcert.sh

#!/bin/sh

# Generates a self-signed certificate.
# Edit dovecot-openssl.cnf before running this.

OPENSSL=${OPENSSL-openssl}
SSLDIR=${SSLDIR-/etc/ssl}
OPENSSLCONFIG=${OPENSSLCONFIG-${SSLDIR}/dovecot-openssl.cnf}

CERTFILE=$SSLDIR/dovecotcert.pem
KEYFILE=$SSLDIR/private/dovecot.pem

#if [ ! -d $SSLDIR/certs ]; then
#  echo "$SSLDIR/certs directory doesn't exist"
#fi

if [ ! -d $SSLDIR/private ]; then
  echo "$SSLDIR/private directory doesn't exist"
fi

if [ -f $CERTFILE ]; then
  echo "$CERTFILE already exists, won't overwrite"
  exit 1
fi

if [ -f $KEYFILE ]; then
  echo "$KEYFILE already exists, won't overwrite"
  exit 1
fi

$OPENSSL req -new -x509 -nodes -config $OPENSSLCONFIG -out $CERTFILE -keyout
$KEYFILE -days 365 || exit 2
chmod 0600 $KEYFILE
echo
$OPENSSL x509 -subject -fingerprint -noout -in $CERTFILE || exit 2

Fichier de configuration du script

Pour générer les certificats d'authentification le script dovecot-mkcert.sh obtient ses paramètres du fichier de configuration /etc/ssl/dovecot-openssl.cnf. Le fichier livré par défaut doit être modifié pour refléter chaque installation.

Avant toute modification, sauvegardez le fichier original :

# cp /etc/ssl/dovecot-openssl.cnf /etc/ssl/dovecot-openssl.cnf.orig

Voici un exemple de configuration :

[ req ]
default_bits = 1024
encrypt_key = yes
distinguished_name = req_dn
x509_extensions = cert_type
prompt = no

[ req_dn ]
# country (2 letter code)
C=FR

# State or Province Name (full name)
ST=Haute-Garonne

# Locality Name (eg. city)
L=Toulouse

# Organization (eg. company)
O=Leaves Networks Ltd

# Organizational Unit Name (eg. section)
OU=IMAP server

# Common Name (*.example.com is also possible)
CN=imap.leaves.org

# E-mail contact
emailAddress=postmaster@leaves.org

[ cert_type ]
nsCertType = server

#EOF

Générer les certificats

Maintenant que le script dovecot-mkcert.sh et son fichier de configuration ont été personnalisé, il faut générer les certificats. Procédez comme suit :

# /usr/local/sbin/dovecot-mkcert.sh

Ce script crée les fichiers suivants :

	/etc/ssl/dovecotcert.pem
	/etc/ssl/private/dovecot.pem

Lancer dovecot au démarrage

Modifiez comme suit le fichier /etc/rc.conf.local :

dovecot=YES

Puis, ajoutez les lignes ci-dessous au fichier /etc/rc.local :

if [ -x /usr/local/sbin/dovecot ]; then
        echo -n ' dovecot';       /usr/local/sbin/dovecot
fi
 
doc/openbsd/dovecot.txt · Dernière modification: 2009/12/23 22:36 (édition externe)     Haut de page