Serveur mail auto-hébergé

Hello,

Dans ce billet je vais vous montrer comment configurer son propre serveur mail.
Tout d’abord ce tuto est à destination des personnes utilisant un serveur dédié avec un nom de domaine associé. Par exemple moi c’est un VPS chez OVH.
Ça peut marcher avec une Raspberry et une DMZ, mais il y aura des choses en plus à faire.

Edit du 22/09/18 11h00 : Suite au premier commentaire de cet article, je précise bien que ce serveur mail ne sert pas pour un cas d’usage personnel ( banque etc ) mais pour l’administration de votre serveur ou utilisation depuis celui-ci du moins en « local ». Pour faire un serveur mail perso avec lequel on récupère ses mails avec Thunderbird par exemple depuis la maison, il faut explorer les champs du protocole IMAP.

Si vous avez pris une option avec webmail lors de la souscription de votre nom de domaine, il y à de grandes chances que cela ne marche pas.

Alors tout d’abord il faut s’assurer en premier lieu que votre Zone DNS soit bien configurée.

Attention moi chez OVH il faut que je me connecte à mon manager et que dans « mail » je désactive l’Option AntiSpam pour mettre en « redirection » seulement. il faut aussi toujours dans l’onglet mail de votre espace client ajouter une redirection vers votre nom de domaine.

Ensuite pour votre zone DNS c’est simple. Il faut rajouter 2 entrées, une MX et une A.

Après rajout, vous devrez donc avoir comme entrées :
NomDeDomaine   A  IpServeur
NomDeDomaine MX IpServeur
mail.NomDeDomaine A NomDeDomaine

Le temps que la propagation DNS se fasse, il faut installer « postfix » et le configurer.

Pour l’installer sur Debian et ses dérivées :
apt-get install postfix
Pour CentOs/Fedora :
yum install postfix

Postfix par défaut écoute sur le port 25. Son fichier de configuration est :
/etc/postfix/main.cf

Donc il faut l’éditer et toucher les variables suivantes :
mydestination = NomDeDomaine (si vous en avez plusieurs séparez les avec des virgules)
myhostname = NomDeDomaine

Le fichier : /etc/mailname doit contenir votre Nomdedomaine seulement.
Le fichier : /etc/aliases contient vos alias (alias@NomDeDomaine).
Un alias par ligne sous cette forme :
alias: user

Cela signifie que les mails envoyés vers « alias@NomDeDomaine » iront dans la boite mail de « user ».
Pour créer un alias c’est donc simple on rajoute une ligne au fichier « aliases » avec l’alias qui pointe vers l’utilisateur voulu.

Ensuite on rentre ces commandes avec sudo ou en tant que root pour prendre en compte tous les changements :
sudo newaliases
sudo service postfix reload

Bien sur n’oubliez pas de reconfigurer votre pare-feux et d’autoriser le port 25 à recevoir en entrée depuis l’extérieur.

Pour vous prémunir des spams, je vous conseille « spamassassin » disponible sur Debian et CentOS.

Pour lire et envoyer des mails dans un terminal, je vous conseille « Mutt », c’est un client mail, qui prend en compte de manière native vos clefs GPG. Il est relativement facile à prendre en main. Aussi bien en ligne de commande qu’avec l’interface dans le terminal.

Et voila vous êtes aptes à recevoir et envoyer des mails avec votre dédié.
Et si vous voulez m’envoyer directement un mail mon adresse de contact est donc logiquement : contact@hedilenoir.com 🙂

 

Si vous avez des remarques/suggestions n’hésitez pas ! 🙂

5 réflexions sur « Serveur mail auto-hébergé »

    1. Hello.
      Alors pour être honnête ça me fait plaisirs d’avoir un commentaire de ta part d’une !
      Alors l’IMAP je sais pas si je vais faire un billet dessus, si je le configure sûrement, mais faut d’abord que j’explore les différents champs possibles pour voir lequel me va le mieux.
      Comme tu dis, c’est un métier de se maintenir un serveur mail. Mais le serveur mail est quand même un minimum sur son serveur pour s’envoyer des rapports/logs/etc sur sa boite mail perso par exemple.

      Du coup si je fais un billet sur l’IMAP il faut que je m’assure d’avoir bien tout compris pour bien l’expliquer et pas guider vers de mauvaises pratiques car ça devient critique avec ce cas d’usage ( Mails perso donc banque/état/employeur, etc ).

      Pour le MX secondaire mon avis sera à lire sur ton billet du coup car j’approfondis ce champs grâce a toi du coups ! 😉

  1. Personnellement, je fais tourner mon serveur de mail personnel sur un Pi derrière une box. Je le fais pour plusieurs raisons, les principales étant :

    1. Ça juste marche. Pas comme GMail qui bloque une fois sur deux la connexion, ou comme Orange qui change de serveur d’envoi, ou je ne sais quoi. Je contrôle le fonctionnement, j’ai pas de limitations sur les dossiers, les PJ autorisées, les alias…
    2. Sieve. Un serveur mail sans Sieve, c’est insupportable. Au moins là, le tri est fait côté serveur, et sera partout pareil, quelque soit le client mail.
    3. Ma boîte aux lettres n’est pas chez un inconnu qui a une porte au fond de la boîte, alors mes mails c’est pareil :p

    Après, il est vrai que ça demande du boulot à l’installation, à cause des politiques actuelles des géants et des FAIs… mais avec un SPF correct et du DKIM (sans DMARC), ça se fait sans trop de difficulté. Quant au port 25, certains FAI permettent de le débloquer, étant chez Orange, je passe par leurs serveurs en relais et via le 587 submission pour l’envoi depuis le MUA, ça fonctionne plutôt bien.

    Au final, ce n’est pas si complexe, il existe pas mal de tutos, exemples et documentations permettant de mettre tout ça en place une bonne fois pour toute. Je n’ai plus touché à mon serveur mail depuis plus d’un an, ça marche toujours correctement.

    Faudrait que je fasse des articles ou autres sur mon serveur, tiens, ça donnerais une utilité à mon site web :p

  2. Hello!
    C’est un article intéressant mais je me pose quelques questions. Sur ce serveur, vous configurez le service SMTP pour l’envoi. Comment gérez vous donc la réception sans service IMAP pour le stockage ?
    Et en vient l’autre question, l’utilisation de SpamAssassin. Dans le cas où vous ne recevez pas de mail sur ce serveur, quel en est son utilité ?
    Au plaisir d’échanger.
    Stan

    1. Hello,
      SMTP et IMAP sont deux choses différentes ;). SMTP (Server Mail Transfert Protocol sert à connecter les serveurs entre eux en point à point, de serveur à serveur donc pas en nœuds.
      Le IMAP (Internet Message Access Protocol) lui par contre sert à lire des mails depuis un serveur sans être logué dessus en tant qu’utilisateur.
      Donc dans mon cas pour lire mes mails je dois être connecté à mon serveur directement pour y avoir accès.

      En attendant un peu de lecture pour clarifier si tu veux : https://www.commentcamarche.com/contents/536-pop3-smtp-imap-protocoles-de-messagerie

      Mais le IMAP fera parti d’un prochain billet je pense donc.

      Et les spams disons qu’à partir du moment ou une adresse est à dispo sur le web elle devient souvent la cible de méchants spams.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

dix-sept − douze =