Reach

Grow

Manage

Automate

Reach

Grow

Manage

Automate

Come controllare una connessione SMTP con una sessione Telnet manuale

Email

1 min read

Come controllare una connessione SMTP con una sessione Telnet manuale

Email

1 min read

Come controllare una connessione SMTP con una sessione Telnet manuale

Nel mondo delle email, ci sono molte sfaccettature nel testare, ma uno dei test più basilari che puoi fare è semplicemente telnet in un determinato server SMTP. Questo controllo SMTP è utile per determinare se esistono o meno i problemi più basilari.

Nel mondo delle email, ci sono molte sfaccettature da testare, ma uno dei test più basilari che puoi fare è semplicemente telnet su un dato server SMTP.  Questo controllo SMTP è utile per determinare se esistono o meno i problemi più basilari.

  • Il server è attivo?

  • C'è un firewall che blocca la comunicazione?

  • Il server di posta consente l'inoltro di un particolare dominio/indirizzo email?

  • Quali comandi SMTP supporta il server di posta?

  • Il server risponde con il nome host corretto?

  • La connessione funziona al di fuori di qualsiasi software di terze parti o API?

Tutte queste domande e altre ancora possono essere risolte con un semplice test telnet.

Prima di iniziare, assicurati di aprire il nostro articolo complementare a questo post: A Dove Vengono Inviati i Messaggi di Rimbalzo? in una nuova scheda così puoi leggerlo dopo che hai finito con questo blog.

Come nota, i comandi utilizzati nei seguenti esempi (così come comandi aggiuntivi) sono coperti nella sezione 4.1 di RFC 2821.

Come invio un'email usando Telnet?

Inviare email tramite telnet può aiutarti a identificare i problemi di consegna nella tua attuale configurazione.

Prima di inviare un'email utilizzando telnet, conferma che telnet sia installato e abilitato sul tuo computer. La maggior parte dei computer viene fornita con un client telnet preinstallato. Per quelle versioni di Windows che non lo hanno, uno può essere installato aprendo la sezione "Programmi e Funzionalità" del pannello di controllo e selezionando "Attiva o disattiva funzionalità di Windows". Con questa finestra aperta, seleziona "client telnet" e poi fai clic su OK.

Una volta verificato che un client telnet sia installato sul server, apri la finestra del terminale dove inserirai i tuoi comandi prompt. Su Windows, usa i tasti Windows + R, digita "cmd" e premi invio. Per gli utenti Mac, troverai l'icona del terminale aprendo Finder e cercando "Utility" nella pagina Applicazioni, o inserendo "terminal" nella funzione di ricerca del Launchpad.

Successivamente, dobbiamo trovare un server di posta su cui accedere. Per questo, avremo bisogno del record DNS MX per un dominio specifico. Questo può essere trovato con il seguente comando (per questi esempi verrà utilizzato port25.com, ma qualsiasi dominio può essere sostituito):

Windows:

nslookup -type=mx port25.com

Risposta non autorevole:

port25.com MX preference = 100, mail exchanger = mail.port25.com

Linux:

nslookup -type=mx port25.com

Risposta non autorevole:

port25.com mail exchanger = 100 mail.port25.com.

SMTP utilizza una di tre porte — 25, 465, o 587, che Microsoft Outlook usa comunemente. Se il tuo relay SMTP utilizza una porta diversa da quella 25 come mostrato nell'esempio, userai la porta specificata dalla risposta del server di scambio di posta al nslookup. Puoi anche verificare la porta su cui il tuo SMTP fa affidamento chiedendo al tuo amministratore o accedendo al server di scambio di posta e esaminando i protocolli.

Successivamente abbiamo bisogno del DNS PTR per l'IP che useremo. Prima dobbiamo sapere quale indirizzo IP ci vede internet come nostro. Per scoprirlo possiamo usare un sito come:

http://whatismyipaddress.com/

Con l'indirizzo IP esegui il seguente comando, dove A.B.C.D è l'indirizzo IP.

Windows:

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

Risposta non autorevole:

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

Linux:

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

Risposta non autorevole:

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

server.example.com è solo un esempio, e i tuoi risultati saranno diversi.

Quindi, ora che abbiamo il record MX per port25.com e il PTR per l'IP che useremo, è il momento di accedere al server SMTP. Per farlo, usa il seguente comando:

telnet mail.port25.com 25

Dovrebbe ora essere visualizzato qualcosa di simile a quanto segue:

Trying 69.63.149.30... Collegato a mail.port25.com (69.63.149.30). Il carattere di escape è '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) servizio ESMTP pronto

Se ricevi un messaggio di errore come "impossibile connettere" a questo punto, o il numero di porta è corretto o il server di posta ha problemi.

Il primo comando che dobbiamo emettere al server di posta per il nostro tester email SMTP è EHLO o HELO. Questo è un saluto di base che avvia la comunicazione tra il client telnet e il server SMTP. Inoltre, viene passato il DNS PTR per l'indirizzo IP da cui stiamo connettendoci come determinato in precedenza.

EHLO server.example.com

Dovrebbe essere restituito qualcosa di simile a quanto segue:

250-mail.port25.com dice ciao 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-CHUNKING 250-8BITMIME 250-XACK 250-XMRG 250-SIZE 54525952 250-VERP 250 DSN

Questo mostra i comandi SMTP che il server SMTP accetta. Non tutti i server SMTP supportano gli stessi set di comandi. Ad esempio, yahoo mostra solo quanto segue:

250-8BITMIME 250-SIZE 41943040 250 PIPELINING

E aol mostra solo uno con:

250 DSN

Il prossimo comando che dobbiamo emettere è il comando MAIL FROM. Questo determina l'indirizzo a cui vengono inviati i rimbalzi. Questo non è lo stesso dell'intestazione from, che è l'indirizzo email mostrato in un client email.

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

Assicurati di utilizzare il nome di dominio corrispondente al dominio del tuo server di posta. Ad esempio, se il dominio della tua email è anycompany.com, vorrai usare te@anycompany.com invece di un'email esterna come te@free-mail-provider.com. Variazioni nei nomi di dominio possono causare la comparsa di un messaggio di errore.

Ora che il comando MAIL FROM è stato inviato possiamo inviare il comando RCPT TO. Questo comando dice al server di posta SMTP a chi dovrebbe essere inviato il messaggio. Questo può essere uguale o diverso dall'intestazione to, che è l'indirizzo email mostrato nel client email.

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

Controlla accuratamente l'indirizzo del destinatario prima di inviare il comando RCPT TO — un messaggio di errore visualizzato qui può indicare un destinatario email scritto male o bloccato.

L'ultimo comando da eseguire prima di iniziare il corpo del messaggio è il comando DATA. Questo comando informa il server di posta SMTP che tutto ciò che sta per essere inviato è il corpo del messaggio (che contiene anche le intestazioni).

DATA 354 invia messaggio

È importante notare che se un server di posta supporta PIPELINING, come fa mail.port25.com, il server di posta SMTP può aspettare fino a quando il comando DATA non è stato emesso prima di rispondere ad altri comandi dopo EHLO/HELO. In questo caso, inserisci i comandi MAIL FROM, RCPT TO e DATA prima di attendere una risposta.

Ora che il comando DATA è stato inviato possiamo iniziare a inviare i contenuti del messaggio. Questo inizia con le varie intestazioni. Al minimo, un messaggio dovrebbe contenere un'intestazione to, from, subject, e date. Le intestazioni inserite qui verranno mostrate all'utente nel loro client email.

From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: messaggio di prova inviato da sessione telnet manuale Date: mer, 11 maggio 2011 16:19:57 -0400

Impostate le intestazioni, ora aggiungiamo una riga vuota con un ritorno a capo/avanzamento riga (basta premere invio due volte) e quindi iniziamo il vero corpo del messaggio.

Hello World, questo è un messaggio di prova inviato da una sessione telnet manuale. Cordialmente, amministratore SMTP

Con il messaggio completo, dobbiamo dire al server SMTP che abbiamo finito con il messaggio e vogliamo che il server di posta SMTP lo accetti. Questo viene fatto con un punto su una linea da solo. Se durante la scrittura di un messaggio è necessario un punto su una linea da solo, devi mettere 2 punti, il primo per sfuggire al secondo.

. 250 2.6.0 messaggio ricevuto

Se ricevi un messaggio di errore invece della notifica "ricevuto", registra i dettagli pertinenti e contatta il tuo provider email per ulteriore assistenza.

Infine, viene inviato il comando QUIT per chiudere la connessione:

QUIT 221 2.0.0 mail.port25.com dice addio

Con ciò, il server di posta ha ora accettato il messaggio per la consegna, il tuo test di invio email telnet è completo, e dovrebbe essere nella inbox dell'indirizzo RCPT TO!!!

Ecco tutti i comandi senza interruzione:

telnet mail.port25.com 25 Trying 69.63.149.30... Collegato a mail.port25.com (69.63.149.30). Il carattere di escape è '^]'. 220 mail.port25.com (PowerMTA(TM) v4.0) servizio ESMTP pronto EHLO server.example.com 250-mail.port25.com dice ciao 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 invia messaggio From: "John Smith" <jsmith@port25.com> To: "Jane Doe" <jdoe@port25.com> Subject: messaggio di prova inviato da sessione telnet manuale Date: mer, 11 maggio 2011 16:19:57 -0400 Hello World, questo è un messaggio di prova inviato da una sessione telnet manuale. Cordialmente, amministratore SMTP . 250 2.6.0 messaggio ricevuto QUIT 221 2.0.0 mail.port25.com dice addio

Inviare un'email utilizzando telnet ti consente di testare rapidamente le capacità di connessione e a un costo inferiore rispetto ad attrezzature o software diagnostici robusti.

Come posso testare SMTP utilizzando l'autenticazione Telnet?

Ora che sai come verificare una connessione SMTP con telnet, discuteremo delle procedure di autenticazione. L'autenticazione SMTP aiuta a prevenire che grandi quantità di spam raggiungano le caselle di posta dei lettori, anche se non tutti i server di scambio posta lo richiedono.

La differenza principale nei moderni protocolli di autenticazione è la presenza di una codifica base64. Base64 converte i dati binari nel formato testo ASCII richiesto dai server di posta per una trasmissione dati riuscita. È un modo di rappresentare le tue credenziali di accesso — una certa combinazione di testo — in formato numerico che il computer può comprendere.

Puoi generare il tuo base64 utilizzando software o strumenti gratuiti online. Una volta comunicata l'informazione al server di posta, questo confronta i dati con i suoi record per determinare l'autenticazione.

Per testare l'autenticazione SMTP tramite telnet, esegui i seguenti passaggi:

  • Apri il terminale e collegati con il server di posta utilizzando il nome del server telnet e il comando di accesso — mail.port25.com nell'esempio sopra.

  • Saluta il server con EHLO o HELO, inserisci AUTH LOGIN e attendi la risposta del computer.

  • Inserisci il nome utente codificato in base64 e consenti al server di rispondere.

  • Inserisci la password codificata in base64, e dovresti ricevere una risposta come "autenticazione riuscita".

  • Procedi con MAIL FROM, RCPT TO, DATA e QUIT per inviare la tua email autenticata.

Ora che sai come verificare una connessione SMTP con telnet, discuteremo delle procedure di autenticazione. L'autenticazione SMTP aiuta a prevenire che grandi quantità di spam raggiungano le caselle di posta dei lettori, anche se non tutti i server di scambio posta lo richiedono.

La differenza principale nei moderni protocolli di autenticazione è la presenza di una codifica base64. Base64 converte i dati binari nel formato testo ASCII richiesto dai server di posta per una trasmissione dati riuscita. È un modo di rappresentare le tue credenziali di accesso — una certa combinazione di testo — in formato numerico che il computer può comprendere.

Puoi generare il tuo base64 utilizzando software o strumenti gratuiti online. Una volta comunicata l'informazione al server di posta, questo confronta i dati con i suoi record per determinare l'autenticazione.

Per testare l'autenticazione SMTP tramite telnet, esegui i seguenti passaggi:

  • Apri il terminale e collegati con il server di posta utilizzando il nome del server telnet e il comando di accesso — mail.port25.com nell'esempio sopra.

  • Saluta il server con EHLO o HELO, inserisci AUTH LOGIN e attendi la risposta del computer.

  • Inserisci il nome utente codificato in base64 e consenti al server di rispondere.

  • Inserisci la password codificata in base64, e dovresti ricevere una risposta come "autenticazione riuscita".

  • Procedi con MAIL FROM, RCPT TO, DATA e QUIT per inviare la tua email autenticata.

Ora che sai come verificare una connessione SMTP con telnet, discuteremo delle procedure di autenticazione. L'autenticazione SMTP aiuta a prevenire che grandi quantità di spam raggiungano le caselle di posta dei lettori, anche se non tutti i server di scambio posta lo richiedono.

La differenza principale nei moderni protocolli di autenticazione è la presenza di una codifica base64. Base64 converte i dati binari nel formato testo ASCII richiesto dai server di posta per una trasmissione dati riuscita. È un modo di rappresentare le tue credenziali di accesso — una certa combinazione di testo — in formato numerico che il computer può comprendere.

Puoi generare il tuo base64 utilizzando software o strumenti gratuiti online. Una volta comunicata l'informazione al server di posta, questo confronta i dati con i suoi record per determinare l'autenticazione.

Per testare l'autenticazione SMTP tramite telnet, esegui i seguenti passaggi:

  • Apri il terminale e collegati con il server di posta utilizzando il nome del server telnet e il comando di accesso — mail.port25.com nell'esempio sopra.

  • Saluta il server con EHLO o HELO, inserisci AUTH LOGIN e attendi la risposta del computer.

  • Inserisci il nome utente codificato in base64 e consenti al server di rispondere.

  • Inserisci la password codificata in base64, e dovresti ricevere una risposta come "autenticazione riuscita".

  • Procedi con MAIL FROM, RCPT TO, DATA e QUIT per inviare la tua email autenticata.

Iscriviti alla nostra Newsletter.

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Iscriviti alla nostra Newsletter.

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Iscriviti alla nostra Newsletter.

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

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

Azienda

Impostazioni sulla privacy

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Uber logo
Logo Square
Logo Adobe
Meta logo

Azienda

Impostazioni sulla privacy

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.

Uber logo
Logo Adobe
Meta logo

Reach

Grow

Manage

Automate

Risorse

Azienda

Newsletter

Rimani aggiornato con Bird attraverso aggiornamenti settimanali nella tua inbox.

Inviando, accetti che Bird possa contattarti riguardo ai nostri prodotti e servizi.

Puoi annullare l'iscrizione in qualsiasi momento. Consulta la Informativa sulla Privacy di Bird per i dettagli sul trattamento dei dati.