tecnico · risposta con fonti

Come verificare se la porta 587 è aperta

Puoi verificare se la porta 587 è aperta usando uno strumento da riga di comando come telnet, netcat o PowerShell per tentare una connessione al tuo server SMTP. Se la connessione riesce, il server risponde di solito con un codice di saluto 220, a indicare che la porta è aperta e accetta connessioni per l'invio della posta.

Test di connettività con Telnet

Telnet è uno strumento standard per testare la connettività TCP. Esegui il comando telnet smtp.example.com 587 nel terminale. Se lo schermo diventa vuoto o mostra un saluto del server, la porta è aperta. Se ricevi un errore connection refused o di timeout, la porta è chiusa o bloccata da un firewall. Tieni presente che su Windows potrebbe essere necessario abilitare telnet nelle Funzionalità di Windows prima di usarlo.

Usare Netcat (nc) su Linux e macOS

Netcat è un'utility potente per il debug di rete. Usa il comando nc -zv smtp.example.com 587. Il flag z indica a netcat di cercare un demone in ascolto senza inviare dati, mentre il flag v abilita l'output dettagliato. In caso di successo, l'output indica esplicitamente che la connessione alla porta è riuscita; in caso di errore, segnala un timeout o un rifiuto della connessione.

Usare PowerShell su Windows

Se usi Windows senza telnet, PowerShell mette a disposizione il cmdlet Test-NetConnection. Esegui Test-NetConnection -ComputerName smtp.example.com -Port 587. L'output include un valore booleano TcpTestSucceeded. Se è True, la porta 587 è aperta. Questo metodo è preferibile negli ambienti Windows moderni perché fornisce informazioni diagnostiche dettagliate sul percorso di rete.

Risolvere i problemi delle porte bloccate

Se la porta 587 è chiusa, controlla le impostazioni del firewall locale e le restrizioni del tuo ISP. Molti ISP residenziali bloccano le porte di posta in uscita per prevenire lo spam. Puoi verificare la tua configurazione esterna con SendHQ o i suoi strumenti gratuiti (https://sendhq.cc/tools), per assicurarti che il tuo server di posta sia raggiungibile dalla rete Internet pubblica. Verifica che i security group del tuo provider cloud consentano il traffico in uscita su TCP 587.

La porta 587 e STARTTLS

La porta 587 è la porta standard per la submission della posta. A differenza della porta 465, che usa TLS implicito, la porta 587 parte con una connessione in chiaro e passa a una connessione sicura con il comando STARTTLS. Per questo un semplice controllo TCP conferma che la porta è aperta, ma serve un handshake SMTP completo per verificare che la cifratura funzioni correttamente.

Le domande dei team

Qual è la differenza tra la porta 25 e la 587?

La porta 25 si usa principalmente per il relay da server a server, mentre la porta 587 è quella designata per la submission della posta da client a server.

Perché la connessione sulla porta 587 va in timeout?

Un timeout di solito indica che un firewall scarta i pacchetti. Controlla il firewall del sistema operativo locale, il router di rete o le regole dei security group del cloud.

Una connessione telnet riuscita significa che l'email verrà inviata?

No, conferma solo che la porta TCP è aperta. Per inviare davvero un'email servono comunque un'autenticazione valida e comandi SMTP corretti.

La porta 587 è sicura?

La porta 587 è sicura se usata con STARTTLS, che cifra la comunicazione dopo che la connessione iniziale è stata stabilita.

Fonti primarie