Configurazione, utilizzo e procedure consigliate del server SMTP
Pubblicato: 2022-04-08Ti sei mai chiesto come funzionano effettivamente le e-mail, quando invii un'e-mail e in pochi secondi sono nella Posta in arrivo del destinatario, la tecnologia alla base di come ciò accade è Simple Mail Transfer Protocol (SMTP). Il modo in cui le e-mail vengono archiviate sul server una volta ricevute utilizzando il server IMAP/POP3 è una storia per un'altra epoca, per ora tratteremo l'SMTP e alla fine dell'articolo speriamo che tu abbia una comprensione completa del protocollo STMP, dei server SMTP , Opzioni comuni e come garantire che le tue e-mail finiscano nello SPAM.
Cos'è l'SMTP?
Simple Mail Transfer Protocol (SMTP) è il protocollo utilizzato per inviare e-mail, definisce uno standard comune in modo che qualsiasi server SMTP possa comunicare con qualsiasi altro server SMTP o server POP3/IMAP su Internet e si capiscano a vicenda. Puoi dire che garantisce che le diverse entità coinvolte nel trasferimento di e-mail parlino una lingua comune.
Che cos'è un server SMTP?
Il protocollo SMTP deve essere reso disponibile da un'applicazione, questa applicazione che risponde alle richieste SMTP per coloro che desiderano inviare e-mail o inoltrare e-mail è chiamata SMTP Serve/SMTP Relay. Puoi dividerlo in due tipi come indicato di seguito, entrambi sono per lo più uguali a parte una piccola differenza:
- Server SMTP: è la stessa cosa di un relay SMTP ma viene utilizzato principalmente quando il dominio del destinatario è lo stesso del dominio del server. Questi sono solitamente utilizzati con servizi di posta elettronica gratuiti come gmail.com, yahoo.com.
- Server di inoltro SMTP: anche questo è un server, ma questo termine viene utilizzato quando i domini di posta elettronica di origine e di destinazione sono diversi dai domini del server SMTP. Un esempio può essere SendGrid o SendInBlue che offrono questi server. Questi server sono principalmente router per la posta.
Server SMTP falsi: – Questi server vengono utilizzati principalmente per i test dagli sviluppatori, fondamentalmente sono server catch-all che consentono agli utenti di vedere come apparirà l'e-mail dal destinatario senza effettivamente inviare alcuna e-mail. Puoi installare applicazioni locali come MailHog o MailCatcher o utilizzare un cloud fornito come Mailtrap o il nostro strumento locale.
Come funziona SMTP?
Di seguito è riportata una guida comune su come funziona il processo di invio di e-mail con l'SMTP.
- Un utente che desidera inviare un'e-mail da, ad esempio, [e-mail protetta] a [e-mail protetta] utilizza il suo client di posta elettronica per redigere un'e-mail con oggetto e corpo e premere Invia.
- Una volta che l'utente preme invia, il client di posta elettronica si connetterà al server SMTP configurato per ora supponiamo che sia smtp.source.com . Il client e il server SMTP eseguono un handshake e se è richiesta l'autorizzazione, il client fornirà le credenziali per lo stesso.
- Dopo la stretta di mano, il Client Email invia l'indirizzo del Destinatario che nel nostro caso è [email protected] , l'oggetto e il corpo.
- Se fosse stato il nostro utente a inviare a qualcuno nello stesso dominio, il nostro server lo inoltrerà semplicemente internamente al server del destinatario locale.
- Successivamente, il server SMTP che utilizza una richiesta DNS per i record MX scopre l'IP del destinatario o l'indirizzo di dominio su cui è in esecuzione il suo server SMTP.
- Successivamente si connette all'indirizzo SMTP del destinatario e prova a consegnare l'e-mail.
- Il server di posta elettronica dei destinatari verifica se è in grado di gestire l'e-mail che gli viene inoltrata. E se tutto va bene, lo inoltra al server IMAP o POP3 in arrivo.
Porta e indirizzo SMTP comuni
Nella maggior parte dei casi l'indirizzo SMTP sarà un prefisso di posta o smtp davanti al dominio a cui stai tentando di connetterti. Anche questi sono specificati dai record Mail Exchange (MX) nel DNS che indirizzano un client al server di posta che dovrebbe gestire il modo in cui i messaggi di posta elettronica devono essere instradati.
Per trovare l'indirizzo del server SMTP è possibile utilizzare il comando dig
1 2 3 |
root @ mailtest : ~ # dig +short freesmtpservers.com MX 20 smtp . freesmtpservers . com . 10 smtp . freesmtpservers . com . |
Quindi puoi utilizzare il comando dig per trovare l'indirizzo IP, se necessario
1 2 |
root @ mailtest : ~ # dig +short smtp.freesmtpservers.com 104.237.130.88 |
Le cose non sono così semplici con la porta a cui connettersi, server e relè di solito hanno una serie di porte diverse a cui è possibile connettersi, ognuna è nata nel tempo per soddisfare requisiti specifici.
Porta SMTP
Numero di porta | Descrizione | Informazione |
---|---|---|
25 | Porta SMTP standard | Dovrebbe essere utilizzato principalmente per Email Relay |
465 | Porta SMTP obsoleta | Era per SMTP sicuro, SSL usato per la crittografia. Evita l'uso. |
587 | Moderna porta SMTP sicura | La maggior parte dei client di posta elettronica moderni utilizzerà questo, utilizza la crittografia TLS. |
2525 | Porta SMTP non standard alternativa | Questo è usato come alternativa al 587 nel caso sia bloccato. |
Nella maggior parte dei casi utilizzerai il Port 587 per le tue esigenze.
Nomi comuni dei server SMTP
Gli indirizzi comuni per i server SMTP iniziano con smtp. o posta. con il nome di dominio, alcuni potrebbero avere anche un indirizzo IP. Ne abbiamo elencati alcuni comuni con i loro dettagli di seguito:
Nome di Servizio | Server SMTP | Porta |
---|---|---|
Google Mail | smtp.gmail.com | 587 |
Outlook.com | smtp.live.com | 587 |
Office365.com | smtp.office365.com | 587 |
Yahoo Mail | smtp.mail.yahoo.com | 465 |
Yahoo Mail Plus | plus.smtp.mail.yahoo.com | 465 |
Yahoo Regno Unito | smtp.mail.yahoo.co.uk | 465 |
Yahoo Germania | smtp.mail.yahoo.com | 465 |
Yahoo AU/NZ | smtp.mail.yahoo.com.au | 465 |
O2 | smtp.o2.ie | 25 |
O2.uk | smtp.o2.co.uk | 25 |
AOL.com | smtp.aol.com | 587 |
AT&T | smtp.att.yahoo.com | 465 |
NTL @ntlworld.com | smtp.ntlworld.com | 465 |
Collegamento BT | pop3.btconnect.com | 25 |
BT Openworld | mail.btopenworld.com | 25 |
Internet BT | mail.btinternet.com | 25 |
Arancia | smtp.orange.net | 25 |
Orange.uk | smtp.orange.co.uk | 25 |
Wanadoo Regno Unito | smtp.wanadoo.co.uk | 25 |
Posta calda | smtp.live.com | 465 |
O2 in linea Germania | mail.o2online.de | 25 |
T-Online Germania | securesmtp.t-online.de | 587 |
1&1 (1 e 1) | smtp.1and1.com | 587 |
1&1 Germania | smtp.1und1.de | 587 |
Comcast | smtp.comcast.net | 587 |
Verizon | outgoing.verizon.net | 465 |
Verizon (ospitato da Yahoo) | outgoing.yahoo.verizon.net | 587 |
Posta di Zoho | smtp.zoho.com | 465 |
Mail.com | smtp.mail.com | 587 |
GMX.com | smtp.gmx.com | 465 |
[e-mail protetto] da USA.NET | smtp.posta.net | 465 |
Impostazioni del provider del server SMTP in blocco
Cosa succede se vuoi inviare più di alcune e-mail, diciamo 10000 K e-mail, allora avrai bisogno di qualcosa come un inoltro SMTP in blocco, ti forniranno anche API e altre funzionalità come il monitoraggio della consegna, le tariffe di apertura ecc. Ti aiuteranno anche a inviare il Le e-mail abbastanza veloci come SMTP come protocollo sono un po' lente.
Se il numero non è molto grande, puoi utilizzare il nostro elenco di provider di server SMTP gratuiti per fare una scelta.
Se desideri inviare un'e-mail alla tua vasta base di utenti o forse per l'email marketing, abbiamo indicato i prezzi di seguito con vari fornitori elencati.
Venditore | Gratuito / Mese | Limite giornaliero | Piani a pagamento | Commenti |
---|---|---|---|---|
SendInBlue | 9000 | 300 | $ 25 per 10k a $ 499 per 1 milione | Il migliore gratuito |
TurboSMTP | 6000 | 200 | 14.95 per 50k a 979.95 per 2 Milioni. | 6000/mese per 12 mesi |
Posta diretta Alibaba | 6000 | 200 | .00029 per 1000 e-mail | |
PepiPost | 3000 | 100 | $ 25 per 150k a 445 per 2 milioni | |
InviaGrid | 3000 | 100 | $ 14,95 per 50.000 e-mail a $ 749 per 150.000 | |
SparPost | 3000 | 100 | $ 20 per 50.000 a $ 525 per 1 milione | |
E-mail elastica | 3000 | 100 | Costo come Amazon SES | Opzione a pagamento a basso costo |
Amazon SES | 62000 | .0001 per 1000 e-mail | Uno dei più economici, gratuito se inviato dal server AWS EC2 | |
Gmail | 15000 | 500 | Gsuite è l'opzione premium | Il dominio sarà gmail.com, può portare alla sospensione dell'account. |
Utilizzo di un server SMTP con WordPress
WordPress alimenta quasi il 40% dei siti su Internet, per impostazione predefinita utilizza PHP Mail per inviare e-mail transazionali che a loro volta, se non configurate, utilizza sendmail. Plugin WordPress che può utilizzare le impostazioni SMTP o utilizzare l'API SMTP per lo stesso.
Per impostazione predefinita, WordPress utilizza la posta PHP per inviare un'e-mail, se configurato correttamente è sufficiente, ma nella maggior parte dei casi è più facile utilizzare il servizio di terze parti poiché la maggior parte degli host condivisi non consente l'accesso diretto alla console per controllare cosa sta succedendo e il tuo L'IP dell'host potrebbe essere stato inserito nella lista nera a causa dello SPAM poiché potrebbero esserci anche altri utenti sul server (in caso di hosting condiviso comune) che potrebbero non comportarsi bene e causare l'inserimento nella lista nera del tuo IP. Per essere inserito nella lista nera significa che l'IP del tuo server è inserito in un elenco globale di spammer conosciuti, il che rende ancora più difficile il passaggio delle tue e-mail, puoi controllare il tuo stato qui.
Per WordPress consigliamo il plugin Wp Mail SMTP, è facile da configurare, configurare e supporta molti fornitori diversi, incluso Gmail, c'è anche un'opzione per registrare tutte le email inviate. Il piano gratuito dovrebbe essere sufficiente per la maggior parte degli utenti.
Puoi installarlo facilmente dall'interno di WordPress o anche scaricarlo dal sito Web di WordPress. Ha un piano premium, ma gratuito dovrebbe essere abbastanza buono per la maggior parte degli utenti.
Configura il server SMTP self-hosted su Linux
Confronto rapido MTA, sceglieremo Postfix poiché lavoreremo con Linux –
se sei... | qmail | Esame | Inviare una mail | Postfisso | Appunti |
---|---|---|---|---|---|
Inesperto | 0 | 3 | 1 | 3 | Exim e Postfix hanno buoni documenti ed esempi chiari |
Preoccupato per la sicurezza | 3 | 2 | 0 | 3 | Postfix è sicuro e moderno; qmail è sicuro ma molto vecchio e irritabile; Exim è protetto da criteri diversi (leggi sopra.) |
Affidarsi alle fresatrici Sendmail | 0 | 1 | 3 | 2 | Postfix può eseguire mugnaie; può utilizzare router Exim/script di filtro equivalenti |
Volendo il minimo fastidio | 0 | 3 | 0 | 3 | Sendmail ha alcuni front-end facili, ma più vai in profondità e peggio diventa. Postfix ed Exim sono più prevedibili. |
Limitato dalle risorse | 3 | 2 | 1 | 2 | Vedere l' applicazione incorporata di seguito per altri commenti |
Su Windows | 0 | 2 | 3 | 0 | Sendmail ha una porta Windows nativa; Exim è nella distribuzione Cygwin |
Necessità di supporto commerciale | 1 | 3 | 3 | 3 | Esistono società competenti per tutti gli MTA; qmail è intrinsecamente meno sopportabile essendo così vecchio |
Postfix è un Mail Transfer Agent (MTA) che può fungere da server o client SMTP per inviare o ricevere e-mail. È facile da configurare e configurare e noi stessi lo utilizziamo per la maggior parte delle nostre esigenze, può anche essere configurato per fungere da intermediario per inoltrare e-mail tramite servizi di posta elettronica di terze parti. Tratteremo solo la configurazione di base e invieremo la tua prima e-mail.
La configurazione più semplice consiste nell'installazione di Postfix e dovresti essere a posto.
Una tale configurazione essenziale funzionerà tecnicamente ma le tue e-mail potrebbero finire nello SPAM, per soddisfare questo e garantire una migliore consegna delle e-mail, abbiamo un'altra guida in cui aggiungiamo gli altri requisiti come DKIM o SPF che sono necessari per assicurarti che le tue e-mail vadano attraverso. Tuttavia, a meno che non ci sia un'ottima ragione, non consigliamo di eseguire il tuo server di posta elettronica.
Questo processo presuppone che tu abbia una nuova Ubuntu 20.04 installata e che tu possa lavorare con la riga di comando Linux, in caso contrario ti consigliamo di utilizzare uno dei provider SMTP esistenti. Imposteremo postfix sul server Ubuntu 20.04 e invieremo un'e-mail utilizzandolo al nostro servizio fittizio per testarlo per vedere se funziona.
Per iniziare emetteremo il comando update cache per apt package manager
sudo apt update
Successivamente installeremo postfix usando il seguente comando:

sudo apt install postfix
L'installazione aprirà una serie di richieste, effettuare le seguenti selezioni:
- Tipo generale di configurazione della posta? : Per questo, sceglieremo un sito Internet poiché corrisponde alle nostre esigenze di infrastruttura.
- Nome e-mail di sistema: questo è il dominio di base che verrà utilizzato per inviare un'e-mail se l'utente non specifica il dominio del mittente. Quindi, se invii un'e-mail da dire utente1 e non è specificato alcun dominio, questo verrà aggiunto all'e-mail. Quindi, se viene fornito esempio.com, invierà e-mail da [email protected] .
Questo dovrebbe occuparsi della configurazione di base. Per una configurazione completa, segui la nostra guida alla configurazione del server di posta. Ora la porta 25 dovrebbe essere disponibile, puoi controllare se è aperta usando uno qualsiasi dei comandi –
1 2 3 4 5 |
sudo lsof - i - P - n | grep LISTEN sudo netstat - tulpn | grep LISTEN sudo ss - tulpn | grep LISTEN sudo lsof - i : 22 ## see a specific port such as 22 ## sudo nmap - sTU - O IP - address - Here |
Quello che stiamo cercando qualcosa del genere
master 2575 root 13u IPv4 30244 0t0 TCP *:25 (LISTEN)
master 2575 root 14u IPv6 30245 0t0 TCP *:25 (LISTEN)
Se hai anche bisogno di riconfigurare l'installazione, esegui semplicemente il comando -
1 |
sudo dpkg - reconfigure postfix |
Siamo tutti impostati che il nostro server SMTP dovrebbe essere attivo e funzionante. Successivamente, possiamo inviare un'e-mail ad alcuni utenti su Internet o forse catturare tutte le e-mail per testare le cose.
Utilizzo di un server SMTP
Di solito, un client di posta elettronica è il modo più comune con cui la maggior parte di noi si interfaccia con un server SMTP, ma puoi anche interagire direttamente con esso utilizzando telnet. Inizieremo con questo metodo perché è semplicemente fantastico.
Invia posta utilizzando telnet in linux
Connettiti al tuo server SMTP locale immettendo il seguente comando:
1 |
telnet localhost 25 |
Vedrai qualcosa del genere -
1 2 3 4 |
root @ mailtest : ~ # telnet localhost 25 Trying : : 1... Connected to localhost . Escape character is '^]' . |
Se non riesci a connetterti, assicurati che Postfix sia in esecuzione e controlla che la porta 25 sia aperta.
Ora inviamo un'e-mail per dire [email protected] (cattura di tutte le e-mail).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
root @ mailtest : ~ # telnet localhost 25 Trying : : 1... Connected to localhost . Escape character is '^]' . 220 mailtest ESMTP Postfix ( Ubuntu ) ehlo localhost 250 - li292 - 146.members.linode.com 250 - PIPELINING 250 - SIZE 10240000 250 - VRFY 250 - ETRN 250 - STARTTLS 250 - ENHANCEDSTATUSCODES 250 - 8BITMIME 250 - DSN 250 - SMTPUTF8 250 CHUNKING mail from : bob @ example . com 250 2.1.0 Ok rcpt to : smtptest @ freesmtpservers . com 250 2.1.5 Ok data 354 End data with . Subject : Testing Email service This is a test email . . 250 2.0.0 Ok : queued as A6ADC402D4 quit 221 2.0.0 Bye Connection closed by foreign host . |
Vai a controllare se l'email è stata ricevuta nella posta in arrivo per [email protected] o se hai utilizzato un destinatario diverso puoi controllarla nella sua posta in arrivo.
Invia e-mail dalla riga di comando di Linux
Su Linux possiamo usare il comando sendmail per inviare email velocemente.
1 |
echo "Subject: hello" | sendmail - v smtptest @ freesmtpservers . com |
Spero che il mio articolo ti piaccia, se ritieni di aver perso alcuni punti o di aver sbagliato da qualche parte, faccelo sapere e lo aggiornerò qui.