TP3 - Chiffrement des Mails.pages

Transcription

TP3 - Chiffrement des Mails.pages
MMI S4 - M42B4-M42C3 - CRYPTOGRAPHIE
Chiffrement des Mails
Préparé par : Patrice Gommery
17 février 2015
MMI S4 - M42B4-M42C3 - CRYPTOGRAPHIE
CHIFFREMENT DES MAILS
Objectif
Comprendre comment chiffrer et/ou signer des mails.
pré-requis
Un serveur de mails opérationnel .(voir TPs précédents)
Votre serveur de mail doit être capable de communiquer avec ceux des autres tables.(zones DNS)
Solution
Mise en oeuvre de GnuPG
Préparation du TP :
• Commencez par créer un nouvel utilisateur sur votre serveur de mail.
Le nom de cet utilisateur doit être construit de la façon suivante : Première lettre de votre prénom (ou premières lettres de vos prénoms) suivi de votre nom (sans aucun
espace, ni aucune ponctuation). Exemple : pgommery ou pnom .
• Créer une boite aux lettres pour ce nouvel utilisateur (maildirmake Maildir dans son dossier personnel)
N’oubliez pas de lui donner les droits sur l’arborescence du dossier Maildir (chown -R pnom.pnom Maildir)
• A l’aide de squirrelmail (www.domN.net/squirrelmail) ou de telnet, faites un test d’envoi et réception
de mail vers vous même et vers un autre étudiant de la salle.
• Si cela fonctionne avec squirrelmail, ouvrez Claws-Mail (Applications/Internet) sur la machine physique et
configurer un nouveau compte utilisateur avec les paramètres suivants :
• Type de compte : POP
• Nom du compte : Prénom Nom
• Adresse mail [email protected]
• Serveur entrant : 172.16.N.2 (l’IP de votre serveur)
• Identifiant : pnom , mot de passe : (celui de l’utilisateur)
• Serveur sortant : 172.16.N.2 (l’IP de votre serveur)
• Pas d’authentification pour le serveur sortant (SMTP)
• Vous devriez récupérer les mails reçus précédemment.
Faites un test d’envoi de mail avec Claws-Mail pour valider votre configuration.
• Dernière chose à faire pour le bon fonctionnement du TP et éviter les failles spatio-temporelles,
METTRE A L’HEURE VOTRE PC et VOTRE SERVEUR :
Pour vérifier , tapez date dans l’invite de commande.
Pour modifier (si nécessaire), tapez date MMJJhhmm (remplacer par la date et l’heure)
MMI S4 - M42B4-M42C3 - CRYPTOGRAPHIE
MISE EN PLACE DU CHIFFREMENT
Pour chiffrer et signer nos mails, nous allons utiliser GnuPG, un utilitaire OpenSource utilisant des algorithmes
de cryptage et utilisable avec la plupart des outils de messagerie. GnuPG est déjà installé sur la machine
physique, il faut juste créer les clés adaptées à votre adresse email.
Une documentation (sous forme de tuto) de GnuPG est disponible sur le serveur FTP de la salle.
Le site officiel : www.gnupg.org
ETAPE 1: CREATION D’UNE PAIRE DE CLES
Pour chiffrer et signer nos messages, nous allons utiliser un système de chiffrement à clé publique (donc
asymétrique). La première chose à faire est donc de créer nos deux clés :
• La clé publique qui servira à chiffrer les mails et à vérifier les signatures.
• La clé privée associée qui servira à signer les mails et à les déchiffrer.
Cette clé sera bien sur protéger par un mot de passe
Pour générer les clés : gpg --gen-key
• type de clé désiré : DSA et ElGamal (par défaut)
• Taille de clé : 1024
• Validité de la clé : 0 (N'expire jamais)
• Nom réel : Prénom et Nom
• Adresse e-mail : [email protected] (votre adresse email)
• Commentaire : Ce que vous voulez
• Mot de passe : Ce que voulez, mais souvenez-vous en !!!
Pour accélérer le processus de création aléatoire, vous devez bouger la souris !!! ce n'est pas une blague.
Une fois les clés créées , le système vous affichera une empreinte de la clé publique générée.
Il vous indique aussi que les clés ont été signées et marquées comme ayant une confiance ultime. (Conditions importante pour pouvoir les utiliser)
Pour vérifier votre clé : gpg --list-keys
ETAPE 2 : COMMUNIQUER VOTRE CLE PUBLIQUE AU MONDE
Pour pouvoir chiffrer un document, ou un mail dans notre cas vous devez disposer de la clé publique de votre
correspondant. Il faut donc récupérer les clés publiques des personnes avec qui vous voulez échanger des
mails chiffrés et vous devez aussi communiquer votre clé publique à ces mêmes personnes.
Deux solutions sont possibles :
Publier votre clé sur un annuaire accessible à tout le monde (par exemple ; pgp.mit.edu)
ou simplement envoyer votre clé publique à vos correspondants.
Nous allons utiliser la seconde option.
Commençons par exporter notre clé publique dans un fichier texte : gpg --export -a [email protected] > pnom.txt
Ici la clé publique correspondant à notre adresse mail est enregistrée dans le fichier pnom.txt
Il ne vous reste plus qu'a envoyé ce fichier à vos correspondants en pièce jointe.
ETAPE 3 : ENREGISTRER LES CLES PUBLIQUES DE VOS CORRESPONDANTS
Vous avez reçu les clés publiques de vos correspondants sous forme de fichier texte, il faut maintenant les
importer dans votre trousseau de clé pour pouvoir les utiliser. Il faudra aussi que vous signiez (sign) ces clés et
signifiez au système que vous leur accordez votre pleine confiance. (trust)
Pour importer une clé : gpg --import fichier.txt (fichier.txt est la clé publique reçue)
Pour signer et approuver une clé : gpg --edit-key NomClé (NomClé est l'adresse mail de votre
correspondant), puis sign et trust .
Vous pouvez vérifier la liste de clés de votre trousseau avec : gpg --list-keys
ETAPE 5 : CONFIGURER CLAWS-MAIL POUR UTILISER GPG
Pour pouvoir utiliser gpg en relation avec Claws-Mail, nous devons installer les plug-ins correspondants dans
celui-ci.
• Dans Claws-Mail : Menu Configuration/Modules
• Chargez les plugins : pgpcore, pgpinline,pgpmime et smime.
Dans l'option Confidentialité du compte courant, sélectionner PGP-MIME comme système de chiffrement
ETAPE 4 : ENVOYER UN MAIL CHIFFRE
Vous avez accepté et approuvé les clés de vos correspondants, vous pouvez maintenant les utiliser pour leur
envoyer des mails chiffrés (avec leur clés publiques), ils les déchiffreront avec leurs clés privées.
Composez un nouveau message à destination d'un correspondant dont vous avez approuvé la clé publique.
Avant d'envoyer le message , cochez la case "Chiffrer" dans le menu options du message. Envoyez votre message comme d'habitude.
ETAPE 5 : RECEVOIR UN MAIL CHIFFRE
Vous avez reçu un mail chiffré, au moment de l'ouvrir le système vous demandera de saisir un mot de passe.
Il s'agit du mot de passe de protection de votre clé privée. C'est en effet avec elle que vous déchiffrez le
contenu du message (qui a été chiffré avec votre clé publique).
ETAPE 6 : SIGNER UN MAIL
L'opération de signature est complètement indépendante du chiffrement , vous pouvez-vous donc signer un
mail sans pour autant le chiffrer.
Pour signer un mail, cocher simplement la case "Signer" dans les options avant d'envoyer le message.
Le système vous demande alors un mot de passe. Il s'agit encore une fois du mot de passe protégeant votre
clé privée, puisque c'est avec elle que vous allez signer le mail. Votre correspondant ne pourra vérifier votre signature que s'il possède votre clé publique.
ETAPE 7 : VERIFIER LA SIGNATURE D'UN MAIL
Vous avez reçu un mail signé, comment être sur que l'expéditeur annoncé est bien celui qu'il prétend être ?
En vérifiant la signature à l'aide de sa clé publique (celle qu'il vous a envoyé à l'étape 2).
Si la signature est vérifiée, un symbole vert d'affichera, sinon méfiance ....
ETAPE 8 : MON MAIL EST-IL VRAIMENT CHIFFRE ?
Vous pouvez vérifier par vous-même. Ouvrez wireshark (comme dans le TP2) et regardez le
contenu des trames SMTP et POP.
Le message est-il bien chiffré ? en totalité ?
Et qu'en est-il des identifiants et des mots de passe ?