• Aucun résultat trouvé

Serveur de Messagerie

N/A
N/A
Protected

Academic year: 2022

Partager "Serveur de Messagerie"

Copied!
8
0
0

Texte intégral

(1)

Serveur de Messagerie

M3204 – TP01

Patrice Gommery – Septembre 2021

(2)

Introduction

La mise en place d'un système de messagerie passe par l'installation de plusieurs serveurs applicatifs (Un pour chaque protocole mis en œuvre : SMTP, POP, IMAP). En fonction de la configuration de l'infrastructure réseau et de l'organisation de la messagerie, il peut être nécessaire d'installer des outils supplémentaires comme FetchMail (Récupération de messages sur un serveur POP externe) ou Procmail (Distributeur de courrier interne avec filtrage des mails). L'installation peut aussi être complétée par des utilitaires de sécurité supplémentaire tel que SpamAssassin ou un Antivirus.

Une boite aux lettres est représentée par son adresse e-mail. Elle est de la forme nom_utilisateur@domaine.tld. Les utilisateurs sont des comptes utilisateurs du système Linux hébergeant le serveur SMTP Postfix (ou des comptes virtuels stockés dans une base de données) . Ils sont créés à l'aide des commandes [adduser] et [passwd] ou à l'aide d'outil dédiés comme postfixadmin que nous verrons plus tard.

Un système de messagerie est composé de trois éléments :

• L'UA (User Agent) : Il est chargé de poster et de lire le courrier. C'est l'outil utilisé par l'utilisateur final. Ce sont des logiciels comme Outlook, Eudora, Thunderbird Claws-Mail ou tout souvent de nos jours : un Webmail.

• Le MTA (Message Transfer Agent) : Son rôle est de transférer le courrier. Ce sont des logiciels comme Sendmail, Qmail et Postfix.

• Le MDA (Mail Delivery Agent) : Il délivre le message provenant du MTA dans une boîte aux lettres. C'est le rôle des outils comme Courier ou Dovecot, mais aussi de procmail.

Le premier TP mettra en œuvre les logiciels suivants :

• Postfix (Serveur SMTP)

• Courier-pop (Serveur POP)

• Courier-imap (Serveur IMAP) ou Dovecot (dans un autre TP)

• Procmail pour délivrer les messages dans les boites aux lettres locales

• Rainloop (webmail) pour lire et envoyer les messages

(3)

Consignes Générales pour le TP

Pendant tout le TP, remplacez VMID par le numéro de votre machine virtuelle qui vous a été communiquée au TP précédent.

Votre serveur virtuel (VPS) est hébergé sur le serveur Proxmox de la salle réseau.

Il est accessible en SSH avec la commande : ssh root@172.16.VM.ID (Mot de passe : PASSWORD)

Partie 1 : Installation des Paquets

A l'aide de la commande apt , vous devez installer les paquets suivants :

Postfix (Site Internet, Nom de courrier : mail.domVMID.net)

• procmail

courier-base (avec un seul r ! , validez les options par défaut)

Partie 2 : Configuration de Postfix

Postfix est configuré à l'aide du fichier main.cf qui se trouve dans le répertoire /etc/postfix

Par sécurité, renommez ce fichier en main.cf.save (Commande mv)

Créez un nouveau fichier main.cf (Editeur nano) avec les éléments suivants :

(Ne vous contentez pas de modifier le fichier existant, il contient énormément de paramètres, dont beaucoup ne fonctionneront pas dans notre configuration)

smtpd_banner = $myhostname ESMTP $mail_name compatibility_level = 2

append_dot_mydomain = no

myhostname = mail.domVMID.net mydomain = domVMID.net

myorigin = $myhostname

mydestination = $myhostname, localhost.$mydomain, $mydomain mynetworks = 172.16.0.0/16, 127.0.0.0/8

default_transport = smtp

alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases

mail_owner = postfix home_mailbox = Maildir/

mailbox_size_limit = 0 recipient_delimiter = +

(4)

Les commandes à connaître :

postfix check (vérifie la configuration)

postfix reload (recharge la configuration après modification du main.cf)

postfix start (démarre postfix)

postfix stop (arrête postfix)

Partie 3 : Création des Boîtes aux lettres :

Pour envoyer et recevoir des messages nous avons besoin de boîtes aux lettres.

Celles-ci seront associées à des comptes utilisateurs Linux.

Créer (adduser) 2 utilisateurs user1 et user2 avec leurs mots de passes (123)

Nous allons utiliser des boîtes aux lettres au format Maildir (Un message = Un fichier) , nous devons donc créer pour chaque utilisateur un dossier pour réceptionner ses messages. Pour cela, nous utiliserons la commande maildirmake fournie avec courier.

Pour chaque utilisateur, répétez la procédure suivante (Exemple avec user)

􀀀 Placez-vous dans son répertoire personnel (Exemple : /home/user)

􀀀 Exécutez la commande suivante : maildirmake Maildir (le M majuscule est important)

􀀀 Donnez les droits sur le dossier à votre utilisateur avec la commande chown Exemple : chown –R user.user Maildir (Attention aux majuscules)

Partie 4 : Test de fonctionnement de la configuration

telnet mail.domVMID.net 25 , à l'invite de commande utilisez les commandes suivantes (attention aux majuscules):

HELO poste (validez par entrée après chaque commande) Le serveur doit vous répondre 250 mail.domVMID.net

MAIL FROM: user1@domVMID.net Le serveur doit vous répondre 250 OK

RCPT TO: user2@domVMID.net Le serveur doit vous répondre 250 OK

RCPT TO: prof@domprof.net Le serveur doit vous répondre 250 OK

DATA

Le serveur vous répond 354 End data with <CR><LF>.<CR><LF>

􀀀 Saisissez en validant après chaque ligne Subject: Test Messagerie domVMID Votre Prénom et Votre Nom Un message de votre choix . (point)

Le serveur vous répond 250 OK: queued as XXXXXXXXXX (un N° de message dans sa file d'attente)

􀀀 QUIT et validez pour terminer la session

(5)

REMARQUE vous pouvez aussi utiliser la même procédure en utilisant le serveur mail d'un de vos camarades.

Remplacez simplement le VMID lors de la connexion avec telnet (Pas pour les autres commandes.

La session SMTP précédente a reproduit l'envoi d'un mail par votre premier utilisateur vers votre second.

Nous allons maintenant vérifier que celui-ci est bien arrivé dans sa boîte aux lettres.

Positionnez-vous dans le dossier /home/user/Maildir/new (remplacez user par le nom du destinataire du message). Listez les fichiers (ls), vous devez voir un fichier qui correspond à votre message.

Vous pouvez le visionner avec l’éditeur de texte nano ou les commandes less ou cat

(ASTUCE pour le nom du message, saisissez le début et appuyez sur la touche de tabulation [TAB] pour compléter automatiquement)

POINT 1 :

Faites une copie de ce premier message dans votre dossier /root en le renommant message.txt ATTENTION (Ne déplacer pas le fichier, faites une copie avec cp)

Partie 5 : Installation du Service IMAP

Installation du service IMAP

Pour que vos utilisateurs puissent lire leurs messages à l'aide d'un client de messagerie, vous devez installer les protocoles POP et IMAP pour compléter l’installation de notre serveur de messagerie. Ces protocoles nous serons fournis par le logiciel courier. Dans notre cas , nous n'utiliserons que IMAP A l'aide de la commande apt , installez le paquet : courier-imap

Les services sont démarrés automatiquement. Vous pouvez maintenant configurez vos logiciels clients pour qu’ils viennent lire les messages à l’aide des protocoles POP ou IMAP.

La configuration d'un client , quel qu'il soit reste de toute façon la même en termes de contenu :

L'adresse Mail de l'utilisateur Son nom complet

Pour la réception :

Le protocole de réception : POP ou IMAP (Dans notre exemple, nous utiliserons IMAP) L'adresse IP (ou le nom DNS) du serveur de mail hébergeant les boites aux lettres

Le numéro de port utilisé par le serveur (110 pour POP, 143 pour IMAP)

Le compte utilisateur pour l'authentification (ou son adresse mail en fonction du MDA) Le mot de passe de l'utilisateur

Pour l'émission :

L'adresse IP (ou le nom DNS) du serveur SMTP à qui nous confirons nos mails Le numéro de port utilisé par le serveur SMTP (25 par défaut)

Si le serveur SMTP nécessite une authentification : un compte et un mot de passe utilisateur.

(ce n'est pas notre cas)

(6)

D'autres informations peuvent être nécessaires en fonction du niveau de sécurité des serveurs (POPS, IMAPS, SMTPS) Dans ce cas les numéros de ports seront aussi différents.

Partie 6 : Configuration de Claws-Mail

POINT 2 :

Utilisez Claws-Mail pour Envoyer un nouveau message à prof@domprof.net avec comme sujet : SUITE TP VMID et comme contenu l'adresse MAC de la première carte réseau de votre serveur (eth0) .

Votre serveur de messagerie fonctionne, vous voudriez maintenant envoyer des emails aux autres étudiants de la salle à partir de votre poste . Pour cela votre serveur a besoin de trouver les enregistrements MX de chacun des serveurs de messagerie de la salle.

REMARQUE : Le serveur DNS de la salle étant opérationnel, vous pouvez dès maintenant envoyer des mails aux autres étudiants. (Il suffit de connaître leur VMID pour reconstituer leurs emails)

POINT 3 : (Attribuez Seulement si le POINT 2 est acquis)

Créez une boite aux lettres plus personnalisée (toujours dans votre domaine) en utilisant le modèle pnom : 1ère lettre de votre prénom suivi de votre nom.

(Exemple : pgommery@domVMID.net) et envoyez un mail en utilisant Claws-Mail à l'adresse : prof@domprof.net - Sujet : FIN TP VMID, contenu de votre choix.

Complément : Compréhension des Entêtes

Comme vu en cours, chaque message est composé de deux éléments : Des entêtes et le corps du message au format MIME.

Dans cette partie du TP, nous allons nous intéresser aux entêtes .

Pour commencer, ouvrez Claws-Mail avec le compte user2 et envoyez un message à votre nouvel utilisateur (pnom) avec comme sujet : TEST PARTIE 7 et comme contenu MON MESSAGE

Ensuite, dans la boite mail de pnom, ouvrez le message et tapez CTRL+U pour afficher les entêtes du message.

(7)

Les entêtes vous permettent de voir :

D'où vient le message exactement ; De quel poste il a été émis , par qui, à quel serveur il a été confié, quel serveur vous l'a délivré , à quelle date , sous quel format .... Tout est là.

Et c'est à partir de ces informations, que nous pourrons "lutter" contre les spams et contrôler le flux des messages dans le prochain T

Quelques Explications sur ses entêtes :

Return-Path : L'adresse de retour en cas de réponse au mail

X-Original-To: L'adresse de la boite mail de Destination (peut-être différent du To: ) Delivered-To: L'adresse de la boite mail ou a été remis le message

Received: Les informations sur les serveurs SMTP qui ont relayé le message, ainsi que sur le poste qui l'a émis.

Dans l'exemple :

Le message a été émis par l'utilisateur user2 avec NeoMutt à partir de la machine 172.16.31.26 . Vous voyez aussi l'ID du message dans la file d'attente Postfix pour l'identifier.

Message-ID: Identifiant du message généré par le serveur à sa création.

Date: Date de l'envoi du message (peut-être différente des dates dans Received) Subject: Le sujet (ou Objet) du message, mot clé Subject saisi après DATA

From: L'expéditeur affiché (pas le compte qui a envoyé le message - MAIL FROM :) To: Le destinataire affiché (pas le compte de destination - RCPT TO:)

"C'est en manipulant ces informations que les "spammeurs" font croire aux utilisateurs que le message vient d'une personne connue et parfois de vous-même"

User-Agent: L'application utilisée pour envoyer le message (ici NeoMutt 1.7.2) MIME-Version : la version de MIME

Content-Type: le type de contenu et l'encodage EXERCICE FIN DE TP:

A partir de Claws-Mail reprenez un des messages reçus de : prof@domprof.net (n'importe lequel).

Créez un document nommé : analyse.txt avec le contenu suivant et répondez aux questions :

NE REPRENEZ PAS LE TEXTE DE LA QUESTION DANS VOTRE DOCUMENT, PRECISEZ SIMPLEMENT LE N° . Exemple 1: Réponse

(8)

1. Quelle est la version de Claws-Mail installée sur votre machine ? 2. Quelle est l'adresse IP du poste d'où a été émis le message du prof ?

3. Quel outil de messagerie (avec sa version) utilise le prof pour émettre le message ? 4. Quel est le nom DNS du serveur de mail utilisé par le prof ?

5. Quelle est l'adresse IP du serveur de mail utilisé par le prof ? POINT 4 :

Envoyez un message au prof en joignant le fichier analyse.txt avec comme sujet : ANALYSE VMID

Références

Documents relatifs

Nouveaux filtres de recherche - Vous pouvez maintenant rechercher des éléments avec des filtres tels que is:free, is:busy pour les rendez-vous, ainsi que

Si vous souhaitez que votre serveur BIMoffice se lance automatiquement au démarrage de la machine serveur, effectuez un clic droit dans le Dock sur l’icône de

La reprise manuelle (configuration par défaut pour Server Recovery Manager) a lieu lorsque le service a été restauré et que le groupe de redondance autorise le bouton de

La commande HELO étant suivi pour l’instant du nom super-spam vos messages devraient être rejetés par la règle reject_invalid_hostname. Modifiez de nouveau le fichier spam.tmp afin

Forcez une nouvelle tentative d'envoi du message avec la commande postqueue -f Vérifiez que votre message sort bien de la file d'attente avec postqueue -p. Regardez de nouveau dans

Mise en place Transit du mail entre serveur

Afin de créer des comptes clients pour les différents utilisateurs, on peut tester le bon fonctionnement de serveur de messagerie en utilisant les options d’envoie et réception

Si votre serveur de messagerie IMS n'est pas vu de l'extérieur, vous pouvez utiliser un autre compte de courrier pour communiquer avec des personnes extérieures à votre