Envoi et réception de mail Mise en place d`un

Transcription

Envoi et réception de mail Mise en place d`un
Envoi et réception de mail
Mise en place d'un serveur de messagerie
avec Postfix/Courier
Avec ce tuto personne n'arrivera à mettre en place ce serveur à cause des imprécisions, des
erreurs de syntaxe et un manque de clarté dans l'exposé des concepts....
Note : 11/20 (à corriger et à améliorer)
I/ définition du projet :


Contexte
Objectifs
II/ Mise en place de la solution
Support pour mise en œuvre :



Serveurs Mails : PostFix / Courier/Fetchmail
Logiciels : Thunderbird
Configuration Postfix / Serveur DNS / Fetchmail / SASL
III/ Test/ Validation de la solution
Mis en forme : Police :(Par défaut)
Times New Roman, 22 pt, Gras
Mis en forme : Police :22 pt, Gras
I/ Définition du projet
=> Contexte :
Cette procédure permet de mettre en place un serveur de messagerie pour pouvoir conserver
centraliser et sécuriser l'envoi et la réception de mails sur un serveur local. Nous utiliserons
un serveur Linux avec Postfix et Fetchmail.
=> Objectifs :
Sécuriser Envoi/Réception de mail (est-ce que tu vas montrer en quoi ce sera plus sûr avec un
serveur local)
Sauvegarde des mails
II/ Mise en œuvre de la solution
Le serveur DNS et le service de mail seront sera installés sur un poste sous Debian, on les
configurera en invite de commande sous « Root ».
Pour la validation, nous créerons 2 comptes mailsNous allons utiliser deux utilisateurs : Pierre
et Isabelle.
Nous allons devoir installer des prérequis (ce ne sont pas les pré-requis, ce sont les modules
qui assurent les fonctionnalités souhaitées) :
Sur le serveur Mails :
POSTFIX : #apt-get install Postfix postfix (attention à la casse sous Linux)
Mis en forme : Français (France)
FETCHMAIL : #apt-get install fetchmail
COURIER POP : #apt-get install courier-pop (voici 3 modules installés sans dire à quoi ils
servent ...)
Sur le client :
Télécharger et installer : Thunderbird (tu mélanges ce qui doit être fait sur le client et le
serveur, il faut être plus structuré dans la procédure)
Pour commencer, configurer Postfix :Suivre les étapes de l'installation de postfix qui
commence par :
Ensuite modifier le fichier nommé « main.cf ».
Expliquons quelques points:





Myhostname : c’est le nom du serveur de courriel, par défaut mail.domaine.net soit
« debian.ys.local »
Mydestination : ceci est la concordance des domaines domaines de messagerie pour
lesquels le serveurs est capable de distribuer les mails, remplacez par votre nom de
machine soit « debian.ys.local »
Myorigin : ceci est le chemin de la réception des mails domaine de messagerie des
mails sortants
Mynetworks : permet de donner l’accès au serveur SMTP,les réseaux autorisés à
communiquer avec le serveur de messagerie
Home_mailbox = maildirMaildir/ : Ceci est important, nous choisissons le format
Maildir en accord avec le serveur IMAP. Vous ne pourrez recevoir vos courriels par
IMAP si cette ligne n’est pas ajoutée. permet de recevoir les mails dans le dossier
personnel des utilisateurs sous un dossier Maildir
Configuration des réceptions des mails :
Alors pour commencer, on va faire un test d'envoi de mail avec l'utilisateur Isabelle, pour cela
on va taper les lignes de commandes :
#mail isabelle
subject : test isabelle
Ici il faut appuyer sur Ctrl + D (pour pour sortir de mail)
CC : appuyer sur entrée
Ici, si on a bien rentré la ligne (où ????) home_mailbox = maildirMaildir/ (attention à la
casse)
On voit bien que le dossier Maildir a été créé, on peux le voir sous « ls /home/isabelle/ »
Et on peux trouver le mail en faisant « /home/isabelle/Maildir# ls » incomplet ....
Configuration du serveur DNS :
Tout d'abord, il faut s'assurer que le serveur DNS fonctionne et que le domaine DNS soit bon
(ici c'est ys.local.), on en fait un fichier de zone debian.ys.local (ou db.ys.local !!!!!)
Après il faut installer les services POP et SMTP, pour cela
#apt-get install courier-pop (ceci n'installe pas le IMAP, juste le service POP)
Et on ajoute les adresses dans le fichier de zone pour que l'accès soit activé :
« nano /etc/bind/db.ys.local » je t'avais bien dit , juste au-dessus, que ce n'est pas
debian.ys.local !
debian.ys.local est le nom DNS de ton serveur DNS
il faut faire de même pour le fichier inverse du fichier de zone nommé :
/etc/bind/db.ys.local.inv (n'est pas obligatoire mais bon ce n'est pas une faute !)
Et ici le fichier inverse :
Mis en forme : Police :(Par défaut)
Times New Roman, 12 pt, Gras
Il faut maintenant redémarrer le serveur DNS :
Ensuite on va tester de ping depuis quel poste, smtp.ys.local et pop.ys.local (préciser que le
poste à partir duquel tu fais ton test DNS, doit avoir comme DNS préféré l'ad IP de ton
serveur DNS)
Configurer client de messagerie : Thunderbird
Suivre les étapes de l'installation.
Quand installation finis A la fin de l'installation, on va commencer à configurer l'adresse mail
Isabelle, soit [email protected]
Configuration Fetchmail :
Vérifier le fonctionnement de l'envoi de mail en local, ensuite configurer Postfix et Fetchmail
pour qu’Isabelle puisse avoir son compte Pop sur Ovh et qu'elle puisse envoyer des mails à
des serveurs extérieurs (comme par exemple @orange.fr)
EH BIEN NON ! Fetchmail sert à récupérer des mails extérieurs depuis un compte POP mais
pas à envoyer
On va configurer en premier Fetchmail, on a pour cela créé un compte OVH qui est
[email protected]. Nous allons créer le fichier de configuration de fetchmail,
#nano /etc/fetchmailrc et y insérer les lignes suivantes :
La dernière ligne :
poll pop3.oasysconsulting.fr protocol POP3 user « [email protected] » there
with password « Esicad031 » is isabelle here
Cela sert à Fetchmail de récupérer des mails pour l'utilisateur Isabelle sur un serveur pop
distants. c'est OK
Il faut également le faire pour les autres utilisateurs, soit ici Paul.
Configuration de Postfix et du SASL.
On veut maintenant que les utilisateurs puissent envoyer des mails sur des comptes Google.
Modification de Postfix :
Pour cela, nous allons modifier le fichier de configuration de Postfix (main.cf). On va
indiquer à Postfix d'utiliser les serveurs de google comme relais smtp (smtp.gmail.com).
On va modifier la ligne Relayhost par :
relayhost = [smtp.gmail.com] : 587
587 est le port d'écoute pour communiquer avec les serveurs de Google.
SASL : Simple Authentification and Security Layer
C'est une structure fournissant des services d'authentification et de sécurité aux protocoles
réseaux.
Installer : #apt-get install sasl2-bin
Il faut maintenant activé activer le service, il faut modifier le fichier /etc/default/saslauthd
et changer la ligne par :
« Should saslauthd run automatically on startup ? (default : no)
START=yes »
On va stopper et lancer le service :
#/etc/init.d/saslauthd stop
#/etc/init.d/saslauthd start
Il faut maintenant ajouter l'utilisateur postfix dans SASL :
#adduser postfix sasl
On retourne dans le fichier (main.cf) pour configurer SASL :
# SASL Configuration
smtp_sasl_auth_enable = yes Active l'authentification SASL
smtp_sasl_security_options = noanonymous permet le contrôle des mots de passe plusieurs
options existent pour bloquer/ limiter les mécanismes de mots de passe
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd liste des mots de passe pour
s'authentificier sur le serveur Google
smtp_tls_CAfile= /etc/postfix/cacert.pem
smtp_use_tls = yes sert à activer le protocole TLS
smtp_sender_dependent_authentication = yes Autorise le relais des utilisateurs authentifier
relay_recipient_maps = Indique les adresses du domaine (gmail.com)
local_recipient_maps = Indique celles du domaine local (ys.local)
Maintenant Editons le fichier qui va contenir l'authentification au serveur smtp.gmail.com :
#nano /etc/postfix/sasl_passwd
C'est le chemin qu'on a mis pour l'authentification dans le main.cf
Mis en forme : Anglais (États Unis)
Ensuite il faut donner les droits d'accès au fichier et formater la base SASL.
Tapez :
# chmod 600 /etc/postfix/sasl-password
#postmap /etc/postfix/sasl_password
Correspondances Domaine/relais :
Il faut éditer le fichier de définition des correspondances Domaines/Relais dans
/etc/postfix/transport et ajouter ces lignes :
ys.local = nom de domaine messagerie
smtp.ys.local = smtp.domaine DNS
Il faut indiquer à Postfix le fichier précédent, retourner dans main.cf et ajouter :
Ensuite redémarrer postfix :
/etc/init.d/postifx restart
Il doit se stopper et se relancer.
TEST et validations :
Nous allons tester d’envoyer un mail à depuis le compte [email protected] vers une adresse
de messagerie (ici, [email protected]
Et voir si on reçoit bien le mail sur l’adresse [email protected]
ET alors ?
Note : 12/20
Mis en forme : Police :16 pt, Gras