Prérequis:
  • 1 Nom de domaine ( pour l’exemple il sera pris chez OVH pour 7,16E TTC / an).
  • 1 IP fixe ou Dynamique avec le DynHost d’OVH.
  • Le raspberry devra être configuré avec une IP fixe local.
Dans ce tutoriel je parlerais de : ndd.com = mondomaine.com = votre nom de domaine à changer. mail.ndd.com = Votre sous domaine mail de votre nom de domaine.

Installation & configuration du serveur DNS (bind9)

Connectez-vous en local sur votre raspberry ou par SSH avec l'utilisateur pi. Vous pouvez aussi prendre n'importe quel utilisateur avec les droits sudo.

Installation des mises à jour :
sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade

Configuration du nom de domaine (OVH)

Connectez-vous sur votre manager ovh https://www.ovh.com/managerv3. Sélectionnez votre nom de domaine => Mutualisé => Domaine & DNS => Zone DNS Si vous avez une ip publique fixe, ajoutez un champ de Type A et mettez l’ip de votre box. Si vous avez une ip publique dynamique, ajoutez un champ de Type DynHOST.

Choix 1 : IP FIXE

Choix 2 : IP DYNAMIQUE

Astuce

Pour connaitre l’adresse Ip demandée, allez sur le site : http://www.monip.org et copiez collez l’ip dans IP de destination.

Choisissez un identifiant ( ici boxmaison ), le sous-domaine : mail.ndd.com et un mot de passe.

Edition de la cible de la zone MX

Editez avec le petit crayon à droite la cible de votre domaine .ndd.com MX1. Remplacez la valeur actuelle par : mail.ndd.com.

Important

Petit rappel, veuillez changer ndd.com par votre nom de domaine !

Normalement que vous aillez une IP fixe ou Dynamique, vous devriez avoir un tableau similaire à celui-ci :

Vérifications de bon fonctionnement :

Maintenant que votre raspberry et votre nom de domaine sont bien configurés, il faut s’assurer que tout fonctionne avant de continuer le tutoriel.
Tapez dans un terminal
host -t MX ndd.com
Vous devriez avoir un résultat similaire à :
ndd.com mail is handled by mail.ndd.com
Si tel n’est pas le cas, veuillez patienter le temps que les changements soient pris en compte.
Seconde vérification :
ping mail.ndd.com
Vous devez trouver votre adresse ip durant le ping :

Configuration de votre box internet :

Nous allons maintenant ouvrir les 3 ports nécessaires au bon fonctionnement de notre serveur d’email, à savoir :
  1. le port 25 (SMTP)
  2. le port 110 (POP3)
  3. le port 143 (IMAP)
Ouvrez l’interface de configuration de votre box internet et ouvrez les ports comme le montre la capture suivante (livebox d’orange):

Astuce

Pour les autres modèles de box internet, le principe reste le même.

Installation de Postfix :

Tapez maintenant :
sudo apt-get install postfix
Acceptez ensuite par OK suivi de Site Internet
Arrêt de postfix :
sudo service postfix stop
Suppression des réglages par défaut :
sudo rm -f /etc/postfix/main.cf

Configuration de Postfix :

sudo nano /etc/postfix/main.cf
Copiez collez ce qui suit :
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)

biff = no
append_dot_mydomain = no
readme_directory = no

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls= yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_auth_only = no

# Postfix parameters
myhostname = mail.ndd.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = ndd.com, localhost
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = ipv4
home_mailbox = Maildir/
Puis modifiez les 2 lignes en remplaçant ndd.com par votre nom de domaine:
myhostname = mail.ndd.com
mydestination = ndd.com, localhost
Editez le fichier mailname :
sudo nano /etc/mailname
Ajoutez y votre nom de domaine :
ndd.com
On redémarre le service postfix pour prendre en compte les changements :
sudo service postfix start

Configuration du client DynHOST (seulement IP Dynamique) :

Téléchargement du client :
wget http://www.bozorokus.net/DynHost.tgz
Décompression de l'archive :
tar xvzf DynHost.tgz
Edition du fichier de configuration :
cd DynHost && nano dynhost
Editez les champs suivants :
IFACE=eth0
HOST=mail.ndd.com
LOGIN=ndd.com-boxmaison
PASSWORD=pass
Cherchez et remplacez la ligne :
IP=`/sbin/ifconfig $IFACE | fgrep "inet ad" | cut -f2 -d":" | cut -f1 -d" "`
par la ligne :
IP=`curl -sf http://checkip.dyndns.org/|cut -d ':' -f 2|cut -d '<' -f1|sed -e 's/ //g'`
On rend le fichier dynhost exécutable :
sudo chmod +x dynhost
On fait en sorte que le fichier soit exécuté toutes les heures :
crontab -e
puis ajoutez à la fin :
1 * * * * /home/pi/dynHost/dynhost

Installation des serveurs POP3 & IMAP :

sudo apt-get install dovecot-pop3d dovecot-imapd
Arrêt des services dovecot :
sudo service dovecot stop
Suppression du fichier de configuration par defaut :
sudo rm -f /etc/dovecot/conf.d/10-mail.conf
Configuration de dovecot :
sudo nano /etc/dovecot/conf.d/10-mail.conf
Copiez collez ce qui suit :
mail_location = maildir:~/Maildir
listen = *

namespace inbox {
        inbox = yes
}
Redémarrage des services dovecot :
sudo service dovecot start
Vous pouvez maintenant configurer votre logiciel de messagerie !

Attention

Avec cette méthode vous ne pouvez envoyer que des emails vers votre nom de domaine, si vous voulez envoyer des emails partout dans le monde, veuillez utiliser le serveur SMTP de votre FAI.

Voilà ce tutoriel est maintenant terminé ! Un GRAND Merci à Frenesik pour m’avoir aidé à faire / corriger / tester ce tutoriel, merci à toi !!!
Ce tutoriel ne fonctionne plus ? Il reste des coquilles dans le code ou des erreurs typographiques ? Vous souhaitez proposer une amélioration de ce tutoriel ? Merci de me contacter par email à l'adresse suivante : [email protected], merci pour votre aide.