{{tag>netadmin smtp}}
====== Tester le service smtp ======
Le service smtp fonctionne en mode texte. Pour tester le service, se connecter et transmettre un mail à l'aide de telnet/putty. Le protocole utilise les mots clés suivants:
* HELO
* MAIL FROM:
* RCPT TO:
* DATA
* QUIT
Ci dessous, un exemple de connexion a un serveur smtp:
sophos:~$ telnet 192.9.200.200 25
Trying 192.9.200.200...
Connected to 192.9.200.200.
Escape character is '^]'.
220 www.intranet.mairie-tournefeuille.fr ESMTP Postfix
helo sophos
250 www.intranet.mairie-tournefeuille.fr
mail from: yoann
250 2.1.0 Ok
rcpt to: destinataire@exemple.org
250 2.1.5 Ok
data
354 End data with .
Mon message ici
.
250 2.0.0 Ok: queued as 2C55818028D56
quit
221 2.0.0 Bye
Connection closed by foreign host.
===== Authentification en texte clair =====
Certains serveur exigent une authentification (clear text). Le processus d'authentification utilise un **encodage en base 64**. Il faut en amont préparer la traduction du nom d'utilisateur et du mot de passe en base 64:
echo -n username | base64
echo -n password | base64
Autre possibilité pour encoder en base 64 via PERL:
perl -MMIME::Base64 -e 'print encode_base64("username");'
perl -MMIME::Base64 -e 'print encode_base64("password");'
Via OpenSSL:
openssl enc -base64 -in monfichier.txt -out monfichier.b64
Peu importe la méthode choisie, noter les chaînes traduisant l'utilisateur et le mot de passe en base64 pour ensuite pouvoir les fournir au serveur après avoir taper la commande **AUTH LOGIN**:
telnet smtp.orange.fr 25
Trying 193.252.22.86...
Connected to smtp.orange.fr.
Escape character is '^]'.
220 mwinf5d63 ME ESMTP server ready
helo localhost.localdomain
250 mwinf5d63 hello [217.133.24.8], pleased to meet you
AUTH LOGIN:
334 VXNlcm5hbWU6
BASE64userTraduction==
334 UGFzc3dvcmQ6
BASE64mdpTraduction==
235 2.7.0 ... authentication succeeded
mail from: expediteur@example.com
250 2.1.0 sender ok
rcpt to: destiantaire@example.com
250 2.1.5 recipient ok
data
354 enter mail, end with "." on a line by itself
essai authentification telnet
.
250 2.0.0 30wz2100D3RlENH030y9ci mail accepted for delivery
===== Envoi via SSL/TLS =====
:TODO:
Tester procédure lien en référence
===== Références =====
* https://fr.wikipedia.org/wiki/Base64
* https://kojiroh.wordpress.com/2016/12/07/sending-email-tls-using-command-line/
* [[https://www.ionos.fr/digitalguide/email/aspects-techniques/starttls/|Notes techniques StartTLS (ionos.fr) ]]