Hoe controleer je een SMTP-verbinding met een handmatige Telnet-sessie
Bird
7 feb 2020
1 min read

Belangrijkste punten
Handmatig telnet testen is een snelle, low-tech manier om SMTP-connectiviteit en configuratieproblemen te diagnosticeren.
Gebruik het om te verifiëren of een SMTP-server bereikbaar, goed geconfigureerd en verbindingen accepterend is.
De test kan geblokkeerde poorten, relaybeperkingen, DNS-fouten of TLS-compatibiliteitsproblemen onthullen.
Essentiële SMTP-opdrachten omvatten EHLO/HELO, MAIL FROM, RCPT TO, DATA, en QUIT.
Poort 25 is standaard voor relay, terwijl 465 en 587 worden gebruikt voor beveiligde verzending.
Base64-gecodeerde authenticatie (AUTH LOGIN) is vereist wanneer servers inloggegevens eisen.
Tools zoals Swaks of geïntegreerde email-testplatforms kunnen telnet’s diagnostische stappen automatiseren en uitbreiden.
Q&A Hoogtepunten
Waarom Telnet gebruiken in plaats van een speciaal e-mail testhulpmiddel?
Telnet geeft je directe zichtbaarheid in de ruwe SMTP-dialoog. Het is van onschatbare waarde voor het oplossen van problemen op protocolniveau en het bevestigen van serverreacties zonder lagen van derden.
Wat is de snelste manier om te controleren of mijn SMTP-poort is geblokkeerd?
Voer
telnet mail.example.com 25uit. Als je “Verbinding geweigerd” krijgt, blokkeert je ISP of host waarschijnlijk de poort.Moet ik authenticeren bij het testen met telnet?
Alleen als de mailserver authenticatie vereist. Gebruik het
AUTH LOGINcommando en stuur je gebruikersnaam en wachtwoord gecodeerd in Base64.Kan ik een volledige e-mail verzenden via telnet?
Ja. Na
DATA, voeg je headers en body toe, beëindig met een enkele punt(.)op een eigen regel, en typ danQUIT.Is telnet veilig voor SMTP testing?
Nee. Telnet verzendt gegevens in platte tekst. Gebruik het alleen voor testen in veilige, gecontroleerde omgevingen. Voor veilige verbindingen, test over TLS met behulp van tools die STARTTLS ondersteunen.
In de wereld van e-mail zijn er veel facetten van testen, maar een van de meest basale tests die je kunt doen, is simpelweg telnetten naar een gegeven SMTP-server. Deze SMTP-controle is nuttig om te bepalen of de meest basale problemen al dan niet bestaan.
In de wereld van e-mail zijn er veel aspecten aan het testen, maar een van de meest basale tests die je kunt doen, is eenvoudigweg telnetten naar een gegeven SMTP-server. Deze SMTP-controle is nuttig bij het bepalen of de meest basale problemen wel of niet bestaan.
Is de server online?
Wordt de communicatie geblokkeerd door een firewall?
Staat de mailserver relayen van een bepaald domein/emailadres toe?
Welke SMTP-commando's ondersteunt de mailserver?
Reageert de server met de correcte hostnaam?
Werkt de verbinding zonder derde partijsoftware of API's?
Al deze vragen en meer kunnen worden beantwoord met een simpele telnettest.
Voordat we beginnen, zorg ervoor dat je ons begeleidende stuk bij dit bericht opent: Waar worden bounceberichten naartoe gestuurd? in een nieuw tabblad zodat je het kunt lezen nadat je klaar bent met deze blog.
Als een opmerking, de commando's die in de volgende voorbeelden worden gebruikt (evenals aanvullende commando's) worden behandeld in sectie 4.1 van RFC 2821.
In de wereld van e-mail zijn er veel aspecten aan het testen, maar een van de meest basale tests die je kunt doen, is eenvoudigweg telnetten naar een gegeven SMTP-server. Deze SMTP-controle is nuttig bij het bepalen of de meest basale problemen wel of niet bestaan.
Is de server online?
Wordt de communicatie geblokkeerd door een firewall?
Staat de mailserver relayen van een bepaald domein/emailadres toe?
Welke SMTP-commando's ondersteunt de mailserver?
Reageert de server met de correcte hostnaam?
Werkt de verbinding zonder derde partijsoftware of API's?
Al deze vragen en meer kunnen worden beantwoord met een simpele telnettest.
Voordat we beginnen, zorg ervoor dat je ons begeleidende stuk bij dit bericht opent: Waar worden bounceberichten naartoe gestuurd? in een nieuw tabblad zodat je het kunt lezen nadat je klaar bent met deze blog.
Als een opmerking, de commando's die in de volgende voorbeelden worden gebruikt (evenals aanvullende commando's) worden behandeld in sectie 4.1 van RFC 2821.
In de wereld van e-mail zijn er veel aspecten aan het testen, maar een van de meest basale tests die je kunt doen, is eenvoudigweg telnetten naar een gegeven SMTP-server. Deze SMTP-controle is nuttig bij het bepalen of de meest basale problemen wel of niet bestaan.
Is de server online?
Wordt de communicatie geblokkeerd door een firewall?
Staat de mailserver relayen van een bepaald domein/emailadres toe?
Welke SMTP-commando's ondersteunt de mailserver?
Reageert de server met de correcte hostnaam?
Werkt de verbinding zonder derde partijsoftware of API's?
Al deze vragen en meer kunnen worden beantwoord met een simpele telnettest.
Voordat we beginnen, zorg ervoor dat je ons begeleidende stuk bij dit bericht opent: Waar worden bounceberichten naartoe gestuurd? in een nieuw tabblad zodat je het kunt lezen nadat je klaar bent met deze blog.
Als een opmerking, de commando's die in de volgende voorbeelden worden gebruikt (evenals aanvullende commando's) worden behandeld in sectie 4.1 van RFC 2821.
Hoe verstuur ik een e-mail met Telnet?
Emails verzenden via telnet kan helpen bij het identificeren van leveringsproblemen binnen uw huidige configuratie.
Voordat u een e-mail met telnet verzendt, bevestigt u dat telnet zowel geïnstalleerd als ingeschakeld is op uw computer. De meeste computers worden geleverd met een vooraf geïnstalleerde telnet-client. Voor die Windows-versies die dat niet doen, kan er een geïnstalleerd worden door het gedeelte 'Programma's en Onderdelen' van het configuratiescherm te openen en 'Windows-onderdelen in- of uitschakelen' te selecteren. Selecteer in dit venster 'telnet client' en klik vervolgens op OK.
Zodra een telnet-client is geverifieerd om te zijn geïnstalleerd op de server, opent u het terminalvenster waar u uw promptcommando's zult invoeren. Op Windows gebruikt u de Windows + R, toetst u 'cmd' in en drukt u op enter. Voor Mac-gebruikers vindt u het terminalpictogram door Finder te openen en naar 'Hulpprogramma's' te zoeken op de Applicaties-pagina, of door 'terminal' in de zoekfunctie van Launchpad in te voeren.
Vervolgens moeten we een mailserver vinden om op in te loggen. Hiervoor hebben we het DNS MX-record van een bepaald domein nodig. Dit kan worden gevonden met het volgende commando (voor deze voorbeelden wordt port25.com gebruikt, maar elk domein kan worden vervangen):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
SMTP gebruikt een van drie poorten — 25, 465, of 587, welke vaak gebruikt wordt door Microsoft Outlook. Voor geavanceerde mailserverconfiguratie en optimalisatie, zie onze gids over PowerMTA configuration tips. Als uw SMTP-relay een andere poort dan 25 gebruikt zoals in het voorbeeld wordt getoond, gebruikt u de poort die wordt aangegeven door de reactie van de mailuitwisselserver's op de nslookup. U kunt ook verifiëren welke poort uw SMTP gebruikt door uw beheerder te vragen of door in te loggen op de mailuitwisselserver en de protocollen te bekijken.
Vervolgens hebben we het DNS PTR nodig voor het IP dat we gaan gebruiken. Eerst moeten we weten welk IP-adres het internet ons als zodanig ziet. Om dat te vinden kunnen we een website gebruiken zoals:
Voer met het IP-adres het volgende commando uit, waarbij A.B.C.D het IP-adres is.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com is slechts een voorbeeld, en uw resultaten zullen anders zijn.
Nu we het MX-record voor port25.com en de PTR voor het IP dat we gebruiken hebben, is het tijd om in te loggen op de SMTP-server. Gebruik hiervoor het volgende commando:
telnet mail.port25.com 25
Iets soortgelijks aan het volgende zou nu moeten worden weergegeven:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Als u op dit punt een foutmelding krijgt zoals "kan niet verbinden", is ofwel het poortnummer correct of ondervindt de mailserver problemen.
Het eerste commando dat we naar de mailserver moeten versturen voor onze SMTP-emailtester is de EHLO of HELO. Dit is een basisgroet die de communicatie tussen de telnet-client en de SMTP-server start. Ook wordt het DNS PTR voor het IP-adres waarvan we verbinding maken zoals eerder bepaald, doorgegeven.
EHLO server.example.com
Iets soortgelijks aan het volgende zou moeten worden geretourneerd:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Dit toont de SMTP-commando's die de SMTP-server accepteert. Niet alle SMTP-servers ondersteunen dezelfde sets van commando's. Yahoo toont bijvoorbeeld slechts het volgende:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
En AOL toont er slechts één met:
250 DSN
Het volgende commando dat we moeten geven is het MAIL FROM commando. Dit bepaalt naar welk adres bounce-mails worden verzonden. Dit is niet hetzelfde als de van-header, dat is het e-mailadres dat wordt weergegeven in een e-mailclient.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Zorg ervoor dat u de domeinnaam gebruikt die overeenkomt met het domein van uw mailserver. Als het domein van uw e-mail bijvoorbeeld anycompany.com is, wilt u you@anycompany.com gebruiken in plaats van een extern e-mailadres zoals you@free-mail-provider.com. Verschillen in domeinnamen kunnen ervoor zorgen dat er een foutmelding verschijnt.
Nu het MAIL FROM commando is verzonden, kunnen we het RCPT TO commando verzenden. Dit commando geeft aan de SMTP-mailserver aan aan wie het bericht moet worden verzonden. Dit kan hetzelfde zijn of verschillen van de to-header, dat is het e-mailadres dat wordt weergegeven in de e-mailclient.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Controleer het adres van uw ontvanger dubbel voordat u het RCPT TO-commando verzendt. Een foutmelding die hier wordt weergegeven, kan wijzen op een verkeerd gespelde of geblokkeerde e-mailontvanger.
Het laatste commando dat moet worden uitgevoerd voordat de inhoud van het bericht kan worden gestart, is het DATA commando. Dit commando informeert de SMTP-mailserver dat alles wat vanaf dat moment wordt verzonden de inhoud van het bericht is (inclusief de headers).
DATA 354 verstuur bericht
Het is belangrijk op te merken dat als een mailserver PIPELINING ondersteunt, zoals mail.port25.com doet, de SMTP-mailserver kan wachten totdat het DATA-commando wordt gegeven voordat hij reageert op andere commando's na de EHLO/HELO. In dit geval voert u de MAIL FROM, RCPT TO en DATA commando's in voordat u op een reactie wacht.
Nu het DATA commando is verzonden, kunnen we beginnen met het verzenden van de inhoud van het bericht. Dit begint met de verschillende headers. Een bericht moet minimaal een aan, van, onderwerp en datum header bevatten. De hier ingevoerde headers worden aan de gebruiker getoond in hun e-mailclient.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Met de ingestelde headers voegen we nu één lege regel toe met een carriagereturn/regelvoer (druk gewoon twee keer op enter) en dan beginnen we met de eigenlijke inhoud van het bericht.
Hallo Wereld, Dit is een testbericht verzonden vanuit een handmatige telnet-sessie. Vriendelijke groeten, SMTP-beheerder
Met het voltooide bericht moeten we de SMTP-server vertellen dat we klaar zijn met het bericht en dat de SMTP-mailserver het moet accepteren. Dit gebeurt met een punt op een regel op zichzelf. Als tijdens het schrijven van een bericht een punt op een lijn op zichzelf nodig is, moet u 2 punten plaatsen, waarvan de eerste de tweede ontsnapt.
. 250 2.6.0 bericht ontvangen
Als u een foutmelding ontvangt in plaats van de "ontvangen" notificatie, log de relevante details en contacteer uw e-mailprovider voor meer hulp. Verbindingsproblemen kunnen ook gerelateerd zijn aan beveiligingsprotocollen - zorg ervoor dat u TLS 1.2 of hoger gebruikt voor veilige verbindingen.
Tot slot wordt het QUIT commando verzonden om de verbinding te sluiten:
QUIT 221 2.0.0 mail.port25.com zegt vaarwel
Daarmee heeft de mailserver het bericht nu geaccepteerd voor levering, uw telnet e-mail verzendtest is voltooid, en het zou nu in de inbox van het RCPT TO-adres moeten staan!!!
Hier zijn alle commando's zonder onderbreking:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 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 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Emails verzenden met telnet stelt u in staat om verbindingsmogelijkheden snel en tegen lagere kosten dan robuuste diagnostische apparatuur of software te testen. Voor meer geavanceerde SMTP-testtools, overweeg Swaks met SparkPost te gebruiken voor uitgebreide e-mailtesten.
Emails verzenden via telnet kan helpen bij het identificeren van leveringsproblemen binnen uw huidige configuratie.
Voordat u een e-mail met telnet verzendt, bevestigt u dat telnet zowel geïnstalleerd als ingeschakeld is op uw computer. De meeste computers worden geleverd met een vooraf geïnstalleerde telnet-client. Voor die Windows-versies die dat niet doen, kan er een geïnstalleerd worden door het gedeelte 'Programma's en Onderdelen' van het configuratiescherm te openen en 'Windows-onderdelen in- of uitschakelen' te selecteren. Selecteer in dit venster 'telnet client' en klik vervolgens op OK.
Zodra een telnet-client is geverifieerd om te zijn geïnstalleerd op de server, opent u het terminalvenster waar u uw promptcommando's zult invoeren. Op Windows gebruikt u de Windows + R, toetst u 'cmd' in en drukt u op enter. Voor Mac-gebruikers vindt u het terminalpictogram door Finder te openen en naar 'Hulpprogramma's' te zoeken op de Applicaties-pagina, of door 'terminal' in de zoekfunctie van Launchpad in te voeren.
Vervolgens moeten we een mailserver vinden om op in te loggen. Hiervoor hebben we het DNS MX-record van een bepaald domein nodig. Dit kan worden gevonden met het volgende commando (voor deze voorbeelden wordt port25.com gebruikt, maar elk domein kan worden vervangen):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
SMTP gebruikt een van drie poorten — 25, 465, of 587, welke vaak gebruikt wordt door Microsoft Outlook. Voor geavanceerde mailserverconfiguratie en optimalisatie, zie onze gids over PowerMTA configuration tips. Als uw SMTP-relay een andere poort dan 25 gebruikt zoals in het voorbeeld wordt getoond, gebruikt u de poort die wordt aangegeven door de reactie van de mailuitwisselserver's op de nslookup. U kunt ook verifiëren welke poort uw SMTP gebruikt door uw beheerder te vragen of door in te loggen op de mailuitwisselserver en de protocollen te bekijken.
Vervolgens hebben we het DNS PTR nodig voor het IP dat we gaan gebruiken. Eerst moeten we weten welk IP-adres het internet ons als zodanig ziet. Om dat te vinden kunnen we een website gebruiken zoals:
Voer met het IP-adres het volgende commando uit, waarbij A.B.C.D het IP-adres is.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com is slechts een voorbeeld, en uw resultaten zullen anders zijn.
Nu we het MX-record voor port25.com en de PTR voor het IP dat we gebruiken hebben, is het tijd om in te loggen op de SMTP-server. Gebruik hiervoor het volgende commando:
telnet mail.port25.com 25
Iets soortgelijks aan het volgende zou nu moeten worden weergegeven:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Als u op dit punt een foutmelding krijgt zoals "kan niet verbinden", is ofwel het poortnummer correct of ondervindt de mailserver problemen.
Het eerste commando dat we naar de mailserver moeten versturen voor onze SMTP-emailtester is de EHLO of HELO. Dit is een basisgroet die de communicatie tussen de telnet-client en de SMTP-server start. Ook wordt het DNS PTR voor het IP-adres waarvan we verbinding maken zoals eerder bepaald, doorgegeven.
EHLO server.example.com
Iets soortgelijks aan het volgende zou moeten worden geretourneerd:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Dit toont de SMTP-commando's die de SMTP-server accepteert. Niet alle SMTP-servers ondersteunen dezelfde sets van commando's. Yahoo toont bijvoorbeeld slechts het volgende:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
En AOL toont er slechts één met:
250 DSN
Het volgende commando dat we moeten geven is het MAIL FROM commando. Dit bepaalt naar welk adres bounce-mails worden verzonden. Dit is niet hetzelfde als de van-header, dat is het e-mailadres dat wordt weergegeven in een e-mailclient.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Zorg ervoor dat u de domeinnaam gebruikt die overeenkomt met het domein van uw mailserver. Als het domein van uw e-mail bijvoorbeeld anycompany.com is, wilt u you@anycompany.com gebruiken in plaats van een extern e-mailadres zoals you@free-mail-provider.com. Verschillen in domeinnamen kunnen ervoor zorgen dat er een foutmelding verschijnt.
Nu het MAIL FROM commando is verzonden, kunnen we het RCPT TO commando verzenden. Dit commando geeft aan de SMTP-mailserver aan aan wie het bericht moet worden verzonden. Dit kan hetzelfde zijn of verschillen van de to-header, dat is het e-mailadres dat wordt weergegeven in de e-mailclient.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Controleer het adres van uw ontvanger dubbel voordat u het RCPT TO-commando verzendt. Een foutmelding die hier wordt weergegeven, kan wijzen op een verkeerd gespelde of geblokkeerde e-mailontvanger.
Het laatste commando dat moet worden uitgevoerd voordat de inhoud van het bericht kan worden gestart, is het DATA commando. Dit commando informeert de SMTP-mailserver dat alles wat vanaf dat moment wordt verzonden de inhoud van het bericht is (inclusief de headers).
DATA 354 verstuur bericht
Het is belangrijk op te merken dat als een mailserver PIPELINING ondersteunt, zoals mail.port25.com doet, de SMTP-mailserver kan wachten totdat het DATA-commando wordt gegeven voordat hij reageert op andere commando's na de EHLO/HELO. In dit geval voert u de MAIL FROM, RCPT TO en DATA commando's in voordat u op een reactie wacht.
Nu het DATA commando is verzonden, kunnen we beginnen met het verzenden van de inhoud van het bericht. Dit begint met de verschillende headers. Een bericht moet minimaal een aan, van, onderwerp en datum header bevatten. De hier ingevoerde headers worden aan de gebruiker getoond in hun e-mailclient.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Met de ingestelde headers voegen we nu één lege regel toe met een carriagereturn/regelvoer (druk gewoon twee keer op enter) en dan beginnen we met de eigenlijke inhoud van het bericht.
Hallo Wereld, Dit is een testbericht verzonden vanuit een handmatige telnet-sessie. Vriendelijke groeten, SMTP-beheerder
Met het voltooide bericht moeten we de SMTP-server vertellen dat we klaar zijn met het bericht en dat de SMTP-mailserver het moet accepteren. Dit gebeurt met een punt op een regel op zichzelf. Als tijdens het schrijven van een bericht een punt op een lijn op zichzelf nodig is, moet u 2 punten plaatsen, waarvan de eerste de tweede ontsnapt.
. 250 2.6.0 bericht ontvangen
Als u een foutmelding ontvangt in plaats van de "ontvangen" notificatie, log de relevante details en contacteer uw e-mailprovider voor meer hulp. Verbindingsproblemen kunnen ook gerelateerd zijn aan beveiligingsprotocollen - zorg ervoor dat u TLS 1.2 of hoger gebruikt voor veilige verbindingen.
Tot slot wordt het QUIT commando verzonden om de verbinding te sluiten:
QUIT 221 2.0.0 mail.port25.com zegt vaarwel
Daarmee heeft de mailserver het bericht nu geaccepteerd voor levering, uw telnet e-mail verzendtest is voltooid, en het zou nu in de inbox van het RCPT TO-adres moeten staan!!!
Hier zijn alle commando's zonder onderbreking:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 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 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Emails verzenden met telnet stelt u in staat om verbindingsmogelijkheden snel en tegen lagere kosten dan robuuste diagnostische apparatuur of software te testen. Voor meer geavanceerde SMTP-testtools, overweeg Swaks met SparkPost te gebruiken voor uitgebreide e-mailtesten.
Emails verzenden via telnet kan helpen bij het identificeren van leveringsproblemen binnen uw huidige configuratie.
Voordat u een e-mail met telnet verzendt, bevestigt u dat telnet zowel geïnstalleerd als ingeschakeld is op uw computer. De meeste computers worden geleverd met een vooraf geïnstalleerde telnet-client. Voor die Windows-versies die dat niet doen, kan er een geïnstalleerd worden door het gedeelte 'Programma's en Onderdelen' van het configuratiescherm te openen en 'Windows-onderdelen in- of uitschakelen' te selecteren. Selecteer in dit venster 'telnet client' en klik vervolgens op OK.
Zodra een telnet-client is geverifieerd om te zijn geïnstalleerd op de server, opent u het terminalvenster waar u uw promptcommando's zult invoeren. Op Windows gebruikt u de Windows + R, toetst u 'cmd' in en drukt u op enter. Voor Mac-gebruikers vindt u het terminalpictogram door Finder te openen en naar 'Hulpprogramma's' te zoeken op de Applicaties-pagina, of door 'terminal' in de zoekfunctie van Launchpad in te voeren.
Vervolgens moeten we een mailserver vinden om op in te loggen. Hiervoor hebben we het DNS MX-record van een bepaald domein nodig. Dit kan worden gevonden met het volgende commando (voor deze voorbeelden wordt port25.com gebruikt, maar elk domein kan worden vervangen):
Windows:
nslookup -type=mx port25.com Non-authoritative answer: port25.com MX preference = 100, mail exchanger = mail.port25.com
Linux:
nslookup -type=mx port25.com Non-authoritative answer: port25.com mail exchanger = 100 mail.port25.com
SMTP gebruikt een van drie poorten — 25, 465, of 587, welke vaak gebruikt wordt door Microsoft Outlook. Voor geavanceerde mailserverconfiguratie en optimalisatie, zie onze gids over PowerMTA configuration tips. Als uw SMTP-relay een andere poort dan 25 gebruikt zoals in het voorbeeld wordt getoond, gebruikt u de poort die wordt aangegeven door de reactie van de mailuitwisselserver's op de nslookup. U kunt ook verifiëren welke poort uw SMTP gebruikt door uw beheerder te vragen of door in te loggen op de mailuitwisselserver en de protocollen te bekijken.
Vervolgens hebben we het DNS PTR nodig voor het IP dat we gaan gebruiken. Eerst moeten we weten welk IP-adres het internet ons als zodanig ziet. Om dat te vinden kunnen we een website gebruiken zoals:
Voer met het IP-adres het volgende commando uit, waarbij A.B.C.D het IP-adres is.
Windows:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
Linux:
nslookup -type=ptr A.B.C.D Non-authoritative answer: D.C.B.A.in-addr.arpa name = server.example.com
server.example.com is slechts een voorbeeld, en uw resultaten zullen anders zijn.
Nu we het MX-record voor port25.com en de PTR voor het IP dat we gebruiken hebben, is het tijd om in te loggen op de SMTP-server. Gebruik hiervoor het volgende commando:
telnet mail.port25.com 25
Iets soortgelijks aan het volgende zou nu moeten worden weergegeven:
Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready
Als u op dit punt een foutmelding krijgt zoals "kan niet verbinden", is ofwel het poortnummer correct of ondervindt de mailserver problemen.
Het eerste commando dat we naar de mailserver moeten versturen voor onze SMTP-emailtester is de EHLO of HELO. Dit is een basisgroet die de communicatie tussen de telnet-client en de SMTP-server start. Ook wordt het DNS PTR voor het IP-adres waarvan we verbinding maken zoals eerder bepaald, doorgegeven.
EHLO server.example.com
Iets soortgelijks aan het volgende zou moeten worden geretourneerd:
250-mail.port25.com says hello 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN
Dit toont de SMTP-commando's die de SMTP-server accepteert. Niet alle SMTP-servers ondersteunen dezelfde sets van commando's. Yahoo toont bijvoorbeeld slechts het volgende:
250-8BITMIME 250-SIZE 41943040 250 PIPELINING
En AOL toont er slechts één met:
250 DSN
Het volgende commando dat we moeten geven is het MAIL FROM commando. Dit bepaalt naar welk adres bounce-mails worden verzonden. Dit is niet hetzelfde als de van-header, dat is het e-mailadres dat wordt weergegeven in een e-mailclient.
MAIL FROM: <support@port25.com> 250 2.1.0 MAIL ok
Zorg ervoor dat u de domeinnaam gebruikt die overeenkomt met het domein van uw mailserver. Als het domein van uw e-mail bijvoorbeeld anycompany.com is, wilt u you@anycompany.com gebruiken in plaats van een extern e-mailadres zoals you@free-mail-provider.com. Verschillen in domeinnamen kunnen ervoor zorgen dat er een foutmelding verschijnt.
Nu het MAIL FROM commando is verzonden, kunnen we het RCPT TO commando verzenden. Dit commando geeft aan de SMTP-mailserver aan aan wie het bericht moet worden verzonden. Dit kan hetzelfde zijn of verschillen van de to-header, dat is het e-mailadres dat wordt weergegeven in de e-mailclient.
RCPT TO: <support@port25.com> 250 2.1.5 <support@port25.com> ok
Controleer het adres van uw ontvanger dubbel voordat u het RCPT TO-commando verzendt. Een foutmelding die hier wordt weergegeven, kan wijzen op een verkeerd gespelde of geblokkeerde e-mailontvanger.
Het laatste commando dat moet worden uitgevoerd voordat de inhoud van het bericht kan worden gestart, is het DATA commando. Dit commando informeert de SMTP-mailserver dat alles wat vanaf dat moment wordt verzonden de inhoud van het bericht is (inclusief de headers).
DATA 354 verstuur bericht
Het is belangrijk op te merken dat als een mailserver PIPELINING ondersteunt, zoals mail.port25.com doet, de SMTP-mailserver kan wachten totdat het DATA-commando wordt gegeven voordat hij reageert op andere commando's na de EHLO/HELO. In dit geval voert u de MAIL FROM, RCPT TO en DATA commando's in voordat u op een reactie wacht.
Nu het DATA commando is verzonden, kunnen we beginnen met het verzenden van de inhoud van het bericht. Dit begint met de verschillende headers. Een bericht moet minimaal een aan, van, onderwerp en datum header bevatten. De hier ingevoerde headers worden aan de gebruiker getoond in hun e-mailclient.
From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400
Met de ingestelde headers voegen we nu één lege regel toe met een carriagereturn/regelvoer (druk gewoon twee keer op enter) en dan beginnen we met de eigenlijke inhoud van het bericht.
Hallo Wereld, Dit is een testbericht verzonden vanuit een handmatige telnet-sessie. Vriendelijke groeten, SMTP-beheerder
Met het voltooide bericht moeten we de SMTP-server vertellen dat we klaar zijn met het bericht en dat de SMTP-mailserver het moet accepteren. Dit gebeurt met een punt op een regel op zichzelf. Als tijdens het schrijven van een bericht een punt op een lijn op zichzelf nodig is, moet u 2 punten plaatsen, waarvan de eerste de tweede ontsnapt.
. 250 2.6.0 bericht ontvangen
Als u een foutmelding ontvangt in plaats van de "ontvangen" notificatie, log de relevante details en contacteer uw e-mailprovider voor meer hulp. Verbindingsproblemen kunnen ook gerelateerd zijn aan beveiligingsprotocollen - zorg ervoor dat u TLS 1.2 of hoger gebruikt voor veilige verbindingen.
Tot slot wordt het QUIT commando verzonden om de verbinding te sluiten:
QUIT 221 2.0.0 mail.port25.com zegt vaarwel
Daarmee heeft de mailserver het bericht nu geaccepteerd voor levering, uw telnet e-mail verzendtest is voltooid, en het zou nu in de inbox van het RCPT TO-adres moeten staan!!!
Hier zijn alle commando's zonder onderbreking:
telnet mail.port25.com 25 Trying 69.63.149.30... Connected to mail.port25.com (69.63.149.30). Escape character is '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) ESMTP service ready EHLO server.example.com 250-mail.port25.com says hello 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 send message From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: test message sent from manual telnet session Date: Wed, 11 May 2011 16:19:57 -0400 Hello World, This is a test message sent from a manual telnet session. Yours truly, SMTP administrator . 250 2.6.0 message received QUIT 221 2.0.0 mail.port25.com says goodbye
Emails verzenden met telnet stelt u in staat om verbindingsmogelijkheden snel en tegen lagere kosten dan robuuste diagnostische apparatuur of software te testen. Voor meer geavanceerde SMTP-testtools, overweeg Swaks met SparkPost te gebruiken voor uitgebreide e-mailtesten.
Hoe test ik SMTP met behulp van Telnet Authenticatie?
Nu je weet hoe je een SMTP-verbinding kunt controleren met telnet, gaan we de authenticatieprocedures bespreken. SMTP-authenticatie helpt voorkomen dat grote hoeveelheden spam de inboxen van lezers bereiken, hoewel niet alle mailwisselservers dit vereisen. Begrip van authenticatie is ook cruciaal bij het analyseren van e-mailheaders voor problemen met bezorgbaarheid.
Het belangrijkste verschil in moderne authenticatieprotocollen is de aanwezigheid van een base64-codering. Base64 zet binaire gegevens om in het ASCII-tekstformaat dat vereist is door mailservers voor succesvolle gegevensoverdracht. Het is een manier om uw inloggegevens — een combinatie van tekst — in numeriek formaat om te zetten dat de computer kan begrijpen.
Je kunt je base64 genereren met software of gratis online tools. Zodra u de informatie aan de mailserver doorgeeft, vergelijkt deze de gegevens met zijn records om authenticatie te bepalen.
Om SMTP-authenticatie via telnet te testen, voer de volgende stappen uit:
Open de terminal en maak verbinding met de mailserver met behulp van de telnet servernaam en toegang commando — mail.port25.com in het bovenstaande voorbeeld.
Begroet de server met EHLO of HELO, voer AUTH LOGIN in, en wacht op het antwoord van de computer.
Voer de base64-gecodeerde gebruikersnaam in en laat de server antwoorden.
Voer het wachtwoord dat in base64 is gecodeerd in, en u zou een reactie moeten krijgen zoals "authenticatie gelukt."
Ga verder met MAIL FROM, RCPT TO, DATA, en QUIT om uw geauthenticeerde e-mail te verzenden.
Nu je weet hoe je een SMTP-verbinding kunt controleren met telnet, gaan we de authenticatieprocedures bespreken. SMTP-authenticatie helpt voorkomen dat grote hoeveelheden spam de inboxen van lezers bereiken, hoewel niet alle mailwisselservers dit vereisen. Begrip van authenticatie is ook cruciaal bij het analyseren van e-mailheaders voor problemen met bezorgbaarheid.
Het belangrijkste verschil in moderne authenticatieprotocollen is de aanwezigheid van een base64-codering. Base64 zet binaire gegevens om in het ASCII-tekstformaat dat vereist is door mailservers voor succesvolle gegevensoverdracht. Het is een manier om uw inloggegevens — een combinatie van tekst — in numeriek formaat om te zetten dat de computer kan begrijpen.
Je kunt je base64 genereren met software of gratis online tools. Zodra u de informatie aan de mailserver doorgeeft, vergelijkt deze de gegevens met zijn records om authenticatie te bepalen.
Om SMTP-authenticatie via telnet te testen, voer de volgende stappen uit:
Open de terminal en maak verbinding met de mailserver met behulp van de telnet servernaam en toegang commando — mail.port25.com in het bovenstaande voorbeeld.
Begroet de server met EHLO of HELO, voer AUTH LOGIN in, en wacht op het antwoord van de computer.
Voer de base64-gecodeerde gebruikersnaam in en laat de server antwoorden.
Voer het wachtwoord dat in base64 is gecodeerd in, en u zou een reactie moeten krijgen zoals "authenticatie gelukt."
Ga verder met MAIL FROM, RCPT TO, DATA, en QUIT om uw geauthenticeerde e-mail te verzenden.
Nu je weet hoe je een SMTP-verbinding kunt controleren met telnet, gaan we de authenticatieprocedures bespreken. SMTP-authenticatie helpt voorkomen dat grote hoeveelheden spam de inboxen van lezers bereiken, hoewel niet alle mailwisselservers dit vereisen. Begrip van authenticatie is ook cruciaal bij het analyseren van e-mailheaders voor problemen met bezorgbaarheid.
Het belangrijkste verschil in moderne authenticatieprotocollen is de aanwezigheid van een base64-codering. Base64 zet binaire gegevens om in het ASCII-tekstformaat dat vereist is door mailservers voor succesvolle gegevensoverdracht. Het is een manier om uw inloggegevens — een combinatie van tekst — in numeriek formaat om te zetten dat de computer kan begrijpen.
Je kunt je base64 genereren met software of gratis online tools. Zodra u de informatie aan de mailserver doorgeeft, vergelijkt deze de gegevens met zijn records om authenticatie te bepalen.
Om SMTP-authenticatie via telnet te testen, voer de volgende stappen uit:
Open de terminal en maak verbinding met de mailserver met behulp van de telnet servernaam en toegang commando — mail.port25.com in het bovenstaande voorbeeld.
Begroet de server met EHLO of HELO, voer AUTH LOGIN in, en wacht op het antwoord van de computer.
Voer de base64-gecodeerde gebruikersnaam in en laat de server antwoorden.
Voer het wachtwoord dat in base64 is gecodeerd in, en u zou een reactie moeten krijgen zoals "authenticatie gelukt."
Ga verder met MAIL FROM, RCPT TO, DATA, en QUIT om uw geauthenticeerde e-mail te verzenden.



