Faire son serveur mail très rapidement
Rédigé par Xavier - -
La mise en place d'un serveur mail sur Debian est vraiment très simple.

Voici un tutoriel expliquant comment mettre en place son serveur Mail avec accès IMAP (et plus tard peut-être, l'installation d'un webmail). Les comptes utilisés seront ceux du système (pas d'utilisateurs virtuels). Pour l'envoi des mails nous passerons par un relais, un serveur SMTP de Orange.
Logiciels
- Debian 6.0
- Postfix
- Courier
Requis
- Un serveur physique ou virtuel connecté à internet, accessible par redirection de port
- Debian 6.0 installée
- Notions de SMTP et IMAP
Schéma

Installation de Postfix
Une interface de configuration s'affiche. Sélectionnez "Pas de configuraiton pour le moment". Lorsque l'installation est terminée, entrez:
- Site internet: Serveur mail en réseau
- Internet avec un smarthost: Server mail en réseau qui utilisera un relais pour l'envoi du courrier
- Système satellite: Jamais vraiment utilisé ni compris sa fonction, visiblement c'est pour rendre Postfix passif et tout renvoyer vers un relais
- Local uniquement: Pas de fonctionnement en réseau
En raison du filtrage draconien mis en place par les différents hébergeurs mail, si vous faites votre propre SMTP vous risquez d'être redirigé directement dans la boite à spam, ou même tout bonnement ignoré. Ajoutons le fait que certains FAI bloquent votre port 25 pour vous empêcher d'envoyer du spam. En bref, il est préférable de passer par un SMTP relais de confiance, qui ne sera pas filtré par vos destinataires. A peu près tous les FAI en fournissent un, choisissez le votre. Donc pour cette page sélectionnez "Internet avec un smarthost".
Nom de courrierC'est le nom de domaine qui sera rajouté aux mails. Inscrivez donc ici le votre (par exemple "monserveur.no-ip.org").
Serveur relais SMTPMettez ici le SMTP de votre FAI. Par exemple, smtp.orange.fr.
Destinataire pour root et postmasterVers qui les messages de root et postmaster seront redirigés. Entrez une adresse mail (votrelogin@votredomaine). Exemple: xavier@monserveur.no-ip.org
Autres destinations pour lesquelles le courrier est acceptéTout est dit dans la description. Entrez votre domaine puis votre nom de machine (mis par défaut).
Forcer les mises à jour synchroSelon votre envie. N'ayant pas une grosse charge au niveau des mails sur mon serveur, j'ai mis OUI.
Réseaux internesPour le cas où votre serveur SMTP devra faire office de relais. Si non, laissez par défaut. Si oui, entrez l'adresse des réseaux à accepter (si vous voulez accepter de relayer les messages des machines du réseau local, entrez l'IP de ce dernier).
Faut-il utiliser procmail pour la distribution locale?Non (de toutes façons on va revoir la configuration plus tard).
Taille maximale des boitesA vous de voir, selon l'espace disque de votre serveur et le nombre de comptes mail... sinon laissez 0 pour illimité.
Caractère d'extensionChamp vide.
Protocole à utiliserA vous de voir. Dans le doute choisissez ipv4
Configuration manuelleOuvrez le fichier /etc/postfix/main.cf et à la fin ajoutez:
Cette dernière ligne permet d'enregistrer les mails dans un répertoire Maildir, et non pas en vrac, dans le dossier personnel des utilisateurs.
Essais
Vous pouvez faire un essai, à partir du serveur:
Entrez quelques mots, puis allez à la ligne. Entrez un point "." pour valider et envoyer le mail.
Note: votre serveur doit être capable d'interpréter monserver.no-ip.org comment étant lui-même... pour celui vous devez faire une entrée dans /etc/hosts ou alors utiliser votre propre DNS local. Ou alors envoyez le mail à xavier@localhost sinon.
Dans /home/xavier vous devez voir un dossier "Maildir". Entrez dedans puis dans new/ et faites un cat sur le fichier au nom bizarre qui est apparu. Il contient votre mail.
Installation de courier-imap-ssl
Puisque nous sommes des gens sérieux, nous n'utiliserons l'IMAP qu'en SSL. Nous éviterons le POP qui est obsolète.
NON
Configuration manuelleOuvrez le fichier /etc/courier/imapd-ssl et vers la fin chercher MAILDIRPATH. Modifiez comme suivant:
Configuration des clés de chiffrement et certificats
A l'installation de Postfix et Courier, une clé et un certificat "standards" sont générés. Mais nous allons générer les notres et ils seront propres au serveur.
Cela va générer un fichier .cert et un fichier .key copiez-les dans /etc/ssl/private puis ensuite adaptez postfix et courier-imap-ssl pour les utiliser.
Pour postfix, éditer main.cf pour obtenir:
# TLS parameters smtpd_tls_cert_file=/etc/ssl/private/monserver.no-ip.lan.cert smtpd_tls_key_file=/etc/ssl/private/monserver.lan.key
Pour courier-imap-ssl, il va falloir transformer nos fichiers .key et .crt en .pem! Pour cela, un simple cat:
Nous avons simplement copié leur contenu dans le fichier pem (avec le crt en premier). Ouvrez ensuite /etc/courier/imapd-ssl. Voici la lignes à trouver (elle a surement des paramètres mais on va les retirer):
TLS_CERTFILE=
Modifiez-la pour obtenir:
TLS_CERTFILE=/etc/ssl/private/monserver.no-ip.org.pem
Relancez courier :)
service courier-imap-ssl restart
Configuration du client de messagerie
Avec un client comme Thunderbird, vous pouvez maintenant accéder à votre boite en IMAP. N'oubliez pas de sélectionner le protocole IMAP sécurisé (SSL/TLS) lorsque vous ajoutez le compte. Pour les paramètres avancés, indiquez "INBOX" en chemin relatif sinon tous les dossiers (courriers envoyés, corbeille, etc...) seront DANS le courrier entrant..
Accès extérieur
N'oubliez pas d'ouvrir le port 25 sur votre routeur, pour recevoir les email. Ouvrez aussi le 993 pour pouvoir vous connecter en IMAP sécurisé à distance.
Notes importantes
Dans ce tutoriel, nous avons fait un serveur SMTP qui accepte de recevoir du courrier (c'est normal) mais pas d'en envoyer si l'expéditeur est à l'extérieur. Par exemple, si vous êtes à votre entreprise, que votre serveur mail est chez vous, et que vous configurez Thunderbird pour utiliser VOTRE serveur SMTP en envoi, ça ne marchera pas. Pour la simple raison que l'on veut éviter que n'importe qui n'utilise votre SMTP pour relayer du spam. La solution consiste à utiliser l'authentification sur le SMTP (nom d'utilisateur + mot de passe) cela fera peut-être l'objet d'un prochain article.
Il n'y a pas de limitation de taille pour les boites mails... ni pour les pièces jointes (à ma connaissance) donc attention.