• Aucun résultat trouvé

IUT Charlemagne, NANCY. Serveur Mail Sécurisé. CROUVEZIER Thibaut, FOLTZ Guillaume, HENRIOT François, VOISINET Florian

N/A
N/A
Protected

Academic year: 2022

Partager "IUT Charlemagne, NANCY. Serveur Mail Sécurisé. CROUVEZIER Thibaut, FOLTZ Guillaume, HENRIOT François, VOISINET Florian"

Copied!
29
0
0

Texte intégral

(1)

IUT Charlemagne, NANCY

Serveur Mail Sécurisé

(2)

Table des matières

1 Remerciements 1

2 Introduction 2

2.1 Présentation des étudiants . . . 2

2.2 Le projet . . . 2

2.3 Cahier des charges . . . 2

2.4 Problématique . . . 2

2.5 Organisation et répartition des tâches . . . 3

2.5.1 Organisation . . . 3

2.5.2 Répartition des tâches . . . 3

3 Messagerie 4 3.1 Les modes de relève du courrier . . . 4

3.2 Serveur de messagerie . . . 5

3.2.1 Envoi . . . 6

3.2.2 Réception . . . 6

3.3 Histoire . . . 7

4 Serveur SMTP 8 4.1 Vous avez parlé de SMTP ? . . . 8

4.2 Modes de connexion au serveur SMTP . . . 9

4.3 Les échanges de mails entre serveurs . . . 9

5 Postfix 9 5.1 Fonctionnement . . . 10

5.1.1 Phase d’insertion . . . 10

5.1.2 Phase de traitement . . . 10

5.1.3 Phase de livraison . . . 10

5.2 Les filtrages de contenu . . . 11

6 Le chiffrement 12 6.1 Pourquoi chiffrer ? . . . 12

6.2 Comment ça marche ? . . . 12

6.3 Chiffrement symétrique . . . 13

6.4 Chiffrement asymétrique . . . 14

6.5 La signature numérique . . . 15

6.6 PGP/GPG . . . 16

6.6.1 PGP . . . 16

6.6.2 GPG . . . 16

7 Mise en place 17 7.1 Serveur DNS (Bind9) . . . 17

7.2 Postfix . . . 17

7.3 GPG . . . 18

8 Solutions alternatives 20 8.1 Zeyple . . . 20

8.1.1 Présentation . . . 20

8.1.2 Installation . . . 20

8.1.3 Avis . . . 21

(3)

8.2 GPG-Mailgate . . . 21

8.2.1 Présentation . . . 21

8.2.2 Installation . . . 21

8.2.3 Avis . . . 22

9 Annexes 23 9.1 Bind9 . . . 23

9.2 Postfix . . . 25

(4)

1 Remerciements

Au terme de ce travail, nous saisissons cette occasion pour exprimer nos vifs remerciements à toute personne ayant contribué, de près ou de loin, à la réalisation de ce projet.

Nous souhaitons tout d’abord remercier Monsieur CASSET Stéphane, notre tuteur, pour l’aide et le soutiens qu’il nous a accordé durant ces neuf semaines de travail.

L’expression de notre haute reconnaissance à nos encadrants les professeurs NUSSBAUM Lucas, et DOSCH Philippe, responsables de la licence professionnelle ASRALL, qui nous ont encadrés avec patience au long de cette année. Leurs conseils nous ont été bien utiles, notamment pour la rédaction de ce rapport.

Nous exprimons également notre gratitude aux enseignants de la licence professionnelle pour les compétences qu’ils nous ont permis d’acquérir au fil de cette année d’étude afin de mener à bien ce projet.

(5)

2 Introduction

2.1 Présentation des étudiants

Nous sommes quatre étudiants de licence professionnelle Administration de Systèmes, Ré- seaux et Applications à base de Logiciels Libres à avoir été sélectionnés pour travailler ensemble, et mener à bien ce projet :

– Thibaut CROUVEZIER – Guillaume FOLTZ – François HENRIOT – Florian VOISINET

2.2 Le projet

Dans le cadre de ce projet tuteuré, nous devons mettre en place une infrastructure de mails sécurisés. Cela implique donc la mise en place d’une infrastructure d’envoi et de réception de mails, de manière à ce que celle-ci soit sécurisée. Les mails entrants et sortants doivent être contrôlés et validés suivant certaines contraintes que nous fixeront.

L’objectif est de garantir l’authenticité, l’intégrité et la confidentialité des mails sortants via le chiffrement et la signature automatique de ceux-ci.

2.3 Cahier des charges

- Mettre en place deux serveurs de mails avec systèmes de sécurité (pare-feu, anti-spam, anti-virus)

- Mettre en place une infrastructure permettant de chiffrer et signer les mails sortants sur le premier serveur.

- Mettre en place une infrastructure permettant de déchiffrer et vérifier les signatures sur le deuxième serveur.

- Faire une comparaison entre l’utilisation de PGP de facon manuelle et avec le système automatisé.

- Tester des produits existants comme zeyple et gpg-mailgate.

- Produire un rapport et une documentation sur le sujet.

2.4 Problématique

Dans ce projet, nous devons mettre en place une infrastructure sécurisée de messagerie élec- tronique. Il est important qu’à l’envoie et à la réception du mail, l’authenticité soit garantie.

La sécurité devant être transparente pour l’utilisateur afin de garantir un niveau de confiance élevé dans l’infrastructure sécurisée. La problématique réside dans la mise en place d’une in- frastructure automatisée d’un filtrage de contenu assurant le contrôle de l’authenticité et de l’intégrité du courrier échangé entre les serveurs de mails.

(6)

2.5 Organisation et répartition des tâches

2.5.1 Organisation

Afin d’optimiser notre temps pour ce projet, nous avons mis en place un planning prévi- sionnel. (Voir en annexe - Diagramme de Gantt)

- Recherche de documentations

- Installation du serveur DNS avec Bind9.

- Installation des deux serveurs de mails sous Postfix.

- Etude de GPG (chiffrement/signature de mails).

- Tests des solutions alternatives Zeyple et GPG-Mailgate - Mise en place d’un script d’automatisation.

2.5.2 Répartition des tâches

La répartition des tâches s’est faite ainsi :

- Guillaume : recherche de documentations sur Postfix, content filter, participation à la mise en place du serveur DNS, Zeyple, content filter, rédaction du rapport intermédiaire, rédaction du rapport final.

- Florian : recherche de documentations sur Postfix, GPG, content filter, participation à la mise en place du serveur DNS, Postfix, GPG-Mailgate et le content filter, participation à la rédaction du rapport final.

- Thibaut : recherche de documentations sur Postfix, content filter, participation à la mise en place de Postfix, Zeyple, content filter, participation à la rédaction du rapport final.

- François : recherche de documentations sur Postfix, GPG, content filter, participation à la mise en place de Postfix, GPG-Mailgate, content filter, participation à la rédaction du rapport final.

(7)

3 Messagerie

3.1 Les modes de relève du courrier

Pour bien comprendre le principe de relève du courrier, nous allons comparer avec le principe du courrier postal.

Les différentes étapes :

1. Le facteur dépose du courrier dans votre boîte aux lettres 2. Vous vous déplacez jusqu’à votre boîte aux lettres

3. Vous ouvrez la boîte, et maintenant il y a deux possibilités : - Première possibilité :

(a) Vous prenez le courrier (b) Vous l’emmenez chez vous

(c) Vous le lisez chez vous

(d) Après votre passage, votre boîte aux lettres est vide - Deuxième possibilité :

(a) Vous prenez le courrier

(b) Vous lisez le courrier directement sur place (c) Vous faites le tri

(d) Vous jetez le courrier lu que vous ne souhaitez pas garder dans la boîte aux lettres

(e) Après votre passage, votre boîte aux lettres n’est pas vide, mais le courrier est trié

Avantages et inconvénients du premier système ?

Avantages

- Votre boîte aux lettres est vidée à chaque fois

- Vous lisez votre courrier tranquillement chez vous, et vous n’êtes pas devant votre boîte aux lettres

- Les messages sont chez vous, vous les stockez où vous voulez dans votre domicile Inconvénients

- Il vous faut un autre emplacement chez vous pour conserver les courriers que vous voulez conserver

- Si vous êtes dehors, vous êtes obligé de repasser chez vous pour lire votre courrier - Si vous avez un problème chez vous (feu, inondation, ..) : vous perdez tout

(8)

Avantages et inconvénients du deuxième système ?

Avantages

- Le lieu est unique, c’est toujours dans la boîte - Simplicité : il n’y a pas à chercher où est le courrier - Pas de risque de perte lié à un problème chez vous Inconvénients

- Il faut toujours aller à la boîte

- Il faut que la boîte soit bien fermée et sécurisée, sinon tout le monde peut consulter votre courrier

3.2 Serveur de messagerie

Un serveur de messagerie est un logiciel serveur de courrier électronique. Il a pour vocation de transférer les messages électroniques d’un serveur à un autre. L’utilisateur n’est jamais en contact direct avec ce serveur, il utilise soit un client de messagerie, soit un courrielleur web, qui se charge de contacter le serveur pour envoyer ou recevoir les messages.

- Client de messagerie et courrielleur web ?

Un client de messagerie est un logiciel qui sert à lire et envoyer des courriers électro- niques. Ce sont en général des clients lourds, mais il existe aussi des applications webs appelées courielleur webqui offrent les mêmes fonctionnalités. La caractéristique essentielle de tous ces logiciels est de permettre à un utilisateur d’accéder à sa ou ses boîtes de courriers électroniques.

Clients de messagerie les plus connus : Microsoft Outlook, Mozilla Thunderbird, Opera Mail, ... Interfaces web les plus connues : Gmail, Yahoo, Laposte.net, ...

La plupart des serveurs de messagerie possèdent les fonctions d’envoi et de réception, mais elles sont indépendantes et peuvent être dissociées physiquement en utilisant plusieurs serveurs.

Les étapes du trajet d’un courrier électronique

(9)

3.2.1 Envoi

Entre l’utilisateur et son serveur, l’envoi d’un courrier électronique se déroule généralement via le protocole SMTP.

- Vous avez dit SMTP ?

SMTP pour "Simple Mail Transfer Protocol" (Protocole Simple de Transfert de Courrier).

C’est un protocole de communication utilisé pour transférer le courrier électronique vers les serveurs de messagerie. Pour être concis, il permet de spécifier l’expéditeur du message, puis le ou les destinataires d’un message et après avoir vérifié leur existence, de transférer le corps du message. Nous en parlerons plus en détail plus tard.

Le serveur se charge ensuite d’envoyer le message au serveur destinataire, cette fonction est appelée Mail Transfer Agent (MTA).

3.2.2 Réception

La réception d’un courrier électronique s’effectue elle aussi en deux temps. Le serveur doit recevoir le message du serveur de l’expéditeur, il doit donc gérer des problèmes comme un disque plein ou une corruption de la boîte aux lettres et signaler au serveur expéditeur toute erreur dans la délivrance. Cette fonction de réception est appelée Mail Delivery Agent (MDA).

Finalement, le destinataire lance son logiciel de messagerie. Le logiciel se connecte au serveur distant. Pour se connecter au serveur, le logiciel utilise POP ou IMAP.

- Protocole POP/IMAP

POP (POP3) et IMAP sont des protocoles de relève de mails. Pour aller lire vos mails, vous allez forcément vous connecter sur un serveur POP ou sur un serveur IMAP.

POP (Post Office Protocol – Protocole de boîtes aux lettres)

Ce protocole a été créé pour récupérer les mails du serveur et les ramener sur l’ordinateur.

Ce protocole fonctionne dans le premier mode de relève de courrier expliqué au-dessus. L’intérêt de ce protocole est qu’il permet de charger tous les mails sur l’ordinateur. On pouvait ensuite se déconnecter, et lire tranquillement ses mails à la maison.

Le problème étant que la lecture du mail ne peut se faire qu’à un seul endroit et que si l’équipement sur lequel les mails sont téléchargés tombe en panne, vous perdez vos mails.

- IMAP (Internet Message Access Protocol – Protocole Internet d’Accès aux Messages)

Ce protocole permet comme son nom l’indique d’accéder aux messages. Ce protocole fonc- tionne dans le deuxième mode de relève de courrier expliqué au-dessus. L’avantage c’est que quelque soit l’équipement utilisé pour voir les mails vous voyez la même chose, car il ne s’agit que d’une vue du contenu du serveur.

(10)

Voici un schéma résumant les différences entre POP et IMAP

Comme vous l’aurez compris, de nos jours avec la technologie, le protocole IMAP est nati- vement parfaitement adapté aux relèves multiples.

Fonctionnalités courantes

Un serveur de messagerie électronique implémente généralement des fonctionnalités supplé- mentaires telles que l’élimination automatique du courrier non sollicité ou de ceux contenant un virus.

3.3 Histoire

La messagerie électronique est l’une des applications d’internet les plus anciennes. Les pre- mières messageries datent des années 60.

- 1967-1968 : La première messagerie collective est créée.

- Jusqu’en 1972 : Les programmes de messagerie fonctionnaient sur des machines à temps partagé, utilisées par plusieurs utilisateurs.

- 1972 : Premier programme de courrier électronique (e-mail) entre deux machines. Le véritable courrier électronique est né.

Il fallait alors trouver un caractère peu utiliser par les informaticiens, pour séparer nettement l’adresse de l’utilisateur de celle de l’hébergeur. Il a choisit l’@, symbole aujourd’hui du courrier électronique.

(11)

4 Serveur SMTP

4.1 Vous avez parlé de SMTP ?

Pour en revenir sur le protocole SMTP (qui est un des services le plus utilisé sur internet), nous allons voir comment cela fonctionne.

Pour envoyer un mail, vous avez donc besoin d’un Mail User Agent (MUA), il est en géné- ral de deux types :

- Un Webmail (lorsque vous vous connectez en ligne)

- Un client de messagerie (logiciel installé sur votre ordinateur tel que Thunderbird, Appli- cations Smartphone, etc..)

Au moment où vous envoyez votre mail, le MUA va convertir votre mail au format texte (même les pièces jointes seront converties en texte) et va se connecter au serveur SMTP qui est paramétré et envoyer le texte.

Le serveur SMTP va ensuite envoyer le mail vers le destinataire. Si le message doit passer entre différents serveurs, c’est toujours le protocole SMTP qui sera utilisé pour envoyer le mes- sage de serveurs en serveurs, les serveurs utilisent alors des relais SMTP.

Le mail va ainsi voyager de serveurs en serveurs, jusqu’au serveur destinataire.

Comparatif de l’envoi de courrier papier et mail :

Tableau 1 – En bleu, toutes opérations effectuées par le serveur SMTP ou le relai SMTP)

Courrier postal Mail

Je rédige mon courrier Je rédige mon mail

Je met le courrier dans une enveloppe et j’inscris l’adresse du destinataire

Je saisi l’adresse mail du destinataire Je met mon adresse au dos de

l’enveloppe

Je n’ai rien à faire, cela est déjà fait par le logiciel

Je met le courrier dans la boîte aux lettres de la poste

Je clique sur envoyer Lors de la relève de la boîte postale, la

poste récupère tous les courriers

Mon logiciel s’est connecté au serveur SMtP et le serveur SMTP récupère le

mail Le courrier est trié et est envoyé vers le

bureau de poste du destinataire

Le serveur SMTP va envoyer le mail Le courrier va passer de centre de tri en

centre de tri

Le mail va passer de serveurs SMTP en serveurs SMTP (on appelle cela des

relais SMTP) Le courrier arrive au bureau de poste du

destinataire et le facteur va le déposer dans la boîte aux lettres du destinataire

Il arrive sur le serveur de l’hébergeur de la boîte aux lettres du destinataire Le destinataire va avec sa clef ouvrir sa

boîte aux lettres et ouvrir son courrier

Avec son logiciel de mail ou son webmail, le destinataire va ouvrir sa boîte aux lettres (avec son mot de passe)

et lire son mail

(12)

4.2 Modes de connexion au serveur SMTP

Pour se connecter au serveur, le logiciel utilise des commandes très simple en mode texte.

Il existe différents modes de connexions au serveur SMTP.

Le premier mode de connexion utilisait le port 25 et se faisait sans authentification (sans fournir login et mot de passe). Cela était très pratique car il était simple d’envoyer des mails.

Tout le monde pouvait se connecter à n’importe quel serveur sans aucune autorisation et il était possible d’envoyer des messages avec n’importe quelle adresse (on pouvait donc usurper l’adresse mail de quelqu’un).

Il a fallut remédier à ça, mais il reste encore des serveurs SMTP sans authentification (on parle de "relais ouvert") : ils font le bonheur des spammeurs. Certains fournisseurs d’accès refusent les messages provenant de ces relais ouverts.

Pour tous les autres sereurs SMTP, plus sérieux, il faut désormais un compte ou adresse mail, ainsi qu’un mot de passe pour se connecter au serveur SMTP.

4.3 Les échanges de mails entre serveurs

Si vous écrivez à quelqu’un qui a le meme hébergeur de boîtes mails que vous, pas de problèmes, votre mail sera directement stocké dans la boîte mail de votre destinataire. Par contre, si vous écrivez à quelqu’un qui a une boîte mail chez un autre hébergeur que le votre, le serveur de votre hébergeur va se connecter au serveur de votre destinataire pour lui transmettre le mail. Le serveur du destinataire va stocker le mail pour votre destinataire.

5 Postfix

Postfix est un serveur de messagerie électronique (MTA) et un logiciel libre développé par Wietse Venema. Il se charge de la livraison (envoi et ré- ception) de courriers électroniques.

Pourquoi Postfix ?

Notre choix s’est porté sur Postfix car il est le serveur courriel par défaut (et le plus ré- pandu) dans plusieurs systèmes de type UNIX (comme Mac OS X, NetBSD, diverses distri- butions GNU/LINUX, etc..). Il a été conçu comme une alternative plus rapide, plus facile à administrer et plus sécurisée que l’historique Sendmail. Il se charge de la livraison des e-mails et a été conçu de façon modulaire autour de différents programmes dévolus chacun à une tâche précise. Cela le rend plus résistant en terme de sécurité, tout en étant extensible.

Postfix permet de gérer presque tous les cas d’une utilisation professionnelle.

(13)

5.1 Fonctionnement

Postfix est basé sur une architecture modulaire. Le traitement du courrier se compose de trois étapes : la phase d’insertion, de traitement et de livraison

5.1.1 Phase d’insertion

La phase d’insertion, c’est à dire la réception d’un message par le serveur, est réalisée par deux processus :

- PICKUP pour le traitement du courriel local.

- SMTPD pour le courrier issu du réseau.

Durant cette phase, des traitements de sécurité sont effectués comme la vérification des adresses ou de l’identité des serveurs appelants.

5.1.2 Phase de traitement

Cette phase est réalisé par le programme cleanup.

Il contrôle les en-têtes d’enveloppe et les en-têtes de courrier.

Il réécrit les adresses sous leur forme standard (forme canonique).

Il vérifie aussi si le message est livrable ou non.

Si le courrier peut être envoyé, il s’insère dans la file d’attente incoming puis notifie le programme qmgr (queue manager).

5.1.3 Phase de livraison

Le programme qmgr a la charge de transmettre le courrier à un agent de livraison, MDA (Mail Delivery Agent) en fonction de sa destination. C’est aussi durant cette phase que le filtrage de contenu est réalisé. Il existe actuellement trois programmes pour acheminer les messages en sortie.

- LOCAL pour délivrer les messages locaux.

- SMTP chargé de transmettre les messages à destination de l’extérieur.

- PIPE pour délivrer le message à des programmes extérieurs, notamment les filtreurs de contenu.

L’architecture modulaire de Postfix permet théoriquement à l’administrateur d’utiliser d’autres programmes d’insertion et de livraison. Si de nouveaux protocoles faisaient leur apparition, il suffirait de développer un nouvel agent d’insertion et/ou de livraison correspondant et de l’insérer dans la configuration Postfix.

On retrouve donc avec les ronds jaunes, les processus ; Les carrés jaunes, les files d’attentes ; et

(14)

5.2 Les filtrages de contenu

Le filtrage de contenu est réalisé généralement après la mise en file d’attente. Ceci permet de séparer la réception du courrier de son filtrage et donc de contrôler plus finement la charge CPU destiné à la réception.

Le filtre de contenu reçoit le message et effectue l’une des deux actions suivantes :

- Ré-injecte le message dans la file d’attente après avoir éventuellment modifier son contenu et/ou la destination.

- Rejette le message et demande éventuellement à Postfix de le renvoyer à l’expéditeur.

Il existe deux types de filtrage, le filtrage simple et le filtrage avancé.

Image 1 – Filtrage simple

Le filtrage simple est facile à mettre en place. Postfix livre le message à un filtre de contenu (un script) avec l’agent de livraison PIPE. Il est ensuite ré-injecté dans la file d’attente par le programme SENDMAIL. Le problème de ce type de filtrage est la robustesse du système.

En effet, le script ne parle pas un protocole bien défini avec Postfix. Si le script s’interrompt pour des raisons de problèmes de ressources systèmes, le code de retour ne sera pas forcément conforme au attente de Postfix et le message pourrait alors être retourné au lieu d’être mis en file d’attente retardée.

Image 2 – Filtrage avancé

Dans le cas du filtrage avancé, le programme de filtrage reçoit le courrier via le protocole SMTP. Cela permet au programme de générer des codes retour conformes et d’éviter les retours courriers qui ne sont pas nécessaires. Le fait d’utiliser SMTP permet aussi de délocaliser la fonction de filtrage sur un autre serveur. Le filtrage avancé donne généralement de meilleures performances par rapport au filtrage simple. Quoiqu’il en soit, l’optimisation du filtrage reste un processus délicat dans l’attribution des ressources systèmes.

(15)

6 Le chiffrement

6.1 Pourquoi chiffrer ?

Nous avons vu que lorsqu’un message électronique est envoyé, celui-ci est transite par plu- sieurs ordinateurs (le message est enregistré sur le disque dur des serveurs relais) avant d’arriver sur l’ordinateur du destinataire. Ces ordinateurs appartiennent à des entreprises, des adminis- trations ou des personnes qui peuvent ne pas s’embarasser de scrupules et lire ce courrier.

De par sa conception et les protocoles qu’il utilise, il circule en clair, c’est-à-dire "comme une carte postale sans enveloppe". L’intérêt du chiffrement est là, pour protéger d’éventuels secrets professionnels ou tout simplement son intimité.

6.2 Comment ça marche ?

Explication au travers d’une petite histoire :

Alice vient d’un petit village, où elle a gardé de nombreux amis. Elle voyage maintenant beaucoup et ne peut plus leur rendre visite aussi souvent qu’elle le voudrait. Ainsi, elle souhaite que ses amis puissent lui laisser des messages en son absence. Le problème est que ces messages sont privées, et elle souhaiterait alors qu’aucun autre villageois ne puisse les lire.

Elle veut d’abord pouvoir communiquer avec Bruno, son meilleur ami. Pour cela, elle utilise un coffre, dont elle fait faire deux clefs : une qu’elle donne à Bruno et une qu’elle garde pour elle. Elle place ensuite le coffre sur la place du village. A présent, chacun d’eux pourra utiliser le coffre pour y laisser un message que l’autre viendra chercher plus tard. Ils sont les seuls à pouvoir ouvrir le coffre, et leurs messages resteront donc secrets.

Alice rencontre toutefois un problème. Elle veut aussi pouvoir communiquer avec Cyril, un autre ami. Mais elle aimerait que Bruno ne puisse pas lire leurs messages. Elle ne peut alors pas utiliser le même coffre qu’elle partage déjà avec lui et doit donc en trouver un nouveau. Elle réalise alors que pour communiquer avec tous ses amis, elle devrait trouver un nouveau coffre pour chacun d’eux. Elle devrait aussi garder sur elle chaque clef de chacun de ces coffres. Et cela serait vite trop complexe à utiliser.

Face à ce problème, Alice a renoncé à l’idée de partager un coffre avec chacun de ses amis.

A la place, elle a fait fabriquer une centaine de cadenas. Tous ces cadenas ne peuvent être ouverts que par une seule et unique clef, qu’elle garde précieusement sur elle. Alice va ensuite voir Solène, le maire du village, pour lui confier tous ses cadenas en son absence. A présent, tous les villageois qui souhaitent laisser un message à Alice peuvent obtenir un de ces cadenas auprès du maire. Ils utilisent alors ce cadenas pour enfermer leur message dans un coffret, puis ils laissent ce coffret sur la place du village, et Alice viendra l’y chercher à son tour. Tous les habitants peuvent désormais laisser des messages à Alice qu’elle sera la seule à pouvoir lire. De son côté, Alice n’a qu’une seule clef à garder sur elle.

Un dernier problème se pose à Alice. Elle pense qu’un villageois profite de son absence pour écrire aux autres habitants en se faisant passer pour elle. Pour régler ce problème, elle commande une nouvelle série de cadenas. Ces nouveaux cadenas ne peuvent aussi être ouverts que par une seule clef. Mais cette clef est différente de la précédente. Cette fois-ci, elle décide de garder ses nouveaux cadenas avec elle et d’en confer la clef unique à Solène (l’inverse de ce qu’elle avait fait avec la précédente série de cadenas). A présent, Alicen peut enfermer ses

(16)

d’Alice, il pourra en demander la cleef à Solène. Si cette clef permet d’ouvrir le coffret, c’est que le message sera bien d’Alice.

Explications

Alice a maintenant résolu tous ses problèmes.

Premièrement, tous les villageois peuvent enfermer dans un coffret les messages qu’ils en- voient à Alice à l’aide d’un cadenas. Puisqu’elle est la seule à en avoir la clef, elle sera la seule à pouvoir lire ces messages. On dit qu’ils sont chiffrés pour Alice.

Secondement, tous les villageois peuvent utiliser la clef qui ouvre le cadenas des coffrets envoyés par Alice. Puisqu’elle est la seule à posséder ces cadenas, les villageois seront sûrs que ces messages proviennent bien d’elle. On dit qu’ils sont signés par Alice.

En informatique, la clef et les cadenas qu’Alice garde sur elle sont réunis dans un fichier appelé clef privée. Elle est la seule à pouvoir utiliser ce fichier et lui permet d’ouvrir les mes- sages chiffrés qu’elle reçoit et de signer ceux qu’elle envoie.

La clef et les cadenas qu’elle a confiés à Solène sont réunis dans un second fichier appelé clef publique. Tous les villageois peuvent utiliser ce second fichier. Il leur permet d’envoyer des messages chiffrés à Alice et de vérifer sa signature.

La première idée qu’avait eu Alice, avant de l’abandonner, était d’utiliser un coffre en com- mun avec chacun de ses amis. Cette solution est appelée chiffrement symétrique, car elle utilise des clefs dont la fonction est identique : ouvrir un coffre partagé par plusieurs personnes.

La solution qu’a trouvée Alice - d’utiliser un ensemble de clef privée et publique - est appelée chiffrement asymétrique. Cette solution est dite asymétrique car elle utilise deux types de clef dont les fonctions sont opposées et complémentaires.

6.3 Chiffrement symétrique

Le chiffrement symétrique, également appellé chiffrement à clef privée, est la plus ancienne forme de chiffrement. Elle consiste a utiliser un même algorithme pour chiffrer et déchiffrer les messages. L’avantage de cette technique de chiffrement est qu’elle est simple d’utilisation (une seule clef) et le déchiffrement est rapide. Il requiert la création d’une clef différente pour chaque nouveau correspondant.

Cependant on peut vite se rendre compte qu’il y a un problème : étant donné qu’il n’y a qu’une clef pour chiffrer et déchiffrer, celle-ci se retrouve être un point critique du système. Si la clef vient à être trouvée par une personne non désirée, alors tout le système de chiffrement est inutile et tombe à l’eau. Or, il faut bien trouver un moyen pour pouvoir communiquer la clef à son destinaire, sans pour autant risquer de se la faire voler. Cela pose donc de gros problèmes de sécurité et ne permet jamais de vraiment être sûr que personne ne connait la clef (à moins de se la communiquer en main propres).

C’est pour contrer ce problème qu’est apparu le chiffrement asymétrique.

(17)

Les principaux algorithmes de chiffrement symétriques sont DES, AES.

6.4 Chiffrement asymétrique

Le chiffrement asymétrique aussi appellé chiffrement à clef publique, est une méthode de chiffrement qui s’oppose au chiffrement symétrique. Cette méthode de chiffrement repose sur l’utilisation d’un couple de clefs : une clef publique et une clef privée. Il permet ainsi de com- muniquer avec une infinité de personnes au seul moyen de ce couple de clefs. On utilise la clef publique du destinataire pour chiffrer un message à destination de ce destinataire. Puis le destinataire du message peut le déchiffrer à l’aide de sa clef privée.

Fonctionnement :

- On utilise une clef de session pour chiffrer le message.

- Une fois le message chiffré avec la clef de session, on chiffre la clef de session avec la clef publique du destinataire.

- On transmet ensuite le message chiffré ainsi que la clef chiffrée au destinataire.

- Le destinataire déchiffre la clef de session chiffrée avec sa clef privée.

- Le destinataire déchiffre le message avec la clef de session.

Le chiffrement symétrique offre une meilleure vitesse de chiffrement/déchiffrement que le chif- frement asymétrique. Cependant, le principal problème du chiffrement symétrique est le fait qu’on ait qu’une seule clef et qui peut être un point critique du système si elle venait a être récupérée (par exemple avec une attaque man in the middle).

On utilise donc du chiffrement asymétrique pour chiffrer une clef symétrique, ce qui permet donc de transmettre la clef symétrique en toute sécurité et ensuite de déchiffrer le message avec rapidité. On obtient donc tous les avantages du chiffrement symétrique et asymétrique : on a une vitesse de chiffrement/déchiffrement rapide grâce au chiffrement symétrique et on a tous les avantages du chiffrement asymétrique, c’est-à-dire : la confidentialité, l’authenticité, l’intégrité et la non-répudiation.

Les principaux algorithmes de chiffrement asymétriques sont DSA, RSA, et El-Gamal.

(18)

6.5 La signature numérique

Grâce au chiffrement asymétrique, il est possible de signer ses messages. Cela permet de vérifier l’authenticité, l’intégrité et la non-répudiation des données.

En effet, lorsqu’on signe, on utilise sa clef privée. Le destinataire peut alors vérifier la signature grâce à la clef publique de l’expéditeur. Cela permet donc d’assurer l’authenticité de l’expédi- teur.

Pour signer, on utilise aussi une fonction de hachage, qui prend en entrée le message à envoyer, puis génère une suite de bits à partir de cette entrée. On signe ensuite le message avec sa clef privée. Si le message est modifié entre temps (même ne serait-ce que d’un seul bit), la sortie de la fonction de hachage sera différente et donc il y aura une erreur. Cela permet donc de vérifier l’intégrité des données.

(19)

6.6 PGP/GPG

6.6.1 PGP

PGP (Pretty Good Privacy) est un logiciel de chiffrement et de déchiffrement créé par Phil Zimmermann en 1991. Il utilise le chiffrement asymétrique, ce qui permet de garantir la confidentialité, l’authentification et l’intégrité des données lors des communications.

- L’authenticité: grâce à la signature électronique, on peut garantir l’identité de l’émet- teur et du récepteur.

- La confidentialité : grâce au système de chiffrement, on peut s’assurer que le message ne pourra être lu que par son destinataire.

- L’intégrité : grâce à la fonction de hache comprise avec la signature électronique, on peut être sur que les données resteront intactes pendant le transfert.

On peut aussi ajouter que PGP peut garantir un rôle de non-répudiation, c’est à dire que l’auteur d’un message ne pourra pas prétendre ne pas en être l’auteur, ce qui peut être utile en cas de conflit avec la justice par exemple. PGP utilise à la fois le chiffrement symétrique et asymétrique, c’est un système de chiffrement hybride.

6.6.2 GPG

GPG (GNU Privacy Guard) est la version GNU de PGP. Le projet GPG a été intié par Werner Koch a la fin des années 1990 dans le but de remplacer PGP par une alternative en logiciel libre.

Son fonctionnement est le même que pour PGP, sa seule différence est qu’il est sous licence GNU free software (logiciel libre).

(20)

7 Mise en place

Afin de faciliter l’utilisation des ressources réseaux et ainsi d’établir une correspondance entre les serveurs, il nous a paru primordial d’établir un serveur DNS.

7.1 Serveur DNS (Bind9)

Tout d’abord, il faut déclarer ses zones dans le fichier "named.conf.local". (Voir annexes) Il faudra créer 2 zones (une pour chaque serveur de mail), donc il faut en renseigner 2 dans le fichier named.conf.local. Nous avons choisis de les appeler post1.local et post2.local.

Une fois les fichiers de zone renseignés dans le fichier named.conf.local, il faut créer les fichiers de zone db.post1.local et db.post2.local (voir annexes).

Les entrées primordiales pour un bon fonctionnement :

- Le champ A : sert à faire la résolution d’un nom vers une adresse IP

- Le champ MX : sert à déclarer le ou les serveurs de mails correspondant à la zone.

Attention, un champ MX doit toujours être sous la forme d’un nom et non d’une adresse IP. C’est pourquoi le champ A est primordial.

Pour un serveur DNS accessible sur internet, il peut aussi être important de définir les zones inverses. En effet, certains serveurs de mail refusent les mails provenant de serveurs sans zones inversent car elles peuvent leur servir à dectecter du potentiel spam. Pour cette raison nous avons aussi configuré une zone inverse, par principe, bien qu’ici elle ne sera pas d’une grande utilité.

Pour cela comme pour la zone "classique", on renseigne les fichiers dans le fichier named.conf.local, puis on cré les fichiers de zone. (voir annexes)

Les champs importants pour une zone inverse sont :

- Le champ PTR : permet la résolution d’une adresse IP vers un nom.

- Le champ MX : sert à déclarer le ou les serveurs de mails correspondant à la zone.

Une fois la configuration du serveur DNS fini, il suffit de redémarrer le service (service bind9 restart). Il est aussi possible de vérifier la syntaxe des fichiers de configuration avec les com- mandes suivantes : named-checkzone et named-checkconf.

Pour vérifier le bon fonctionnement du serveur DNS, on peut utiliser la commande DIG par exemple. Pour tester la résolution d’un nom vers une adresse ip : dig A nom. Pour tester la résolution du champ MX : dig MX zone. Pour tester la résolution d’une ip vers un nom : dig PTR ip.in-addr.arpa.

7.2 Postfix

Pour installer postfix, il suffit d’installer le paquet postfix. Un assistant de configuration va apparaître, voilà les informations à renseigner :

- Type de serveur mail : choisir configuration site internet

- Nom de courrier : il faut ici renseigner le domaine (ex : post1.local) Les principaux fichiers de configuration de postfix sont main.cf et master.cf.

Dans un premier temps il faut modifier le fichier de configuration afin d’accepter les mails en provenance de son domaine.

(21)

Les champs à modifier sont :

- myhostname : par défaut postfix met uniquement le nom de la machine, il faut le changer par le nom FQDN de la machine (ex : serveur1.post1.local)

- mydestination : ce paramètre indique les domaines pour lesquels le serveur délivrera le courrier localement, a lieu de le transmettre à une autre machine. Par défaut elle accepte les courriers locaux (localhost), mais par précaution on rajoute le domaine : post1.local.

Le fichier de configuration master.cf nous servira lors de la partie sur les content filter. Avec cette configuration minimale, le serveur peut envoyer et recevoir des mails.

On peut tester avec telnet :

- On se connecte en telnet sur le port 25 (SMTP) : telnet serveur1.post1.local 25

- Une fois la connection établie, il faut dire "bonjour" au serveur en tapant HELO nom_de_domaine.

Le serveur nous répond.

- Il faut ensuite renseigner l’expéditeur et le destinataire du mail : - MAIL FROM : expéditeur

- RCPT TO : destinataire

- Pour annoncer le début du corps du message, on utilise ensuite DATA.

- Une fois dans le corps du mail on peut renseigner les champs suivants : Date, Subject, Cc, Bcc, From. Comme on pourrait avoir lorsque l’on envoi un mail de façon "classique".

- On tape ensuite le contenu du mail directement.

- Pour conclure le mail il faut envoyer un "." seul.

- Puis pour fermer la connexion telnet on fait la commande QUIT.

Voir annexes pour un exemple de connection telnet sur le port 25.

Une autre technique pour envoyer un mail très rapidement est en utilisant la commande mail de cette facon : echo "hello" | mail -s "subject" adresse_destinataire. De cette façon on peut tester l’envoi d’un mail de facon très simple et rapide.

On peut ensuite aller vérifier qu’on a bien recu le mail avec son MUA, mutt par exemple.

7.3 GPG

GPG est installé par défaut sur les machines debian, il n’y a donc pas de paquets à installer.

Pour commencer, il faut générer une paire de clef privées sur chaque serveur, pour cela on utilise la commande gmg –gen-key.

Dans une premier temps, GPG créé un répertoire .gnupg à la racine du compte utilisateur, où seront stockées les clefs et la configuration de GPG. Il nous propose ensuite de choisir le type de clef à générer, par défaut elle génère les deux types de clefs possibles en même temps, c’est-à-dire DSA et ElGamall, ce choix est conseillé.

Il faut ensuite choisir la taille de clef que l’on souhaite (nous avons pris 1024 afin d’avoir un bon chiffrement sans pour autant perdre en rapidité de traitement).

Il nous demande ensuite la durée de validité des clefs (nous avons choisis une durée indé- terminée, même si il pourrait être recommandé pour des tests de mettre un court délai). La clé

(22)

Il nous demande ensuite des informations sur l’utilisateur : un nom, une adresse mail et un commentaire, qui serviront pour l’identification de la clf.

Enfin, il faudra entrer la passphrase qui servira de mot de passe à la clef privée. Une fois ces étapes passées, les clefs seront générées.

Reste ensuite à exporter sa clef publique sur le serveur distant, afin qu’il puisse nous envoyer des mails chiffrés. Pour cela, nous allons d’abord exporter la clef publique dans un fichier :

- gpg –export -a -o fichier (l’option -a permet d’obtenir la clef publique en caractères codés sur 7bits et -o a choisir le fichier où stocker la clef).

Ensuite pour récupérer la clef publique sur le serveur distant, nous utilisons la commande scp (scp user@ip :/fichier destination)

Une fois la clef publique récupérée, on l’ajoute à son "trousseau de clefs" avec la commande gpg –import fichier (fichier contenant la clef récupérée au préalable avec scp).

On peut vérifier que la clef à bien été ajoutée au trousseau avec la commande gpg –list- keys, qui affiche toutes les clefs publiques que l’on a à son trousseau.

Pour vérifier le bon fonctionnement de GPG dans un premier temps, nous avons testé de chiffrer et signer des mails avec le client mutt.

(23)

8 Solutions alternatives

8.1 Zeyple

8.1.1 Présentation

Zeyple permet de chiffrer automatique les mails sortant avec GPG. Il a été testé unique- ment avec Postfix, mais il pourrait être intégré parfaitement avec un autre MTA possédant un mécanisme de filtre.

Que fait Zeyple ?

- Traitement des mails depuis la file d’attente du MTA - Chiffre, s’il possède la clef publique du destinataire - Place le mail en file d’attente

8.1.2 Installation

Zeyple peut être installé par un script mis à disposition sur "git-hub" de cette solution.

Cependant, il n’est pas encore tout à fait au point, mais fonctionne pour l’installation (avec certains ajustements mineurs, cela devrait marcher sur d’autres distributions que Debian).

Le filtre de contenu est écrit en Python, et fonctionne donc avec des librairies python qui sont adaptées à un filtre de contenu pour gpg.

Afin de comprendre la mise en place de Zeyple, nous avons préféré une installation en ligne de commande. Nous avons donc veillé à installer chaque dépendances décrites dans le fichier

"readme" dans le "git-hub".

On commence donc par installer les dépendances nécessaires à Zeyple, à savoir : gnupg et python-gpgme.

On ajoute un utilisateur pour Zeyple (recommandé de ne pas utiliser l’utilisateur de post- fix pour faire cela) : adduser –system –no-create-home –disabled-login zeyple

On créé ensuite une paire de clef avec : gpg —gen–key, et on exporte dans un fichier : gpg

—export –a –o fichier.

A partir d’ici, un fichier de configuration par défaut est disponible sur le "git-hub", il suffit juste de le modifier afin d’indiquer dans quel dossier aller chercher le fichier précédemment créé.

(24)

Pour finir, on ajoute dans la configuration de Postfix "master.cf" qu’on utilise Zeyple avec donc l’utilisateur zeyple et l’emplacement de fichier de configuration de zeyple.

On redémarre Postfix, et Zeyple est opérationnel.

8.1.3 Avis

Zeyple produit de bons services mais il est loin d’être parfait. Par exemple, il ne peut pas chiffrer de pièces jointes et ne peut donc pas traiter le courrier HTML. Aussi, une personne malveillante pourrait utiliser la clef publique disponible sur le serveur de clef pour envoyer des messages systèmes à l’administrateur système. La seule solution est de signer le courrier électronique en plus du chiffrage, mais Zeyple ne permet pas de faire cela.

8.2 GPG-Mailgate

8.2.1 Présentation

GPG-mailgate est un content filter pour Postfix, développé en python, qui chiffre automa- tiquement les mais entrant non chiffré avec GPG.

Le projet est disponible sur GitHub : https ://github.com/ajgon/gpg-mailgate

Le système consiste à faire passer les mails sortants dans le content filter gpg mailgate, qui va automatiquement chercher la clé publique correspondante au destinataire afin de chiffrer le mail avec GPG, puis le placer en file d’attente afin qu’il puisse être envoyé. Pour cela, le ser- veur utilisant le content filter gpg mailgate doit avoir toutes les clés publiques des destinataires potentiels, sans ça le mail ne sera pas chiffré.

GPG mailgate ne fait que la partie chiffrement, il ne fait pas le déchiffrement des mails lorsqu’ils arrivent.

8.2.2 Installation

Pour installer GPG mailgate, il faut dans un premier temps télécharger le projet sur le dépos GitHub du projet.

Il est nécessaire de créer le fichier de configuration /etc/gpg-mailgate.conf, en se basant sur le fichier de configuration exemple : gpg-mailgate.conf.sample. Vous devez modifier la valeur keyhome, qui correspond au répertoire où seront stockés les clés publiques des destinataires.

Une fois le fichier de configuration créé, il faut s’assurer que GPG est bien installé sur la machine puis placer toutes les clés publiques des destinataires potentiels dans le répertoire renseigné plus haut (keyhome).

Placer ensuite le script gpg-mailgate.py dans le répertoire /usr/local/bin/.

Placer ensuite le répertoire GnuPG (téléchargé sur le dépot GitHub) dans le répertoir de votre interpréteur python (ex : /usr/lib/python2.7). Il est conseillé d’utiliser la version 2.7 de python afin d’éviter des problèmes avec le script car il y a des différences suivant les versions de python.

Il faut ensuite déclarer le content filter dans le fichier /etc/postfix/master.cf et main.cf.

Redémarrer postfix et gpg-mailgate est fonctionnel.

(25)

8.2.3 Avis

GPG-mailgate est un outil simple à mettre en place, et qui peut être utile lorsqu’on veut uniquement chiffrer les mails que l’on envoi de façon transparente pour l’utilisateur. Le problème reste cependant le manque de fonctionnalités de celui-ci. En effet, GPG-mailgate n’offre pas la possibilité de signer les mails, ni de déchiffrer les mails entrants. Il faut donc que le client déchiffre lui même ses mails, ce qui fait perdre de la transparence et de l’automatisation au système.

(26)

9 Annexes

9.1 Bind9

1 z o n e " p o s t 1 . l o c a l " {

2 t y p e m a s t e r ;

3 f i l e "/ e t c / b i n d /db . p o s t 1 . l o c a l " ;

4 } ;

5

6 z o n e " p o s t 2 . l o c a l " {

7 t y p e m a s t e r ;

8 f i l e "/ e t c / b i n d /db . p o s t 2 . l o c a l " ;

9 } ;

10

11 z o n e " 3 6 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a " {

12 t y p e m a s t e r ;

13 f i l e "/ e t c / b i n d /db . 1 9 2 . 1 6 8 . 1 . 3 6 " ;

14 } ;

15

16 z o n e " 2 4 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a " {

17 t y p e m a s t e r ;

18 f i l e "/ e t c / b i n d /db . 1 9 2 . 1 6 8 . 1 . 2 4 " ;

19 } ;

Code 1 – named.conf.local

1 p o s t 1 . l o c a l . IN SOA s e r v e u r 1 . p o s t 1 . l o c a l . r o o t . p o s t 1 . l o c a l . (

2 2 ; # S e r i a l

3 3h ; # R a f r a i c h i s s e m e n t

4 1h ; # Nouvel e s s a i a p r è s 1h

5 1w ; # E x p i r a t i o n a p r è s 1 s e m a i n e

6 1h ) ;

7 p o s t 1 . l o c a l . IN NS s e r v e u r 1 . p o s t 1 . l o c a l .

8 @ IN MX 10 s e r v e u r 1 . p o s t 1 . l o c a l .

9 s e r v e u r 1 . p o s t 1 . l o c a l . IN A 1 9 2 . 1 6 8 . 1 . 3 6

10 p o s t 1 . l o c a l . IN A 1 9 2 . 1 6 8 . 1 . 3 6

Code 2 – db.post1.local

1 p o s t 2 . l o c a l . IN SOA s e r v e u r 1 . p o s t 1 . l o c a l . r o o t . p o s t 1 . l o c a l . (

2 2 ; # S e r i a l

3 3h ; # R a f r a i c h i s s e m e n t

4 1h ; # Nouvel e s s a i a p r è s 1h

5 1w ; # E x p i r a t i o n a p r è s 1 s e m a i n e

6 1h ) ;

7 p o s t 2 . l o c a l . IN NS s e r v e u r 1 . p o s t 1 . l o c a l .

8 @ IN MX 10 s e r v e u r 2 . p o s t 2 . l o c a l .

9 s e r v e u r 1 . p o s t 1 . l o c a l . IN A 1 9 2 . 1 6 8 . 1 . 3 6

10 s e r v e u r 2 . p o s t 2 . l o c a l . IN A 1 9 2 . 1 6 8 . 1 . 2 4

Code 3 – db.post2.local

(27)

1 3 6 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN SOA s e r v e u r 1 . p o s t 1 . l o c a l . r o o t . p o s t 1 . l o c a l . (

2 1 ; # S e r i a l

3 3h ; # R a f r a i c h i s s e m e n t

4 1h ; # Nouvel e s s a i a p r è s 1h

5 1w ; # E x p i r a t i o n a p r è s 1 s e m a i n e

6 1h ) ;

7 @ IN NS s e r v e u r 1 . p o s t 1 . l o c a l .

8 3 6 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN PTR s e r v e u r 1 . p o s t 1 . l o c a l .

9 2 4 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN PTR s e r v e u r 2 . p o s t 2 . l o c a l

10 3 6 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN MX s e r v e u r 1 . p o s t 1 . l o c a l .

Code 4 – db.192.168.1.36

1 2 4 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN SOA s e r v e u r 1 . p o s t 1 . l o c a l . r o o t . p o s t 1 . l o c a l . (

2 1 ; # S e r i a l

3 3h ; # R a f r a i c h i s s e m e n t

4 1h ; # Nouvel e s s a i a p r è s 1h

5 1w ; # E x p i r a t i o n a p r è s 1 s e m a i n e

6 1h ) ;

7 @ IN NS s e r v e u r 1 . p o s t 1 . l o c a l .

8 3 6 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN PTR s e r v e u r 1 . p o s t 1 . l o c a l .

9 2 4 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN PTR s e r v e u r 2 . p o s t 2 . l o c a l

10 2 4 . 1 . 1 6 8 . 1 9 2 . i n−addr . a r p a . IN MX s e r v e u r 2 . p o s t 2 . l o c a l .

Code 5 – db.192.168.1.24

(28)

9.2 Postfix

1 # S e e / u s r / s h a r e / p o s t f i x / main . c f . d i s t f o r a commented , more c o m p l e t e v e r s i o n

2

3 # Debian s p e c i f i c : S p e c i f y i n g a f i l e name w i l l c a u s e t h e f i r s t

4 # l i n e o f t h a t f i l e t o be u s e d a s t h e name . The Debian d e f a u l t

5 # i s / e t c / mailname .

6 m y o r i g i n = $mydomain

7

8 smtpd_banner = $myhostname ESMTP $mail_name ( Debian /GNU)

9 b i f f = no

10

11# a p p e n d i n g . domain i s t h e MUA’ s j o b .

12 append_dot_mydomain = no

13

14# Uncomment t h e n e x t l i n e t o g e n e r a t e " d e l a y e d m a i l " w a r n i n g s

15#delay_warning_time = 4h

16

17 r e a d m e _ d i r e c t o r y = no

18

19# TLS p a r a m e t e r s

20 s m t p d _ t l s _ c e r t _ f i l e =/ e t c / s s l / c e r t s / s s l−c e r t−s n a k e o i l . pem

21 s m t p d _ t l s _ k e y _ f i l e=/ e t c / s s l / p r i v a t e / s s l−c e r t−s n a k e o i l . key

22 smtpd_use_tls=y e s

23 s m t p d _ t l s _ s e s s i o n _ c a c h e _ d a t a b a s e = b t r e e : $ { d a t a _ d i r e c t o r y }/ smtpd_scache

24 s m t p _ t l s _ s e s s i o n _ c a c h e _ d a t a b a s e = b t r e e : $ { d a t a _ d i r e c t o r y }/ smtp_scache

25

26# S e e / u s r / s h a r e / doc / p o s t f i x /TLS_README. gz i n t h e p o s t f i x−doc p a c k a g e f o r

27# i n f o r m a t i o n on e n a b l i n g SSL i n t h e smtp c l i e n t .

28

29 myhostname = s e r v e u r 1 . p o s t 1 . l o c a l

30 a l i a s _ m a p s = hash : / e t c / a l i a s e s

31 a l i a s _ d a t a b a s e = hash : / e t c / a l i a s e s

32 m y o r i g i n = / e t c / mailname

33 m y d e s t i n a t i o n = p o s t 1 . l o c a l , s e r v e u r 1 . p o s t 1 . l o c a l , l o c a l h o s t . p o s t 1 . l o c a l , l o c a l h o s t

34#r e l a y h o s t =

35 mynetworks = 1 2 7 . 0 . 0 . 0 / 8 [ : : f f f f : 1 2 7 . 0 . 0 . 0 ] / 1 0 4 [ : : 1 ] / 1 2 8 , 1 9 2 . 1 6 8 . 1 . 0 / 2 4

36#mailbox_command = p r o c m a i l −a "$EXTENSION"

37 m a i l b o x _ s i z e _ l i m i t = 0

38 r e c i p i e n t _ d e l i m i t e r = +

39 i n e t _ i n t e r f a c e s = a l l

40 home_mailbox = M a i l D i r /

Code 6 – main.cf.serveur1

1 # S e e / u s r / s h a r e / p o s t f i x / main . c f . d i s t f o r a commented , more c o m p l e t e v e r s i o n

2

3 # Debian s p e c i f i c : S p e c i f y i n g a f i l e name w i l l c a u s e t h e f i r s t

4 # l i n e o f t h a t f i l e t o be u s e d a s t h e name . The Debian d e f a u l t

5 # i s / e t c / mailname .

6 m y o r i g i n = $mydomain

7

8 smtpd_banner = $myhostname ESMTP $mail_name ( Debian /GNU)

9 b i f f = no

10

11# a p p e n d i n g . domain i s t h e MUA’ s j o b .

12 append_dot_mydomain = no

13

14# Uncomment t h e n e x t l i n e t o g e n e r a t e " d e l a y e d m a i l " w a r n i n g s

15#delay_warning_time = 4h

(29)

16

17 r e a d m e _ d i r e c t o r y = no

18

19# TLS p a r a m e t e r s

20 s m t p d _ t l s _ c e r t _ f i l e =/ e t c / s s l / c e r t s / s s l−c e r t−s n a k e o i l . pem

21 s m t p d _ t l s _ k e y _ f i l e=/ e t c / s s l / p r i v a t e / s s l−c e r t−s n a k e o i l . key

22 smtpd_use_tls=y e s

23 s m t p d _ t l s _ s e s s i o n _ c a c h e _ d a t a b a s e = b t r e e : $ { d a t a _ d i r e c t o r y }/ smtpd_scache

24 s m t p _ t l s _ s e s s i o n _ c a c h e _ d a t a b a s e = b t r e e : $ { d a t a _ d i r e c t o r y }/ smtp_scache

25

26# S e e / u s r / s h a r e / doc / p o s t f i x /TLS_README. gz i n t h e p o s t f i x−doc p a c k a g e f o r

27# i n f o r m a t i o n on e n a b l i n g SSL i n t h e smtp c l i e n t .

28

29 myhostname = s e r v e u r 2 . p o s t 2 . l o c a l

30 a l i a s _ m a p s = hash : / e t c / a l i a s e s

31 a l i a s _ d a t a b a s e = hash : / e t c / a l i a s e s

32 m y o r i g i n = / e t c / mailname

33 m y d e s t i n a t i o n = p o s t 2 . l o c a l , s e r v e u r 2 . p o s t 2 . l o c a l , l o c a l h o s t . p o s t 2 . l o c a l , l o c a l h o s t

34 r e l a y h o s t =

35 mynetworks = 1 2 7 . 0 . 0 . 0 / 8 [ : : f f f f : 1 2 7 . 0 . 0 . 0 ] / 1 0 4 [ : : 1 ] / 1 2 8 , 1 9 2 . 1 6 8 . 1 . 0 / 2 4

36#mailbox_command = p r o c m a i l −a "$EXTENSION"

37 m a i l b o x _ s i z e _ l i m i t = 0

38 r e c i p i e n t _ d e l i m i t e r = +

39 i n e t _ i n t e r f a c e s = a l l

40 home_mailbox = M a i l D i r /

Code 7 – main.cf.serveur2

Image 3 – Exemple avec Telnet

Références

Documents relatifs

[r]

Chiffrement symétrique : on utilise la même clés pour chiffrer et pour déchiffrer. Chiffrement asymétrique : on chiffre avec la clés publique et on déchiffre avec la

La signature d’un p−cycle est (−1) p−1

Inversement, l'expéditeur peut utiliser sa propre clé privée pour coder un message que le destinataire peut décoder avec la clé publique.. Introduction : le

- Quelque soit la sortie envisagée, la tension de sortie ne dépend que de la tension différentielle d’entrée ; ce prototype d’amplificateur différentiel est idéal (réjection

• Lorsque le chiffrement est symétrique – Génération de la clef partagée sur un partenaire – Distribution sûre de la clef vers l'autre partenaire. • Lorsque le chiffrement

Corollaire: La signature de  est (-1) k où k est le nombre de transpositions rentrant dans la décomposition de . La parité de ce nombre ne dépend pas de la

Le point important est que les nombres de transpositions intervenant dans chaque décomposition d'une permutation ont tous la même parité.. C'est l'objet de la section suivante