Conclusion
Tout au long de ce chapitre, nous avons essayé de
mettre au point le cadre général de notre travail. Pour ce faire
nous avons tout d'abord précisé l'organisme d'accueil qui
s'avère un élément fondamental dans l'environnement du
projet et dont s'ensuit une étude comparative entre les solutions du
mailing existantes. Finalement nous avons exposé la Travail
demandé.
CHAPITRE2
|
|
Étude Théorique
|
Introduction
L'échange de courriers électroniques est
certainement l'un des plus vieux et des plus utilisés de tous les
services offerts sur Internet. Dans ce chapitre, nous allons faire
l'état de l'art de ce service. Une première partie sera
consacrée à la définition de quelques notions relatives au
service de messagerie, sa structure et les différents agents
intervenants. En une seconde partie, nous allons nous intéresser aux
différents protocoles régulant la messagerie
électronique.
2.1 Le service de messagerie 2.1.1
Définitions
Un service de messagerie, dans sa forme la plus basique, est
un service permettant essentiellement l'échange de messages textuels
entre les différents utilisateurs enregistrés (ayant une adresse
électronique valide) et connectés à un réseau
informatique, que ce soit en local ou sur internet.
Mais, actuellement, les services de messagerie sont beaucoup
plus riches et présentent beaucoup plus de fonctionnalités;
à savoir l'intégration des pièces jointes (joindre un
fichier quelconque au message envoyé), la gestion du courrier
indésirable (les spams) et la manipulation des listes de diffusion
(permettre l'envoi multiple).
Cet échange de messages peut s'effectuer en
différé, c'est-à-dire il n'est pas nécessaire que
le destinataire soit connecté au moment de l'envoi, son message sera
enregistré sur un serveur et il pourra le consulter
ultérieurement. On parle à ce moment de la messagerie
électronique simple.
Par ailleurs, l'échange peut aussi se faire en temps
réel et on parle à ce moment de la messagerie
instantanée.
logiciel qui assure les différentes fonctionnalités
du service de messagerie. Dans la partie suivante nous allons présenter
les différents agents constituant un service de messagerie.
2.1.2 Les différents agents d'un serveur de
messagerie
2.1.2.1 Le Mail User Agent (MUA)
Le MUA est un programme qui sert à lire, écrire,
répondre, recevoir des messages [B1]. Il présente
généralement une interface graphique riche à la
disposition de l'utilisateur. Le MUA ne permet pas de transférer le
message au destinataire, pour cela il fait appel à un MTA.
2.1.2.2 Le Mail Transfert Agent (MTA)
Le MTA est un programme dédié à la
transmission des messages entre utilisateurs que ce soit en local ou sur des
machines distantes. En général on a un seul MTA par
machine[B1]. Un MTA reçoit, habituellement par le protocole
SMTP 1, les emails envoyés soit par des clients de messagerie
électronique (MUA), soit par d'autres MTA. Son rôle est de
redistribuer ces courriers à des Mail Delivery Agent (MDA) et/ou
d'autres MTA.
Parmi les principaux MTA on trouve Qmail, Postfix, Sun ONE
Messaging Server, Send-mail et Sendmail Switch (version commerciale de
Sendmail).
2.1.2.3 Le Mail Delivery Agent (MDA)
Un Mail Delivery Agent marque la fin de l'acheminement du mail
vers la destination[B1]. C'est le MDA qui reçoit le message du
MTA et se charge de le placer dans la boite aux lettres de l'utilisateur. Il
doit donc gérer les éventuels problèmes tels qu'un disque
plein ou une boite aux lettres corrompue et doit impérativement signaler
au MTA toute erreur de délivrance. Parmi les MDA connus nous citons :
Procmail2, maildrop, etc. La figure (2.1) présente le chemin
suivi par un message
2.2 Structure générale et format d'un
message
2.2.1 Structure d'un message
Les messages électroniques échangés
obéissent à une structure bien définie. Ils sont
organisés en trois parties, à savoir : L'entête : elle
comporte plusieurs informations générales mais très utiles
lors de l'envoi du message. Voici quelques exemples des champs de
l'entête :
1. Le Simple Mail Transfer Protocol (littéralement
<< Protocole simple de transfert de courrier >>),
généralement abrégé SMTP, est un protocole de
communication utilisé pour transférer le courrier
électronique vers les serveurs de messagerie électronique.
2. Procmail est un outil permettant principalement de filtrer
des messages électroniques
Figure 2.1 -- Acheminement d'un message
électronique
· Le champ FROM : contient l'adresse
source du message.
· Le champ RECEIVED : chaque machine qui
reçoit un message ajoute son adresse dans ce champ.
· Le champ DATE : contient la date d'envoi
du message.
· Le champ TO : contient la liste des
destinataires séparés par des virgules.
· Le corps : il contient les
données utiles, c'est à dire le contenu du message à
transmettre. Il doit être impérativement séparé de
l'entête par une ligne vide. Il faut faire attention à ne pas
insérer des caractères non imprimables tels que les espaces ou
les tabulations sinon la structure du message sera erronée.
· L'enveloppe : par analogie avec
l'enveloppe du courrier traditionnel, elle contient
essentiellement des informations concernant le destinataire
et l'expéditeur. Si le message est destiné à plusieurs
destinataires, chacun a sa propre enveloppe mais la même entête et
le même corps du message. L'enveloppe est envoyée
séparément du reste du message. Elle sert à router le
message vers une destination bien déterminée.
2.2.2 Les formats standards de messages : la norme
MIME
Pour des raisons de compatibilité, plusieurs normes
ont été élaborées afin d'uniformiser la structure
des messages et de définir des formats standards. Parmi ces standards
nous citons Multipurpose Internet Mail Extension ou MIME. Les principaux
apports du standard MIME [N3] sont :
· Possibilité d'avoir plusieurs objets
(pièces jointes) dans un même message.
· Une longueur de message illimitée.
· L'utilisation de jeux de caractères (alphabets)
autres que le code ASCII.
· L'utilisation de texte enrichi (mise en forme des
messages, polices de caractères, couleurs, etc.)
· Des pièces jointes binaires (exécutables,
images, fichiers audio ou vidéo, etc.) comportant éventuellement
plusieurs parties.
MIME utilise des directives d'entête spécifiques
pour décrire le format utilisé dans le corps d'un message, afin
de permettre au client de messagerie de pouvoir l'interpréter
correctement :
· MIME-Version : Il s'agit de version du
standard MIME utilisée dans le message. Actuellement seule la version
1.0 existe.
· Content-type : Décrit le type et
les sous-types des données.
· Content-Transfer-Encoding :
Définit l'encodage utilisé dans le corps du message.
· Content-ID : Représente un
identificateur unique de partie de message.
· Content-Description : Donne des
informations complémentaires sur le contenu du message.
· Content-Disposition : Définit les
paramètres de la pièce jointe, notamment le nom associé au
fichier grâce à l'attribut filename.
2.2.3 Les principaux types de MIME
Le type MIME, utilisé dans l'entête
Content-Type, est utilisé pour typer les documents attachés
à un courrier[N3]. Les principaux types de données,
appelés parfois " types de données discrets ", sont les suivants
:
· text: données textuelles
lisibles. text/rfc822 [RFC822] ; text/plain [RF646] ; text/html [RF854].
· image: données binaires
représentant des images numériques image/jpeg , image/gif ,
image/png.
· audio : données numériques
sonores audio/basic; audio/wav.
· video : données vidéos :
video/mpeg.
· application : données binaires
autres; application/octet-stream; application/pdf
2.2.4 Les types de codage
Pour transférer des données binaires, MIME propose
cinq formats de codage pouvant être utilisé dans l'entête
Transfer-encoding:
· 7bit : format texte codé sur 7
bits (pour les messages non accentués).
· 8bit : format texte 8 bits.
· quoted-printable : format
Quoted-Printable, recommandé pour les messages utilisant un alphabet
codé sur plus de 7 bits (présence d'accents par exemple).
· base64 : format Base 64,
recommandé pour l'envoi de fichiers binaires en pièce jointe.
· binary: format binaire.
2.3 Les différents protocoles
utilisés
Figure 2.2 -- La couche protocolaire TCP/IP
2.3.1 Le protocole Simple Mail Transfert Protocol
(SMTP)
C'est un protocole de communication utilisé pour
transférer le courrier [N4] vers les serveurs de messagerie
électronique. Il est dédié exclusivement à l'envoi
des messages vers un serveur mais pas à la réception. Comme son
nom l'indique, il s'agit d'un protocole simple à utiliser.
On doit commencer par spécifier l'expéditeur du
message puis, la ou les destinations. Après vérification de leur
existence, le corps du message est transféré. SMTP utilise par
défaut le port 25 pour ses échanges.
Le logiciel sendmail est l'un des premiers serveurs de
messagerie électronique à utiliser SMTP. Aujourd'hui, la
quasi-totalité des clients email peuvent utiliser SMTP pour envoyer
leurs messages.
2.3.2 Les protocoles Post Office Protocol (POP) et
Internet Message Access Protocol (IMAP)
Bien qu'ils assurent la même finalité, leurs
manières de procéder par défaut diffèrent. Pour
POP, il se connecte au serveur, télécharge tout les messages sur
la machine locale en les marquant comme nouveaux messages, les efface du
serveur et se déconnecte. L'utilisateur peut alors consulter ses
messages hors connexion.
Pour IMAP, la consultation des messages se fait sur le serveur,
rien n'est téléchargé en local et rien n'est effacé
du serveur sauf suite à la demande explicite de l'utilisateur.
2.3.3 Le protocole Secure Socket Layer (SSL)
Á la différence des protocoles
précédents, SSL n'est pas spécifique aux applications de
messagerie. Il s'agit d'un protocole de sécurisation des communications
sur un réseau informatique, notamment internet. En effet, avec le
développement d'internet et l'apparition de nouveaux domaines
d'activités assez sensibles tels que les transactions bancaires et le
e-commerce, le besoin d'une communication confidentielle et
sécurisée s'est fait sentir. Dès lors, plusieurs
mécanismes et protocoles de sécurisation ont vu le jour. L'un des
premiers à être développé et des plus
répandus aujourd'hui est SSL.
Développé à l'origine par Netscape
3, il a été nommé TLS pour Transport Layer
Security par l'IETF (Internet Engineering Task Force) après le
rachat du brevet de Netscape en 2001. Par abus de langage on parle aujourd'hui
de SSL pour désigner indifféremment SSL ou TLS. Le protocole SSL
s'intercale entre la couche transport et la couche application de la pile
protocolaire TCP/IP (figure 2.3).
Figure 2.3 -- Pile protocolaire TCP/IP avec SSL
3. Netscape est une entreprise d'informatique
américaine qui a été pionnière du World Wide Web
avec son navigateur Web Netscape Navigator. L'entreprise a existé
uniquement de 1994 à 2003, et en tant que filiale d'AOL à la
fin.
Situé au dessous de la couche applicative, SSL peut
être utilisé indépendamment du type d'application. Il peut
être utilisé au dessous de http pour sécuriser simplement
des pages inter-net, au dessous de SMTP, IMAP ou POP pour sécuriser les
échanges de messagerie,etc.
Bref, c'est un protocole de sécurisation de toute sorte
de trafic de données sur un réseau. SSL fonctionne suivant un
mode client-serveur. Il fournit quatre objectifs de sécurité
importants :
· L'authentification du serveur.
· La confidentialité des données
échangées (session chiffrée).
· L'intégrité des données
échangées.
· De manière optionnelle, l'authentification du
client avec un certificat numérique.
Pour son fonctionnement, SSL utilise une combinaison de
systèmes de cryptologie4 à clé
symétrique et à clé publique. Le premier système
est beaucoup plus rapide mais le second offre un meilleur niveau de
sécurité. Ainsi, SSL tire profil des deux. Une session SSL
commence avec un échange de messages appelé la phase de "
handshake ". Cette phase permet, en premier temps, au serveur de s'authentifier
auprès du client moyennant sa clé publique, puis le client et le
serveur coopèrent pour produire une clé symétrique qui
sera utilisée pour crypter, décrypter tout les échanges de
la session en cours.
|