Simple Mail Transfer Protocol

Il s'agit du protocole standard pour transférer le courrier d'un serveur à un autre, avec une connexion point à point. Ce protocole fonctionne de manière connectée, dans une trame TCP/IP. Fonctionne grâce à des commandes textuelles. Port 25 par défaut.

Le protocole smtp fonctionne donc avec des commandes textuelles, en voici un exemple:


S: 220 smtp.commentcamarche.net SMTP Ready  

C: EHLO machine1.commentcamarche.net
S: 250 smtp.commentcamarche.net
C: MAIL FROM:<webmaster@commentcamarche.net>

S: 250 OK
C: RCPT TO:<meandus@meandus.net>

S: 250 OK
C: RCPT TO:<tittom@tittom.fr>

S: 550 No such user here
C: DATA
S: 354 Start mail input; end with <CRLF>.<CRLF>

C: Subject: Petit Bonjour
C: Salut Meandus,
C: comment ca va?
C :
C: A bientot !
C: <CRLF>.<CRLF>

S: 250 OK
C: QUIT
R: 221 smtp.commentcamarche.net closing transmission

Signification des codes retour du SMTP:

Code 2 : Commande exécutée sans erreur ;

Code 3 : Demande en cours d'execution ;

Code 4 : Erreur temporaire ;

Code 5 : Demande n'a pas pu être traitée ;

Code 220 : Premier code envoyé par le serveur quand la connexion s'est effectuée sans erreur;

Code 250 : Confirmation de commande acceptée ;

Code 354 : Réponse à la commande DATA ;

Code 421 : Echec temporaire de la connexion ;

Code 452 : Nombre de destinataires maximum atteint ;

Code 550 : Adresse invalide ;

Code 554 : Echec permanent de la connexion.

Avec le protocole SMTP, il est impossible d'authentifier l'expéditeur. Donc le spam est très présent car l'implantation de MTA ne respectant pas les standards est très facile et il y a beaucoup de failles dans les systèmes d'exploitation.

Depuis 2006, les fournisseurs d'accès internet bloquent les paquets TCP/IP sortant du port 25, car cest de là (pc infectés) que venaient 50 à 80% des spams. Maintenant, on n'utilise plus que du SMTP authentifié sur le port 587.

Le smtp fonctionne en plusieurs parties:

Avec le protocole SMTP, les messages circulent en clair sur le réseau. C'est à dire que les mails sont facilement capturables et lisibles. Aussi, par les commandes, il est possible d'envoyer un mail sous l'identité de n'importe qui, ce qui peut être utilisé par de mauvaises personnes. Enfin, le problème de spam. En effet les serveurs SMTP peuvent être utilisés comme serveurs relais pour que les spammeurs fassent passer leurs mails. Mais il existe maintenant un option pour désactiver le relayage. Pour des raisons de sécurité (par rapport au spam), le port 25 à été remplacé par le port 587. (Le port 25 reste autorisé par certains fournisseurs).

Problèmes de sécurité :

Avec le protocole SMTP, les messages circulent en clair sur le réseau. C'est à dire que les mails sont facilement capturables et lisibles.

Aussi, par les commandes, il est possible d'envoyer un mail sous l'identité de n'importe qui, ce qui peut être utilisé par de mauvaises personnes.

Enfin, le problème de spam. En effet les serveurs SMTP peuvent être utilisés comme serveurs relais pour que les spammeurs fassent passer leurs mails. Mais il existe maintenant un option pour désactiver le relayage.

Pour des raisons de sécurité (par rapport au spam), le port 25 à été remplacé par le port 587. (Le port 25 reste autorisé par certains fournisseurs).

Qu'est ce que l'ESMTP?

C'est une extension de SMTP, créée en 1995. Il permet plus de possibilités et de compatibilité que le SMTP. Au lieu d'envoyer HELO on envoie EHLO, ensuite un serveur va répondre avec un code pour valider ou non la commande. Un serveur ESMTP va envoyer un code 250 (confirmer) et un serveur SMTP enverra un code 550 (impossible) et demandera alors d'écrire HELO ou QUIT.