Serveur de Messagerie M3204-TP02

Patrice Gommery - Septembre 2019

SERVEUR DE MESSAGERIE - M3204 1 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 (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-. Elle est de la forme nom_utilisateur@domaine. Si le domaine n'est pas mentionné, l'adresse représente une boite aux lettres locale. Les utilisateurs sont des comptes utilisateurs du système hébergeant le serveur SMTP Postfix. Ils sont créés à l'aide des commandes [adduser] et [passwd].

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, ou Claws-Mail dans notre distribution Linux. • 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 de Procmail.

Le TP mettra en œuvre les logiciels suivants :

• Postfix (Serveur SMTP) • -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 • SquirrelMail (Serveur ) sera installé sur le serveur pour illustrer cette fonctionnalité. Le client de messagerie sera alors votre navigateur (Utilisez celui de votre machine physique)

SERVEUR DE MESSAGERIE - M3204 2 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é en début de semestre.

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 [email protected] (Mot de passe : PASSWORD)

Partie 1 : Préparation de la machine

Votre serveur est déjà fonctionnel, vous l'avez configuré lors de sa première utilisation. Vérifiez simplement que vous communiquez bien avec le serveur DNS de la salle (172.16.0.102) et que c'est bien lui qui résout les noms de machine pour vous (nslookup).

Vérifiez aussi à l'aide du navigateur de votre machine physique que votre serveur web est accessible par le nom : www.domVMID.net

Dans le cas contraire, reprenez la correction du TP01 précédent en fin de ce document.

Partie 2 : Installation des Paquets

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

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

Les options suivantes seront renseignées :

• Installation de type : Site Internet • Nom de courrier : mail.domVMID.net

SERVEUR DE MESSAGERIE - M3204 3 Partie 3 : 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 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 = +

Les commandes à connaître :

• postfix reload (recharge la configuration après modification du main.cf) • postfix stop (arrête postfix) • postfix start (démarre postfix) • postfix check (vérifie la configuration)

La nouvelle version vous demande de désactiver le mode de compatibilité, saisissez la commande : postconf compatibility_level=2 pour supprimer le message. Relancez ensuite postfix reload et postfix check pour vérifier que tout est OK

SERVEUR DE MESSAGERIE - M3204 4 Partie 4 : 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 fournit 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 5 : Test de fonctionnement de la configuration

Ouvrez un second terminal sur votre machine physique et exécutez la commande : 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: [email protected] Le serveur doit vous répondre 250 OK

RCPT TO: [email protected] Le serveur doit vous répondre 250 OK

RCPT TO: [email protected] Le serveur doit vous répondre 250 OK

DATA Le serveur vous répond 354 End data with .

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

SERVEUR DE MESSAGERIE - M3204 5 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.

Revenez sur votre connexion ssh. 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 6 : Installation des Services POP et IMAP

Installation des services POP et IMAP

Pour que vos utilisateurs puissent lire leurs messages à partir du poste de travail, 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.

A l'aide de la commande apt-get , installez les paquets suivants : courier-pop et 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.

Configurez Maintenant Le Client de Messagerie Claws-Mail pour lire les messages de votre utilisateur user2 :

Rappel des Paramètres pour votre configuration :

1) L’adresse à configurer : [email protected] 2) Nom complet : Votre Prénom et Votre Nom 3) Le protocole utilisé en entrée : IMAP 4) Le nom DNS du serveur de réception : mail.domVMID.net 5) Le nom de l’utilisateur propriétaire de la B.A.L. : user2 6) Le mot de passe (POP ou IMAP) associé à l’utilisateur : 123 7) Serveur pour l'envoi : mail.domVMID.net

Vous devriez voir le message que vous avez envoyer à l'aide l'utilisateur user1 en partie 5

SERVEUR DE MESSAGERIE - M3204 6 POINT 2 : Envoyez un nouveau message à [email protected] 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 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)

FIN DU TP :

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 style pnom : 1ère lettre de votre prénom suivi de votre nom.

(Exemple : [email protected]) et envoyez un mail à l'adresse : [email protected] Sujet : FIN TP VMID, contenu de votre choix.

SERVEUR DE MESSAGERIE - M3204 7 CORRECTION RAPIDE DU TP01 :

Personnalisation de la machine

Fichier /etc/network/interfaces :

# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/*

# The loopback network interface auto lo iface lo inet loopback

# The primary network interface allow-hotplug eth0 iface eth0 inet static address 172.16.VM.ID netmak 255.255.0.0

Fichier /etc/hosts :

127.0.0.1 localhost 127.0.1.1 serveur.domVMID.net serveur

# The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters

Fichier /etc/hostname : serveur

Fichier /etc/resolv.conf : domain h205.net

SERVEUR DE MESSAGERIE - M3204 8 search h205.net nameserver 172.16.0.102

Changement du mot de passe root : passwd root Rebootez après avoir fait les modifications

Installation des paquets : apt install apache2 apt install apt install mysql-server apt install phpmyadmin (N'oubliez de cocher Apache2 avec la barre d'espace)

Si vous avez oublié de cocher Apache2 lors de l'installation de phpmyadmin, lancez la commande : dpkg-reconfigure phpmyadmin (et réinstaller la base de données

Pour modifier la page web par défaut :

- Supprimer la page par défaut : rm /var/www//index.html - Créer une nouvelle page : nano /var/www/html/index.html

Testez la résolution des noms : nslookup www.domVMID.net

Résultat de la commande :

Server: 172.16.0.102 Address: 172.16.0.102#53 www.dom3126.net canonical name = serveur.domVMID.net. Name: serveur.domVMID.net Address: 172.16.VM.ID Création d'un site Web :

Création du dossier mmis3 : mkdir /var/www/mmis3 Création page index.html : nano /var/www/mmis3/index.html Modification des droits : chown -R .www-data /var/www/mmis3

SERVEUR DE MESSAGERIE - M3204 9 Duplication du fichier de configuration :

- cd /etc/apache2/sites-available - cp 000-default.conf 001-mmis3.conf

Modification du fichier 001-mmis3.conf Modifiez simplement la ligne DocumentRoot : DocumentRoot /var/www/mmis3

Activation du nouveau site : a2ensite 001-mmis3 Désactivation du site par défaut : a2dissite 000-default.conf Rechargement de la configuration : service apache2 reload

Mise à jour du Site via FTP : apt install proftpd Modifiez son fichier de configuration /etc/proftpd/proftpd.conf en dé-commentant la ligne : Default Root ~ (Enlevez simplement le # devant la ligne) Rechargez la configuration : service proftpd reload (en cas d'erreur, vérifiez vos fichiers hosts et hostname)

Créez un nouvel utilisateur : adduser mmis3 Modifiez son répertoire par défaut : usermod -d /var/www/mmis3 mmis3 Lui donner les droits sur ce dossier : chown mmis3 /var/www/mmis3 Optionnel : chmod -R 755 /var/www/mmis3

PAS DE CORRECTION pour l'utilisation de Gimp et Filezilla PAS DE CORRECTION pour la configuration de Claws-Mail (vu en TD)

SERVEUR DE MESSAGERIE - M3204 10