Le courrier électronique - Université de Reims Champagne

Transcription

Le courrier électronique - Université de Reims Champagne
Le courrier électronique
F. Nolot
1
Réseaux 2
Université de Reims Champagne-Ardenne
Le courrier électronique
Une des applications les plus importantes dans Internet
Particularité du courrier électronique
Un destinataire (ou l'expéditeur) n'est pas toujours connecté au réseau
L'émetteur ne veut pas attendre que le destinataire soit atteignable
Mécanisme de remise différée du courrier
Délai de transfert d'un message peut être très long
F. Nolot
2
Réseaux 2
Université de Reims Champagne-Ardenne
Eléments conceptuels de la messagerie
Agent utilisateur (UA, User Agent)
Exemples : Netscape Mail, Mozilla Mail, Eudora, ...
Sert à composer, visualiser et stocker les messages en local
Communique avec le MTA à l'aide de boîtes aux lettres
Agent de transfert de messages (MTA, Message Transfer Agent)
Transmet des messages entre des sites distants
Utilise le protocole SMTP
Exemple : sendmail, postfix
F. Nolot
3
Réseaux 2
Université de Reims Champagne-Ardenne
Remise différée du courrier
Mécanisme de mémorisation temporaire : Spooling
Le message est copié dans une zone privée du système de messagerie
Une tâche de fond (MTA) essaie de transmettre le message au serveur mail du destinataire
Si le serveur n'est pas disponible
Le message sera gardé dans la mémoire spool
Le MTA essaie périodiquement de transmettre le message
Abandon au bout de quelques jours
F. Nolot
4
Réseaux 2
Université de Reims Champagne-Ardenne
Noms de boîtes aux lettres
Normalement une boîte aux lettres est identifiée par une paire:
Boîte aux lettres, nom de domaine
Exemple :
Boîte aux lettres : prenom.nom, pnom
Nom de domaine : univ­reims.fr
Problèmes
Le nom de la boîte aux lettres n'est pas toujours identique au nom des utilisateurs sur les machines
Le nom de domaine n'indique pas toujours sur quelle machine se trouve la boîte aux lettres de l'utilisateur
F. Nolot
5
Réseaux 2
Université de Reims Champagne-Ardenne
Les alias
Le système de messagerie utilise des alias comme adresses électroniques
Un alias correspond à une ou plusieurs boîtes aux lettres
Traduction 1 vers N
L'alias correspond à plusieurs adresses
Traduction N vers 1
Plusieurs alias correspondent à une seule boîte aux lettres
Exemple : prenom.nom@univ­reims.fr, pnom@univ­reims.fr
Le système de messagerie comporte un mécanisme d'expansion des alias
Configuration du logiciel de mail (postfix)
F. Nolot
6
Réseaux 2
Université de Reims Champagne-Ardenne
Réexpédition du courrier
L'expansion des alias ne traduit pas seulement le nom de la boîte aux lettres mais l'adresse électronique complète
Permet la réalisation de liste de diffusion
Les membres de la liste ne se trouvent pas nécessairement sur le même site
Permet la traduction d'une adresse logique en une adresse physique
Exemple : [email protected] transformé en [email protected]
Après l'expansion, la messagerie transmet les messages aux différents destinataires
F. Nolot
7
Réseaux 2
Université de Reims Champagne-Ardenne
Problèmes de l'expansion des alias
Expansion circulaire
Le site A associe une adresse X à une adresse Y sur le site B
Le site B associe l'adresse Y à l'adresse X du site A
Le ré­expéditeur détruit des messages qui ont traversé trops de sites
Fausse association
Si l'administrateur mail se trompe, des mails peuvent arriver dans une mauvaise boîte aux lettres ou être perdus
Configuration complexe de l'expansion des alias
F. Nolot
8
Réseaux 2
Université de Reims Champagne-Ardenne
Agents relais
En principe le MTA de l'émetteur peut directement contacter le MTA du destinataire à travers une connexion TCP
La plupart des compagnies utilisent un système relais basé sur plusieurs MTA
Chaque MTA stocke le message avant de le transmettre au MTA suivant
F. Nolot
9
Réseaux 2
Université de Reims Champagne-Ardenne
Transfert directe vs Transfert relayé
Transfert directe
Transmission de bout en bout donc plus fiable
L'expéditeur ne détruit le message qu'après l'avoir transmis au destinataire
Transfert plus rapide
Transfert relayé
Moins fiable
Une panne d'un relais intermédiaire peut causer la perte de messages
Permet le transfert entre des systèmes de messagerie différents
Permet l'utilisation d'adresses logiques
F. Nolot
10
Réseaux 2
Université de Reims Champagne-Ardenne
Serveur mail du destinataire
Le MTA de l'expéditeur doit connaître le MTA responsable du destinataire
Enregistrement MX du système DNS
Envoie d'un mail à [email protected]
Recherche de l'enregistrement MX concernant le domaine promo.ens.univ-reims.fr
F. Nolot
11
Réseaux 2
Université de Reims Champagne-Ardenne
Format des messages
Défini dans la RFC 822
Utilise le codage ASCII
Un message comprend deux parties
En­tête
Texte lisible (ASCII) comprenant plusieurs lignes
Chaque ligne contient un mot clé et une valeur, séparés par ':'
Mot clés :
To, From, CC, BCC, Subject, Received, Date, Message­ID, Reply­to
X­... : Définis par les agents utilisateurs. Exemple : X­Mailer
Corps
Séparé de l'en­tête par une ligne blanche
Texte en ASCII
F. Nolot
12
Réseaux 2
Université de Reims Champagne-Ardenne
Simple Mail Transfer Protocol (SMTP)
Défini dans la RFC 821
Spécifie le protocole entre deux MTA pour transférer un message
Ne décrit pas la communication avec l'utilisateur
Accepter le message de l'expéditeur ­> Agent utilisateur
Délivrer le message au destinataire ­> Agent utilisateur
Modèle client­serveur
Utilise le port 25 pour l'établissement de connexions
Protocole SIMPLE, basé sur l'échange de commandes en texte
Codage des commandes en ASCII
F. Nolot
13
Réseaux 2
Université de Reims Champagne-Ardenne
Commande SMTP
HELO nom_client
Réponse du client aux message READY du serveur
Identifie le client et établit la connexion
MAIL From:<adresse_expéditeur>
Identifie l'expéditeur originaire du message
RCPT To:<adresse_destinataire>
Identifie chacun des destinataires d'un message
Le serveur répond s'il connaît le destinataire ou non
DATA
Indique que le client est près à transmettre l'intégralité du message
La fin du message est signalé par un point '.' sur une ligne séparée
QUIT
Termine la connexion
F. Nolot
14
Réseaux 2
F. Nolot
Université de Reims Champagne-Ardenne
15
Réseaux 2
Université de Reims Champagne-Ardenne
Protocoles de récupération de courrier
L'agent utilisateur utilise un autre protocole que SMTP pour télécharger les messages depuis le serveur
Pour envoyer un message vers le MTA : SMTP
POP3: Post Office Protocol, version 3
Authentification de l'utilisateur
Commandes STAT, LIST, RETR, DELE, ... pour traiter les mails
IMAP4: Internet Message Access Protocol, révision 4
Fonctionnalités similaires mais plus étendues que POP3
Permet d'accéder aux messages sur le serveur sans les télécharger
Permet la création de nouvelles boîtes aux lettres
Permet de synchroniser la boîte aux lettres locale avec celle sur le serveur
F. Nolot
16
Réseaux 2
Université de Reims Champagne-Ardenne
Transfert de données non ASCII
Le courrier électronique est souvent utilisé pour transmettre des fichiers
SMTP exige le codage du message en ASCII
MIME: Multipurpose Internet Mail Extension
RFC 1521
Traduit n'importe quelle donnée en ASCII afin de le transmettre dans le corps d'un message
Indique le type des données codées et le codage utilisé dans le message
Définit plusieurs nouveaux champs d'en­tête
F. Nolot
17
Réseaux 2
Université de Reims Champagne-Ardenne
Exemple
Champs d'en­tête
MIME­Version
Indique la version MIME utilisée
Content­type
Type du contenu
Comprend type/sous­type (text/plain, image/jpeg, image/gif, ... )
Content­Transfer­Encoding
Indique la méthode de codage utilisée
Par exemple :base64, 7 bit, quoted­printable
F. Nolot
18
Réseaux 2
Université de Reims Champagne-Ardenne
Messages MIME multiples
Un message peut contenir plusieurs parties MIME
Indiqué par le type « multipart »
Chaque partie peut avoir son propre type et un codage différent
Champs d'en­tête 'Content­Type' et 'Content­Transfer­Encoding' pour chaque partie
Sous­types
Multipart/Mixed
Maultipart/Alternative
Message contient plusieurs représentations des mêmes données
F. Nolot
19