Comment vérifier une connexion SMTP avec une session Telnet manuelle

Email

1 min read

Comment vérifier une connexion SMTP avec une session Telnet manuelle

Email

1 min read

Comment vérifier une connexion SMTP avec une session Telnet manuelle

Dans le monde de l'email, il y a de nombreux aspects à tester, mais l'un des tests les plus basiques que vous pouvez effectuer est simplement de telnet dans un serveur SMTP donné. Ce contrôle SMTP est utile pour déterminer si les problèmes les plus basiques existent ou non.

Dans le monde des emails, il existe de nombreux aspects à tester, mais l'un des tests les plus basiques que vous puissiez effectuer est de simplement telnetter dans un serveur SMTP donné.  Ce contrôle SMTP est utile pour déterminer si les problèmes les plus basiques existent ou non.

  • Le serveur est-il opérationnel ?

  • Y a-t-il un pare-feu qui bloque la communication ?

  • Le serveur de messagerie permet-il le relais d'un domaine/adresse e-mail particulier ?

  • Quels sont les commandes SMTP que le serveur de messagerie prend en charge ?

  • Le serveur répond-il avec le nom d'hôte correct ?

  • La connexion fonctionne-t-elle en dehors de tout logiciel tiers ou API ?

Toutes ces questions et plus encore peuvent être répondues avec un simple test telnet.

Avant de commencer, assurez-vous d’ouvrir notre article complémentaire à ce post: Vers où les messages de rebond sont-ils envoyés ? dans un nouvel onglet afin que vous puissiez le lire après avoir terminé ce blog.

À noter, les commandes utilisées dans les exemples suivants (ainsi que des commandes supplémentaires) sont couvertes dans la section 4.1 de RFC 2821.

Comment envoyer un email en utilisant Telnet ?

L'envoi d'email via telnet peut vous aider à identifier les problèmes de délivrabilité dans votre configuration actuelle.

Avant d'envoyer un email en utilisant telnet, confirmez que telnet est à la fois installé et activé sur votre ordinateur.  La plupart des ordinateurs sont livrés avec un client telnet préinstallé. Pour les versions de Windows qui n'en ont pas, vous pouvez l'installer en ouvrant la section « Programmes et fonctionnalités » du panneau de configuration et en sélectionnant « Activer ou désactiver des fonctionnalités Windows ». Avec cette fenêtre ouverte, sélectionnez « client telnet » puis cliquez sur OK.

Une fois qu'un client telnet a été vérifié comme étant installé sur le serveur, ouvrez la fenêtre terminal où vous entrerez vos commandes d'invite. Sous Windows, utilisez Windows + R, tapez « cmd » et appuyez sur Entrée. Pour les utilisateurs Mac, vous trouverez l'icône du terminal en ouvrant Finder et en recherchant « Utilitaires » sur la page Applications, ou en saisissant « terminal » dans la fonction de recherche Launchpad.

Ensuite, nous devons trouver un serveur de messagerie pour nous connecter. Pour cela, nous aurons besoin de l'enregistrement DNS MX pour un domaine donné. Cela peut être trouvé avec la commande suivante (pour ces exemples, port25.com sera utilisé, mais n'importe quel domaine peut être substitué) :

Windows :

nslookup -type=mx port25.com

Réponse non autorisée :

port25.com  préférence MX = 100, échangeur de courrier = mail.port25.com

Linux :

nslookup -type=mx port25.com

Réponse non autorisée :

port25.com  échangeur de courrier = 100 mail.port25.com.

SMTP utilise l'un des trois ports — 25, 465 ou 587, qu'Outlook de Microsoft utilise couramment. Si votre relais SMTP utilise un port différent de 25 comme montré dans l'exemple, vous utiliserez le port spécifié par la réponse du serveur d'échange de courrier à la commande nslookup. Vous pouvez également vérifier le port sur lequel repose votre SMTP en demandant à votre administrateur ou en vous connectant au serveur d'échange de courrier et en vérifiant les protocoles.

Ensuite, nous avons besoin du DNS PTR pour l'IP que nous allons utiliser.   D'abord, nous devons savoir quelle adresse IP l'internet nous attribue.   Pour le trouver, nous pouvons utiliser un site web comme :

http://whatismyipaddress.com/

Avec l'adresse IP, exécutez la commande suivante, où A.B.C.D est l'adresse IP.

Windows :

nslookup -type=ptr A.B.C.D

Réponse non autorisée : 

D.C.B.A.in-addr.arpa nom = server.example.com

Linux :

nslookup -type=ptr A.B.C.D

Réponse non autorisée : 

D.C.B.A.in-addr.arpa nom = server.example.com

server.example.com est juste un exemple, et vos résultats seront différents.

Maintenant que nous avons l'enregistrement MX pour port25.com et le PTR pour l'IP que nous allons utiliser, il est temps de se connecter au serveur SMTP.   Pour ce faire, utilisez la commande suivante :

telnet mail.port25.com 25

Quelque chose de similaire à ce qui suit devrait maintenant s'afficher :

Trying 69.63.149.30... Connexion à mail.port25.com (69.63.149.30). Le caractère d'échappement est '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) service ESMTP prêt

Si vous recevez un message d'erreur comme « ne peut pas se connecter » à ce stade, soit le numéro de port est incorrect, soit le serveur de messagerie rencontre des problèmes.

La première commande que nous devons envoyer au  serveur de messagerie pour notre testeur SMTP est le EHLO  ou HELO.  C'est un message de salutation de base qui démarre la communication entre le client telnet et le serveur SMTP.  Est également passé le DNS PTR pour l'adresse IP à partir de laquelle nous nous connectons tel que déterminé précédemment.

EHLO server.example.com

Quelque chose de similaire à ce qui suit devrait être retourné :

250-mail.port25.com vous dit bonjour 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN

Cela montre les commandes SMTP que le serveur SMTP accepte.  Tous les serveurs SMTP n'acceptent pas les mêmes ensembles de commandes. Par exemple, yahoo montre uniquement les éléments suivants :

250-8BITMIME 250-SIZE 41943040 250 PIPELINING

Et aol n'en montre qu'un seul :

250 DSN

La commande suivante que nous devons envoyer est la commande MAIL FROM.  Cela détermine l'adresse à laquelle les rebonds sont envoyés. Ce n'est pas la même chose que l'en-tête from, qui est l'adresse email affichée dans un client de messagerie.

MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok

Assurez-vous d'utiliser le nom de domaine correspondant au domaine de votre serveur de messagerie. Par exemple, si le domaine de votre email est anycompany.com, vous voudrez utiliser vous@anycompany.com au lieu d'un email extérieur comme vous@free-mail-provider.com. Les variations dans les noms de domaine peuvent entraîner l'apparition d'un message d'erreur.

Maintenant que la commande MAIL FROM  a été envoyée, nous pouvons envoyer la commande RCPT TO .  Cette commande indique au serveur de messagerie SMTP à qui le message doit être envoyé. Cela peut être le même ou différent de l'en-tête to, qui est l'adresse email affichée dans le client de messagerie.

RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok

Vérifiez l'adresse de votre destinataire avant d'envoyer la commande RCPT TO — un message d'erreur apparaissant ici peut indiquer une adresse email incorrecte ou bloquée.

La dernière commande à exécuter avant de commencer le corps du message est la commande DATA.  Cette commande indique au serveur de messagerie SMTP que tout ce qui suit est le corps du message (qui contient également les en-têtes).

DATA 354 envoyer message

Il est important de noter que si un serveur de messagerie prend en charge PIPELINING, comme le fait mail.port25.com, le serveur de messagerie SMTP peut attendre que la commande DATA soit envoyée avant de répondre à d'autres commandes après le EHLO/HELO.  Dans ce cas, entrez les commandes MAIL FROM, RCPT TO, et DATA  avant d'attendre une réponse.

Maintenant que la commande DATA a été envoyée, nous pouvons commencer à envoyer le contenu du message.  Cela commence par les différents en-têtes. Au minimum, un message doit contenir un en-tête to, from, subject, et date. Les en-têtes saisis ici seront affichés à l'utilisateur dans leur client de messagerie.

From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Mer, 11 Mai 2011 16:19:57 -0400

Avec les en-têtes définis, nous ajoutons maintenant une ligne vierge avec un retour chariot/saut de ligne (appuyez simplement deux fois sur Entrée) puis nous commençons le corps réel du message.

Hello World, Ceci est un message de test envoyé depuis une session telnet manuelle. Cordialement, Administrateur SMTP

Le message étant complet, nous devons indiquer au serveur SMTP que nous avons terminé le message et voulons que le serveur de messagerie SMTP l'accepte.  Cela se fait avec un point sur une ligne à part. Si lors de la rédaction d'un message un point sur une ligne à part est nécessaire, vous devez en mettre 2, le premier échappant le second.

.   250 2.6.0 message reçu

Si vous obtenez un message d'erreur au lieu de la notification « reçu », enregistrez les détails pertinents et contactez votre fournisseur de messagerie pour plus d'assistance.

Enfin, la commande QUIT  est envoyée pour fermer la connexion :

QUIT 221 2.0.0 mail.port25.com vous dit au revoir

Avec cela, le serveur de messagerie a maintenant accepté le message pour livraison, votre test d'envoi d'email telnet est terminé,  et il devrait être dans la boîte de réception de l'adresse RCPT TO!!!

Voici toutes les commandes sans interruption :

telnet mail.port25.com 25 Trying 69.63.149.30... Connexion à mail.port25.com (69.63.149.30). Le caractère d'échappement est '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) service ESMTP prêt EHLO server.example.com 250-mail.port25.com vous dit bonjour 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok DATA 354 envoyer message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Mer, 11 Mai 2011 16:19:57 -0400 Hello World, Ceci est un message de test envoyé depuis une session telnet manuelle. Cordialement, Administrateur SMTP . 250 2.6.0 message reçu QUIT 221 2.0.0 mail.port25.com vous dit au revoir

L'envoi d'un email à l'aide de telnet vous permet de tester les capacités de connexion rapidement et à moindre coût que des équipements ou logiciels de diagnostic robustes.

Comment tester SMTP en utilisant l'authentification Telnet ?

Maintenant que vous savez comment vérifier une connexion SMTP avec telnet, nous allons discuter des procédures d'authentification. L'authentification SMTP aide à prévenir l'arrivée de grandes quantités de spam dans les boîtes de réception des lecteurs, bien que tous les serveurs d'échange de courrier ne l'exigent pas.

La principale différence dans les protocoles d'authentification modernes est la présence d'un encodage en base64. Base64 convertit les données binaires en format texte ASCII requis par les serveurs de courrier pour la transmission de données réussie. C'est une manière de représenter vos informations de connexion – une certaine combinaison de texte – sous un format numérique que l'ordinateur peut comprendre.

Vous pouvez générer votre base64 à l'aide de logiciels ou d'outils en ligne gratuits. Une fois que vous communiquez les informations au serveur de courrier, celui-ci compare ces données avec ses dossiers pour déterminer l'authentification.

Pour tester l'authentification SMTP via telnet, complétez les étapes suivantes :

  • Ouvrez le terminal et connectez-vous au serveur de courrier en utilisant le nom du serveur telnet et la commande d'accès — mail.port25.com dans l'exemple ci-dessus.

  • Saluez le serveur avec EHLO ou HELO, entrez AUTH LOGIN, et attendez la réponse de l’ordinateur.

  • Entrez le nom d'utilisateur encodé en base64 et laissez le serveur répondre.

  • Entrez le mot de passe encodé en base64, et vous devriez recevoir une réponse telle que « authentification réussie. »

  • Poursuivez avec MAIL FROM, RCPT TO, DATA, et QUIT pour envoyer votre email authentifié.

Maintenant que vous savez comment vérifier une connexion SMTP avec telnet, nous allons discuter des procédures d'authentification. L'authentification SMTP aide à prévenir l'arrivée de grandes quantités de spam dans les boîtes de réception des lecteurs, bien que tous les serveurs d'échange de courrier ne l'exigent pas.

La principale différence dans les protocoles d'authentification modernes est la présence d'un encodage en base64. Base64 convertit les données binaires en format texte ASCII requis par les serveurs de courrier pour la transmission de données réussie. C'est une manière de représenter vos informations de connexion – une certaine combinaison de texte – sous un format numérique que l'ordinateur peut comprendre.

Vous pouvez générer votre base64 à l'aide de logiciels ou d'outils en ligne gratuits. Une fois que vous communiquez les informations au serveur de courrier, celui-ci compare ces données avec ses dossiers pour déterminer l'authentification.

Pour tester l'authentification SMTP via telnet, complétez les étapes suivantes :

  • Ouvrez le terminal et connectez-vous au serveur de courrier en utilisant le nom du serveur telnet et la commande d'accès — mail.port25.com dans l'exemple ci-dessus.

  • Saluez le serveur avec EHLO ou HELO, entrez AUTH LOGIN, et attendez la réponse de l’ordinateur.

  • Entrez le nom d'utilisateur encodé en base64 et laissez le serveur répondre.

  • Entrez le mot de passe encodé en base64, et vous devriez recevoir une réponse telle que « authentification réussie. »

  • Poursuivez avec MAIL FROM, RCPT TO, DATA, et QUIT pour envoyer votre email authentifié.

Maintenant que vous savez comment vérifier une connexion SMTP avec telnet, nous allons discuter des procédures d'authentification. L'authentification SMTP aide à prévenir l'arrivée de grandes quantités de spam dans les boîtes de réception des lecteurs, bien que tous les serveurs d'échange de courrier ne l'exigent pas.

La principale différence dans les protocoles d'authentification modernes est la présence d'un encodage en base64. Base64 convertit les données binaires en format texte ASCII requis par les serveurs de courrier pour la transmission de données réussie. C'est une manière de représenter vos informations de connexion – une certaine combinaison de texte – sous un format numérique que l'ordinateur peut comprendre.

Vous pouvez générer votre base64 à l'aide de logiciels ou d'outils en ligne gratuits. Une fois que vous communiquez les informations au serveur de courrier, celui-ci compare ces données avec ses dossiers pour déterminer l'authentification.

Pour tester l'authentification SMTP via telnet, complétez les étapes suivantes :

  • Ouvrez le terminal et connectez-vous au serveur de courrier en utilisant le nom du serveur telnet et la commande d'accès — mail.port25.com dans l'exemple ci-dessus.

  • Saluez le serveur avec EHLO ou HELO, entrez AUTH LOGIN, et attendez la réponse de l’ordinateur.

  • Entrez le nom d'utilisateur encodé en base64 et laissez le serveur répondre.

  • Entrez le mot de passe encodé en base64, et vous devriez recevoir une réponse telle que « authentification réussie. »

  • Poursuivez avec MAIL FROM, RCPT TO, DATA, et QUIT pour envoyer votre email authentifié.

Rejoignez notre Newsletter.

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.

Rejoignez notre Newsletter.

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.

Rejoignez notre Newsletter.

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.

Pinterest logo
Uber logo
Logo Square
Logo Adobe
Meta logo
logo PayPal

Company

Paramètres de confidentialité

Newsletter

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.

Uber logo
Logo Square
Logo Adobe
Meta logo

Company

Paramètres de confidentialité

Newsletter

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.

Uber logo
Logo Adobe
Meta logo

Reach

Grow

Manage

Automate

Resources

Company

Newsletter

Restez à jour avec Bird grâce aux mises à jour hebdomadaires dans votre boîte de réception.

En soumettant, vous acceptez que Bird puisse vous contacter au sujet de nos produits et services.

Vous pouvez vous désabonner à tout moment. Consultez la Déclaration de confidentialité de Bird pour plus de détails sur le traitement des données.