Tester Exim 2/2

Une fois qu’on a vérifié les émetteurs et les destinataires (partie 1/2), on peut faire des essais d’envoi. L’envoi consiste à créer un email et à l’envoyer à sa destination en utilisant le protocole SMTP. La destination est fournie par le champ MX de l’enregistrement DNS du domaine du destinataire.

Pour créer un email, on peut utiliser la commande exim, avec l’option -v pour voir l’échange entre le client du mail, exim dans le cas présent, et le serveur SMTP distant, aspmx.l.google.com, pour le domaine tohero.fr

Lorsqu’on lance le programme exim comme ci-dessous, on se retrouve dans le dialogue SMTP directement. Pour définir le sujet du mail, il faut taper « Subject: mon sujet » et un retour à la ligne, puis saisir le message. Pour terminer la saisie du message, il faut taper . et retour à la ligne ou Ctrl+D

Le détail de l’échange SMTP nous permet de voir exactement comment l’email est envoyé. Les lignes

SMTP>> indique les messages émis par le serveur local
SMTP<< indique les messages émis par le serveur distant

On peut voir qui est le destinataire « RCPT TO: », qui est l’émetteur « MAIL FROM: », qui est le serveur SMTP distant: « Connecting to aspmx.l.google.com », comment se présente le serveur local: « EHLO arditi-host3.arditi.net ». Le message « completed » indique que le mail a été envoyé au serveur SMTP distant.

Les lignes « LOG: MAIN » sont les lignes qu’on retrouve dans le fichier de log d’Exim /var/log/exim4/mainlog qui contient le détail de tous les envois/réception d’email

« 1rvBo6-0002yh-50 » est l’identifiant Exim du message.

Avec ce test, on peut détecter de suite les divers problèmes, comme un refus de connexion, un port 25 bloqué, un blocage par la politique anti-spam du destinataire, une boîte aux lettres inexistante, etc…

bsd-mailx pour tester

bsd-mailx est un client mail un peu plus évolué que Exim ou Sendmail qui permet de voir plus simplement les échanges. Il suffit d’installer le paquet « bsd-mailx » pour l’utiliser. On peut l’appeler par la commande mail :