MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire...

14
SARIE Yohan BTS SIO MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE ET LIBRE POSTFIX / FETCHMAIL / AMAVIS / CLAMAV / SPAMASSASSIN Epreuve E4 : projet n°1

Transcript of MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire...

Page 1: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

SARIE Yohan BTS SIO

MISE EN PLACE D’UNE SOLUTION DE

MESSAGERIE SECURISEE ET LIBRE

MISE EN PLACE D’UNE SOLUTION DE

MESSAGERIE SECURISEE ET LIBRE

POSTFIX / FETCHMAIL / AMAVIS / CLAMAV / SPAMASSASSIN

Epreuve E4 : projet n°1

Page 2: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Sommaire :

I- Présentation

a. Objectifs

b. Contexte

II- Mise en œuvre de la solution

a. Installation et configuration Postfix :

b. Configuration des réceptions de mails sur le

serveur :

c. Configuration d’un serveur DNS :

d. Configuration d’un client de messagerie :

Thunderbird

i. Configuration de Fetchmail :

ii. Configuration de Postfix et du Sasl :

1. Postfix

2. SASL

iii. Correspondance Domaine /Relais :

e. Sécurisation du serveur de mails :

i. Installation et Configuration d’Amavis :

ii. Installation d’un anti-virus Clamav :

iii. Installation et configuration d’un

antispam SpamAssassin :

Page 3: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

1- Présentation : a. Objectifs :

- Mettre en place un serveur de messagerie à moindre coût.

- Sécuriser l’envoi et la réception de mails en les centralisant sur un serveur.

- Sauvegarder les mails.

- Analyser les mails avant de les distribuer.

b. Contexte :

Une entreprise souhaite mettre en place un serveur de messagerie interne pour pouvoir

conserver les mails et de pouvoir les analyser et les sécuriser. Nous utiliserons un serveur

Linux avec Postfix et Fetchmail pour des raisons financières. Le serveur aura les

fonctionnalités suivantes : Anti-spam, Antivirus, récupération des mails hébergés en externe.

2- Mise en œuvre de la solution : Remarque :

Le service Mail et le serveur DNS seront installés sur un poste LINUX sous Debian et seront

configurés en ligne de commande sous l’utilisateur Root.

Requis :

Pour le serveur Mails :

- Postfix : #apt-get install postfix

- Fetchmail : #apt-get install fetchmail

- Courrier-pop : #apt-get install courier-pop

Pour le client:

- Thunderbird : à télécharger sur internet.

Page 4: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

a. Installation et configuration Postfix : Toutes les configurations de Postfix se feront dans le fichier qui se nomme main.cf. Dans un

premier temps nous allons configurer Postfix pour une utilisation en local seulement.

Installer Postfix : apt –get install postfix

Suivre les étapes d’installation de Postfix :

Page 5: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Expliquons quelques points:

Myhostname : c’est le nom du serveur de courriel (hostname), par défaut

mail.domaine.net soit « YS-Debian »

Mydestination : ce sont les domaines de messageries pour lesquels le serveur est

capable de distribuer les mails, remplacez par votre nom de machine soit « YS-

Debian »

Myorigin : c’est le domaine par défaut utilisé pour les messages postés localement.

Mynetworks : les réseaux autorisés à communiquer avec le serveur de messagerie

Home_mailbox = Maildir/ : permet de recevoir les mails dans le dossier personnel des

utilisateurs sous un dossier Maildir

b. Configuration des réceptions de mails sur le serveur :

Nous allons au préalable créer un utilisateur nommé yoyo.

#Adduser yoyo

Test envoi d’un mail à l’utilisateur Isabelle.

#mail yoyo

Subjet : test yoyo

Appuyer sur Ctrl+D

Cc : appuyer sur entrée

On souhaite que le message arrive dans le dossier personnel d’isabelle et non dans /var/mail.

Retourner dans le Main.cf de Postfix et dé-commenter la ligne suivante :

#mailbox_command

Et ajouter celle-ci :

Home_mailbox=Maildir/

Refaire le test d’envoi de mail à Isabelle. On remarque que le dossier Maildir a bien été créé

dans le dossier personnel, le mail est dans ce dossier.

Page 6: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

c. Configuration d’un serveur DNS :

Avant de configurer le serveur DNS, assurez-vous qu’il soit déjà installé et qu’il fonctionne,

que vous ayez bien un domaine DNS, ici c’est Ys.fr

La configuration du serveur DNS a été faite sur un serveur Windows 2008.

Pour une configuration sur Debian : Apt-get install bind9

Nous allons ensuite créer un fichier de zone qui sera db.yoh.local.

Il faut installer les services POP et SMTP.

Apt-get install courier-pop

Ouvrir le fichier de zone :

Exemple d’un fichier de zone :

Faire de même avec la résolution inverse : db.yoh.local.inv

Redémarrer le serveur DNS :

Pour vous assurer que tout fonctionne, sur le poste client, mettre en DNS préféré l’adresse

IP du serveur DNS (172.24.190.50) et de ping le smtp et le pop :

Ping smtp.ys.fr / ping pop.ys.fr

Page 7: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

d. Configuration d’un client de messagerie : Thunderbird

i. Configuration de Fetchmail :

Une fois Thunderbird installé, on va configurer l’adresse mail de yoyo.

L’adresse mail est : [email protected]

Une fois que l’envoi de mail en local fonctionne, on va configurer Postfix et fetchmail pour

que Yoyo puissent avoir un compte pop sur OVH par exemple (fetchmail). On veut que yoyo

puisse récupérer des mails sur des comptes mails à l’extérieur, par exemple, un compte

google (@gmail.com).

Commençons par fetchmail, Nous avons créé un compte OVH qui est

[email protected]. Nous allons créer le fichier de configuration de fetchmail.

#gedit /etc/fetchmailrc

La dernière ligne :

Poll pop3.oasysconsulting.fr protocol POP3 user « [email protected] » there

with password « Esicad031 » is yoyo here

Cette configuration sert à fetchmail de récupérer des mails pour un seul utilisateur sur des

serveurs POP distants. Ici, il va lui demander de se connecter à oasysconsulting.fr en utilisant

le compte OVH : [email protected] comme mot de passe Esicad031

ii. Configuration de Postfix et du Sasl :

L’utilisateur yoyo souhaite aussi envoyer des mails sur des comptes Google.

1. Postfix :

Nous allons indiquer à Postfix d’utiliser comme relais smtp les serveurs de Google

(smtp.gmail.com). Le relayhost va effectuer les livraisons de courrier via ce relais smtp.

Retournons dans notre fichier de configuration de Postfix (main.cf) :

relayhost = [smtp.gmail.com] : 587

« 587 » : le port d’écoute pour communiquer avec les serveurs de Google.

Page 8: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

2. SASL :

Ce service SASL (Simple Authentication and Security Layer). C’est un outil qui va utiliser le

protocole de sécurisation d’échange TLS (transport Layer Security) qui fonctionne en mode

client-serveur.

- Commençons par l’installation du package :

#apt-get install sasl2-bin

Le service ne s’active pas seul. L’authentification SASL est gérée par un daemon saslauthd

avec une base d’identifiants sasldb. Pour cela, éditer le fichier /etc/default/saslauthd et

modifier la ligne suivante en YES.

# should saslauthd run automatically on startup? (Default: no)

START=yes »

- Relancer le daemon saslauthd :

Il faut maintenant rajouter l’utilisateur Postfix dans le groupe SASL pour que postfix

interagisse avec le daemon de saslauthd :

#adduser postfix sasl

Modifier main.cf :

“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'authentifier 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)

Editer le fichier qui va contenir l’authentification au serveur smtp.gmail.com :

#nano /etc/postfix/sasl_passwd

Page 9: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Chemin qu’on a renseigné auparavant à la ligne smtp_sasl_password_maps = …

[Serveur smtp de Google] : port d’écoute exemple.com : password

Ensuite il faut donner les droits d’accès à ce fichier et formater la base SASL.

iii. Correspondance Domaine /Relais :

Il faut éditer le fichier de définition des correspondances Domaines/Relais dans

/etc/postfix/transport et ajouter ces lignes :

Une fois ce fichier modifié il faut indiquer à Postfix (dans le main.cf) où il va récupérer les

informations.

Redémarrer Postfix :

Test :

Nous allons tester la réception des mails hébergés sur le serveur externe vers la messagerie

[email protected]

Page 10: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

e. Sécurisation du serveur de mails :

Nous voulons maintenant sécuriser ce serveur de mail, nous allons donc installer un anti-

virus un anti-spam et un outil d’analyse des mails.

i. Installation et Configuration d’Amavis :

#apt-get install amavisd-new

Il faut ensuite ensuite renseigner le nom FQDN du serveur, hostname.monDomaine, dans le

fichier de configuration d’amavis :

#nano /etc/amavis/conf.d/05-node-id

Modifier les deux lignes : Chomp et $Myhostname en ajoutant le nom FQDN du serveur soit,

YS-Debian.ys.fr

Démarrer ensuite Amavis.

Faire communiquer Amavis avec Postfix :

Deux façons sont possibles ici, soit modifier directement le fichier main.cf de Postfix ou bien

taper directement en ligne de commande :

#postconf –e content_filter=smtp-amavis :[127.0.0.1] :10024

#postconf –e receive_overrid_options=no_adresse_mappings

En tapant cela, les informations sont directement renseignées dans le fichier main.cf

La commande postconf –e permet d’intégrer directement les lignes de configuration dans le

fichier main.cf de postfix.

Page 11: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Editer et modifier le fichier master.cf de postfix tel quel :

Vous pouvez renseigner ces informations au début du fichier.

Redémarrer Postfix et Amavis :

Tests :

Afin de vérifier le bon fonctionnement d’Amavis nous allons envoyer un mail et regarder

dans les logs du serveur si Amavis filtre le contenu des mails.

Depuis le serveur :

Vérifier les logs :

Nous pouvons constater que le mail a bien été analysé, sécurisé et distribué.

Page 12: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

ii. Installation d’un anti-virus Clamav :

Nous avons choisi comme antivirus CLAMAV. Sa principale qualité est qu’il permet de

scanner les mails reçus et envoyés avec un logiciel de messagerie classique. Son paquet

inclut un daemon et un scanner.

#apt-get install clamav

#apt-get install clamav-daemon

Faire mise à jour des signatures de virus :

#freshclam

La première mise à jour peut prendre un certain temps. Il est important de mettre à jour

régulièrement les bases de données des signatures de virus.

Ajouter l’utilisateur Clamav au groupe Amavis :

Pour qu’Amavis puisse utiliser Clamav, il faut ajouter l’utilisateur Clamav au groupe Amavis :

#gpasswd –a clamav amavis

La commande Gpasswd permet d’ajouter un utilisateur dans un groupe, le –a permet de

l’ajouter dans un nouveau groupe sans le supprimer de l’ancien.

Il faut également modifier le fichier /etc/amavis/conf.d/15-content_filter_mode

Editer ce fichier :

#nano /etc/amavis/conf.d/15-content_filter_mode

Dé commentez les deux lignes de la partie virus :

Sauvegarder le fichier et Redémarrer Clamav et Amavis :

Test :

Pour test l’antivirus, il existe un fichier de test anti-malware. Il simule la signature d’un virus

EICAR afin de déclencher la mise en quarantaine du message :

La Chaîne de caractère est la suivante :

X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

Envoyer un mail avec le contenu ci-dessous dans l’objet du message :

Page 13: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Vérifier les logs :

Lorsqu’un virus est détecté, celui-ci est placé dans un répertoire de quarantaine

« virusmails » dont le chemin est : /var/lib/amavis/virusmails.

Ils sont triés par ordre alphabétique. Si nous regardons les logs on lit :

« Quarantine : 0/virus-0qxsAJ_AKlUG » Le virus se situe donc dans le dossier « 0 »

Clamav offre la possibilité de scanner le répertoire de quarantaine.

iii. Installation et configuration d’un

antispam SpamAssassin :

Cet anti spam repère puis éradique tout ce qui, dans le trafic de courriers électroniques, est

reconnu comme spam.

Le programme les teste et leur attribue un score. Si le score dépasse une certaine limite, le

mail est déclaré en tant que SPAM.

#apt-get install spamassassin

Lier Spamassassin à Amavis :

Pour permettre à Amavis d’utiliser Spamassassin, il faut dé commenter les deux lignes

suivantes dans le fichier 15-content_filter_mode :

Mise en place d’un tag de spam :

Spamassassin met de base tous les mails détectés en quarantaine, mais il se peut que ce soit

une erreur et que le message est important. On peut donc placer un tag dans l’entête du

spam « ***SPAM*** » et laisser passer le message.

Pour ajouter ces paramètres, il nous faut ajouter ces lignes dans le fichier « 50-user »

d’Amavis :

#nano /etc/amavis/conf.d/50-user

Page 14: MISE EN PLACE D’UNE SOLUTION DE MESSAGERIE SECURISEE … · Démarrer ensuite Amavis. Faire communiquer Amavis avec Postfix : Deux façons sont possibles ici, soit modifier directement

Enregistrer le fichier et redémarrer Amavis.

Tests :

Envoyer un mail avec : KJS*CAJDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-USE-

TEST-EMAIL*C.34X

Vérifier ensuite les logs :

Spam Assassin a bien détecté le mail comme étant un spam mais il l’a quand même transmis

comme désiré.

C’est ensuite à l’utilisateur de choisit de l’ouvrir s’il le juge de confiance.