Questo tutorial ti mostrerà come configurare rapidamente il tuo server di posta elettronica su Ubuntu 20.04 con Modoboa, che è una piattaforma di hosting e gestione della posta gratuita e open source progettata per funzionare con il server SMTP Postfix e il server IMAP/POP3 di Dovecot.
Modoboa è scritto in Python, rilasciato sotto i termini della licenza ISC. L'ultima versione è la v1.16.0, rilasciata il 5 ottobre 2020. Le caratteristiche principali di Modoboa sono le seguenti:
- Modoboa per impostazione predefinita utilizza Nginx server web per servire il client webmail e il pannello di amministrazione basato sul web.
- Compatibile con Postfix e Dovecot.
- Supporta il database MySQL/MariaDB o PostgreSQL.
- Crea facilmente caselle di posta illimitate e domini di posta illimitati in un pannello di amministrazione basato sul Web.
- Crea facilmente alias email nel pannello di amministrazione basato sul Web.
- Il client webmail fornisce un filtro messaggi di facile utilizzo per aiutarti a organizzare i messaggi in cartelle diverse.
- Può aiutarti a proteggere la reputazione del tuo dominio monitorando le liste nere di posta elettronica e generando rapporti DMARC, in modo che le tue email abbiano maggiori possibilità di finire nella posta in arrivo anziché nella cartella spam.
- Include amavis frontend per bloccare lo spam e rilevare virus nelle e-mail.
- Calendario e rubrica.
- Integrazione con Let's Encrypt.
- Un demone delle politiche per Postfix che ti consente di definire limiti di invio giornalieri per domini e account individuali.
- Include AutoMX per consentire agli utenti finali di configurare facilmente l'account di posta in un client di posta desktop o mobile.
Fase 1:scegli il provider di hosting giusto e acquista un nome di dominio
Per configurare un server di posta elettronica completo con Modoboa, è necessario un server con almeno 3 GB di RAM, perché dopo l'installazione, il tuo server utilizzerà più di 2 GB di RAM.
Si consiglia vivamente di installare Modoboa su un'installazione pulita di Ubuntu 20.04 server.
Questo tutorial viene eseguito su un Kamatera VPS (server privato virtuale) da $ 9 al mese con 1 CPU e 3 GB di RAM. Offrono una prova gratuita di 30 giorni.
Kamatera è un'ottima opzione per eseguire un server di posta perché
- Non bloccano la porta 25 , così puoi inviare e-mail illimitate (e-mail transazionali e newsletter) senza spendere soldi per il servizio di inoltro SMTP. Kamatera non ha limiti SMTP. Puoi inviare un milione di email al giorno.
- L'indirizzo IP non è in nessuna lista nera di email . (Almeno questo è vero nel mio caso. Ho scelto il data center di Dallas.) Sicuramente non vuoi essere elencato nella temuta lista nera IP di Microsoft Outlook o nella lista nera degli spamrat. Alcune blacklist bloccano un intero intervallo IP e non hai modo di rimuovere il tuo indirizzo IP da questo tipo di blacklist.
- Puoi modificare il record PTR per migliorare la consegna delle email.
- Ti permettono di inviare newsletter ai tuoi iscritti alla posta elettronica con no limiti orari o giornalieri, qualunque.
- Puoi ordinare più indirizzi IP per un singolo server. Questo è molto utile per le persone che hanno bisogno di inviare un grande volume di e-mail. Puoi diffondere il traffico e-mail su più indirizzi IP per ottenere una migliore consegna delle e-mail.
Altri provider VPS come DigitalOcean bloccano la porta 25. DigitalOcean non sbloccherà la porta 25, quindi dovrai configurare l'inoltro SMTP per bypassare il blocco, il che può costarti denaro aggiuntivo. Se utilizzi Vultr VPS, la porta 25 è bloccata per impostazione predefinita. Possono sbloccarlo se apri un ticket di supporto, ma possono bloccarlo di nuovo in qualsiasi momento se decidono che la tua attività di invio e-mail non è consentita. Vultr potrebbe effettivamente bloccarlo nuovamente se utilizzi i loro server per inviare newsletter.
Vai al sito Web di Kamatera per creare un account, quindi crea il tuo server nella dashboard del tuo account.
Ti consiglio di seguire il tutorial collegato di seguito per configurare correttamente il tuo server VPS Linux su Kamatera.
- Come creare un server VPS Linux su Kamatera
Dopo aver creato un server, Kamatera ti invierà un'e-mail con i dettagli di accesso SSH del server. Per accedere al tuo server, utilizzi un client SSH. Se stai utilizzando Linux o macOS sul tuo computer, apri semplicemente una finestra del terminale ed esegui il comando seguente per accedere al tuo server. Sostituisci 12.34.56.78 con l'indirizzo IP del tuo server.
ssh [email protected]
Ti verrà chiesto di inserire la password.
Hai anche bisogno di un nome di dominio. Ho registrato il mio nome di dominio da NameCheap perché il prezzo è basso e offrono protezione della privacy a Whois gratuita per tutta la vita.
Fase 2:creazione del record MX DNS
Il record MX specifica quale host o host gestiscono le e-mail per un particolare nome di dominio. Ad esempio, l'host che gestisce le email per linuxbabe.com
è mail.linuxbabe.com
. Se qualcuno con un account Gmail invia un'email a [email protected]
, il server Gmail eseguirà una query sul record MX di linuxbabe.com. Quando scopre che mail.linuxbabe.com
è responsabile dell'accettazione della posta elettronica, quindi interroga il record A di mail.linuxbabe.com
per ottenere l'indirizzo IP, così l'e-mail può essere consegnata.
Nel tuo gestore DNS, crea un record MX per il tuo nome di dominio. Inserisci @
nel campo Nome per rappresentare il nome di dominio principale, quindi inserisci mail.your-domain.com
nel campo Valore.
Nota :il nome host per il record MX non può essere un alias per un altro nome. Inoltre, si consiglia vivamente di utilizzare nomi host, anziché indirizzi IP nudi per il record MX.
Il tuo gestore DNS potrebbe richiederti di inserire un valore di preferenza (noto anche come valore di priorità). Può essere qualsiasi numero compreso tra 0
e 65,356
. Un numero piccolo ha una priorità maggiore di un numero grande. Puoi inserire 0
per il tuo server di posta elettronica o accetta il valore predefinito.
Dopo aver creato il record MX, devi anche creare un record A per mail.your-domain.com
, in modo che possa essere risolto in un indirizzo IP. Se il tuo server utilizza l'indirizzo IPv6, assicurati di aggiungere il record AAAA.
Se utilizzi il servizio DNS Cloudflare, non dovresti abilitare la funzione proxy durante la creazione di un record per il tuo server di posta. Cloudflare non supporta il proxy SMTP/IMAP.
Passaggio 3:configura il server di posta su Ubuntu 20.04 con Modoboa Installer
Accedi al tuo server tramite SSH, quindi esegui il comando seguente per aggiornare i pacchetti software.
sudo apt update; sudo apt upgrade -y
Consiglio vivamente di creare un sudo
utente per gestire il tuo server invece di usare la root
predefinita utente per migliorare la sicurezza del server. Eseguire il comando seguente per creare un utente. Sostituisci username
con il tuo nome utente preferito.
adduser username
Quindi aggiungi l'utente a sudo
gruppo.
adduser username sudo
Passa al nuovo utente.
su - username
Scarica il programma di installazione di modoboa da Github.
git clone https://github.com/modoboa/modoboa-installer
Modoboa è scritto in Python. Esegui il comando seguente per installare il software Python necessario.
sudo apt-get install python3-virtualenv python3-pip
Quindi vai al modoboa-installer
directory e creare un file di configurazione. Sostituisci example.com
con il tuo nome di dominio.
cd modoboa-installer sudo python3 ./run.py --stop-after-configfile-check example.com
Modifica il file di configurazione installer.cfg
con un editor di testo a riga di comando come Nano.
sudo nano installer.cfg
Per ottenere un certificato TLS valido da Let's Encrypt per il tuo server di posta, in [certificate]
sezione, cambia il valore di type da self-signed
a letsencrypt
.
type = letsencrypt
E cambia l'indirizzo email da [email protected]
al tuo vero indirizzo email, che verrà utilizzato per il recupero dell'account e notifiche importanti. Non sarai in grado di ottenere e installare il certificato Let's Encrypt se utilizzi l'indirizzo email predefinito.
Per impostazione predefinita, il programma di installazione di Modoboa installerà il server di database PostgreSQL, come indicato dalle seguenti righe nel file di configurazione.
[database] engine = postgres host = 127.0.0.1 install = true
Se desideri utilizzare il server di database MariaDB, cambia il motore da postgres
a mysql
. (Modoboa installerà MariaDB invece di MySQL.)
Salva e chiudi il file. (Per salvare un file nell'editor di testo Nano, premi Ctrl+O
, quindi premi Enter
per confermare. Per uscire, premi Ctrl+X
.)
Successivamente, dovresti utilizzare un nome di dominio completo (FQDN) come nome host per il tuo server di posta, ad esempio mail.example.com
. Esegui il comando seguente per impostare il nome host.
sudo hostnamectl set-hostname mail.example.com
Ora dobbiamo verificare se i record DNS vengono propagati su Internet. A seconda del registrar di domini che utilizzi, il tuo record DNS potrebbe essere propagato istantaneamente o potrebbero essere necessarie fino a 24 ore per propagarsi. Puoi andare su https://dnsmap.io, inserire il nome host del tuo server di posta (mail.example.com
) per controllare la propagazione del DNS.
Se il record DNS viene propagato, eseguire il comando seguente per avviare l'installazione. (Sostituisci example.com
con il tuo nome di dominio principale come linuxbabe.com
. Non utilizzare il sottodominio mail.example.com
in questo comando).
sudo python3 ./run.py --interactive example.com
Il processo di installazione può richiedere del tempo. Ci sono voluti 10 minuti sul mio server. Se vedi un errore durante l'installazione, puoi usare il --debug
opzione per visualizzare un output più dettagliato.
sudo python3 ./run.py --interactive --debug example.com
Al termine dell'installazione di Modoboa, puoi accedere al pannello di amministrazione con il nome utente admin
e password password
.
- Se il tuo browser non riesce a connettersi al pannello di amministrazione, è possibile che Nginx non sia in esecuzione. Avvialo con
sudo systemctl restart nginx
. Se non si avvia, eseguisudo nginx -t
per scoprire cosa c'è che non va. - Se vedi l'errore interno messaggio, utilizza la soluzione qui.
Una volta effettuato l'accesso, dovresti andare su Admin
-> Settings
-> Profile
per cambiare la password.
Impossibile ottenere il certificato Let's Encrypt TLS
Se esegui sudo ngixn -t
comando e ottieni il seguente errore,
nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/mail.example.com/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No suc> nginx: configuration file /etc/nginx/nginx.conf test failed Failed to start A high performance web server and a reverse proxy server
È probabile che il tuo server non sia riuscito a ottenere un certificato Let's Encrypt TLS. Esegui il comando seguente per risolverlo.
sudo systemctl stop nginx sudo ufw allow http sudo ufw allow https sudo certbot certonly --standalone --agree-tos --redirect --hsts --staple-ocsp -d mail.your-domain.com sudo systemctl restart nginx postfix dovecot
Fase 4:aggiunta di cassette postali nel pannello di amministrazione di Modoboa
Vai a Domains
scheda e fai clic su Add
pulsante per aggiungere un nuovo dominio.
Quindi inserisci il tuo nome di dominio principale nel campo Nome. Si consiglia vivamente di abilitare la firma DKIM , che può aiutarti con la reputazione del tuo dominio. In Key selector
campo, puoi inserire una parola a caso come modoboa
. Scegli 2048 come lunghezza della chiave.
Nella schermata successiva, puoi scegliere di creare un account amministratore per il tuo dominio. Il protocollo SMTP richiede che un server di posta abbia un [email protected]
indirizzo.
Fai clic sul pulsante Invia e il tuo nome di dominio verrà aggiunto in Modoboa.
Nota che l'impostazione predefinita admin
l'account creato durante l'installazione non è un account di posta elettronica. Per aggiungere indirizzi email, vai su Domains
scheda e fai clic sul tuo nome di dominio.
Quindi fai clic sulle caselle di posta.
Fai clic su Add
e scegli Account
.
Quindi scegli Simple user
come il ruolo. Inserisci un indirizzo email nel campo Nome utente e inserisci una password.
Nella schermata successiva, puoi opzionalmente creare un alias per questo indirizzo email.
Dopo aver fatto clic sul pulsante di invio, viene creato l'indirizzo email.
Fase 5:invio di e-mail di prova
Per accedere alla webmail, devi prima disconnetterti dall'account amministratore e poi inserire le credenziali utente.
Una volta effettuato l'accesso alla webmail di Modoboa, puoi inviare un'e-mail di prova dal tuo server di posta privato all'altro indirizzo e-mail e viceversa.
Le e-mail in entrata verranno ritardate di alcuni minuti, perché per impostazione predefinita Modoboa abilita il greylisting, che dice all'altro server SMTP di invio di riprovare tra qualche minuto. Questo è utile per bloccare lo spam. Il seguente messaggio in /var/log/mail.log
indica che il greylisting è abilitato.
postfix/postscreen[20995]: NOQUEUE: reject: RCPT from [34.209.113.130]:36980: 450 4.3.2 Service currently unavailable;
Tuttavia, il greylisting può essere piuttosto fastidioso. Puoi disabilitarlo modificando il file di configurazione principale di Postfix.
sudo nano /etc/postfix/main.cf
Trova le seguenti righe alla fine del file e commentale. (Aggiungi un carattere # all'inizio di ogni riga.)
postscreen_pipelining_enable = yes postscreen_pipelining_action = enforce postscreen_non_smtp_command_enable = yes postscreen_non_smtp_command_action = enforce postscreen_bare_newline_enable = yes postscreen_bare_newline_action = enforce
Salva e chiudi il file. Quindi riavvia Postfix per rendere effettive le modifiche.
sudo systemctl restart postfix
Ora dovresti essere in grado di ricevere e-mail senza attendere diversi minuti.
Aggiunta di spazio di scambio
ClamAV viene utilizzato per scansionare i virus nei messaggi di posta elettronica. ClamAV può utilizzare una discreta quantità di RAM. Se non c'è abbastanza RAM sul tuo server, ClamAV non funzionerà correttamente, il che impedirà al tuo server di posta di inviare e-mail. Puoi aggiungere un file di scambio al tuo server per aumentare la RAM totale sul tuo server. (Si noti che l'utilizzo dello spazio di scambio sul server degraderà le prestazioni del server. Se si desidera prestazioni migliori, è necessario aggiornare la RAM fisica invece di utilizzare lo spazio di scambio.)
Per aggiungere spazio di scambio sul server, prima usa il fallocate
comando per creare un file. Ad esempio, crea un file denominato swapfile con capacità 1G nel file system radice:
sudo fallocate -l 1G /swapfile
Quindi assicurati che solo root possa leggere e scrivere su di esso.
sudo chmod 600 /swapfile
Formattalo per scambiare:
sudo mkswap /swapfile
Uscita:
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=0aab5886-4dfb-40d4-920d-fb1115c67433
Abilita il file di scambio
sudo swapon /swapfile
Per montare lo spazio di scambio all'avvio del sistema, modificare /etc/fstab
file.
sudo nano /etc/fstab
Aggiungi la seguente riga in fondo a questo file.
/swapfile swap swap defaults 0 0
Salva e chiudi il file. Quindi ricarica systemd e riavvia ClamAV.
sudo systemctl daemon-reload sudo systemctl restart clamav-daemon
Fase 6:verifica se la porta 25 (in uscita) è bloccata
Il tuo ISP o provider di hosting non bloccherà la connessione in entrata alla porta 25 del tuo server, il che significa che puoi ricevere e-mail da altri server di posta. Tuttavia, molti ISP/provider di hosting bloccano la connessione in uscita alla porta 25 di altri server di posta, il che significa che non puoi inviare e-mail.
Se la tua email non è arrivata al tuo altro indirizzo email come Gmail, esegui il seguente comando sul tuo server di posta per verificare se la porta 25 (in uscita) è bloccata.
telnet gmail-smtp-in.l.google.com 25
Se non è bloccato, vedrai messaggi come di seguito, che indicano che la connessione è stata stabilita correttamente. (Suggerimento:digita quit
e premere Invio per chiudere la connessione.)
Trying 74.125.68.26... Connected to gmail-smtp-in.l.google.com. Escape character is '^]'. 220 mx.google.com ESMTP y22si1641751pll.208 - gsmtp
Se la porta 25 (in uscita) è bloccata, vedrai qualcosa del tipo:
Trying 2607:f8b0:400e:c06::1a... Trying 74.125.195.27... telnet: Unable to connect to remote host: Connection timed out
In questo caso, il tuo Postfix non può inviare e-mail ad altri server SMTP. Chiedi al tuo ISP/provider di hosting di aprirlo per te. Se rifiutano la tua richiesta, devi configurare l'inoltro SMTP per bypassare il blocco della porta 25.
Non riesci ancora a inviare e-mail?
Se la porta 25 (in uscita) non è bloccata, ma non riesci comunque a inviare e-mail dal tuo server di posta all'altro indirizzo e-mail come Gmail, dovresti controllare il registro della posta (/var/log/mail.log
).
sudo nano /var/log/mail.log
Ad esempio, alcune persone potrebbero vedere le seguenti righe nel file.
host gmail-smtp-in.l.google.com[2404:6800:4003:c03::1b] said: 550-5.7.1 [2a0d:7c40:3000:b8b::2] Our system has detected that 550-5.7.1 this message does not meet IPv6 sending guidelines regarding PTR 550-5.7.1 records and authentication. Please review 550-5.7.1 https://support.google.com/mail/?p=IPv6AuthError for more information
Ciò significa che il tuo server di posta utilizza IPv6 per inviare l'e-mail, ma non hai impostato i record IPv6. Dovresti andare al tuo gestore DNS, impostare AAAA
record per mail.your-domain.com
, quindi dovresti impostare PTR
record per il tuo indirizzo IPv6, che è discusso nel passaggio 8.
Passaggio 7:utilizzo dei client di posta sul computer o dispositivo mobile
Avvia il tuo client di posta elettronica desktop come Mozilla Thunderbird e aggiungi un account di posta.
- Nella sezione del server in arrivo, seleziona il protocollo IMAP, inserisci
mail.your-domain.com
come nome del server, scegli la porta 993 e SSL/TLS. Sceglinormal password
come metodo di autenticazione. - Nella sezione in uscita, seleziona il protocollo SMTP, inserisci
mail.your-domain.com
come nome del server, scegli la porta 587 e STARTTLS. Sceglinormal password
come metodo di autenticazione.
Puoi anche utilizzare IMAP sulla porta 143 con crittografia STARTTLS.
Fase 8:miglioramento della consegna delle e-mail
Per evitare che le tue email vengano contrassegnate come spam, dovresti impostare PTR
, SPF
, DKIM
e DMARC
record.
Registrazione PTR
Un record del puntatore, o record PTR, associa un indirizzo IP a un FQDN (nome di dominio completo). È la controparte del record A e viene utilizzato per la ricerca DNS inversa, che può aiutare a bloccare gli spammer. Molti server SMTP rifiutano le email se non viene trovato alcun record PTR per il server di invio.
Per controllare il record PTR per un indirizzo IP, esegui questo comando:
dig -x IP-address +short
o
host IP-address
Poiché ottieni l'indirizzo IP dal tuo provider di hosting o ISP, non dal tuo registrar di domini, quindi devi impostare il record PTR per il tuo IP nel pannello di controllo del tuo provider di hosting o chiedere al tuo ISP. Il suo valore dovrebbe essere il nome host del tuo server di posta:mail.your-domain.com
. Se il tuo server utilizza l'indirizzo IPv6, assicurati di aggiungere anche un record PTR per il tuo indirizzo IPv6.
Per modificare il record DNS inverso per il tuo Kamatera VPS, accedi all'area client di Kamatera, quindi apri un ticket di supporto e chiedi loro di aggiungere il record PTR per gli indirizzi IP del tuo server per puntare l'indirizzo IP a mail.your-domain.com
. Non è conveniente, potresti pensare, ma serve a tenere gli spammer lontani dalla piattaforma, quindi i mittenti di e-mail legittimi come noi avranno un'ottima reputazione IP.
Registro SPF
SPF (Sender Policy Framework) specifica a quali host o indirizzo IP è consentito inviare e-mail per conto di un dominio. Dovresti consentire solo al tuo server di posta elettronica o al server del tuo ISP di inviare e-mail per il tuo dominio. Nella tua interfaccia di gestione DNS, crea un nuovo record TXT come di seguito.
Spiegazione:
- TXT indica che si tratta di un record TXT.
- Inserisci @ nel campo del nome per rappresentare il nome di dominio principale.
- v=spf1 indica che si tratta di un record SPF e la versione è SPF1.
- mx significa che tutti gli host elencati nei record MX sono autorizzati a inviare email per il tuo dominio e tutti gli altri host non sono autorizzati.
- ~tutti indica che le email del tuo dominio devono provenire solo dagli host specificati nel record SPF. Le email provenienti da altri host verranno contrassegnate come contraffatte.
Per verificare se il tuo record SPF viene propagato su Internet pubblico, puoi utilizzare l'utilità dig sulla tua macchina Linux come di seguito:
dig your-domain.com txt
Il txt
l'opzione dice a dig
che vogliamo solo interrogare i record TXT.
Registro DKIM
DKIM (DomainKeys Identified Mail) utilizza una chiave privata per firmare digitalmente le email inviate dal tuo dominio. I server SMTP riceventi verificano la firma utilizzando la chiave pubblica, pubblicata nel record DKIM DNS.
Quando in precedenza stavamo aggiungendo il nome di dominio nel pannello di amministrazione di Moboboa, abbiamo abilitato la firma DKIM, quindi la parte della firma è stata curata. L'unica cosa rimasta da fare è creare il record DKIM nel gestore DNS. Per prima cosa vai al pannello di amministrazione di Modoboa e seleziona il tuo nome di dominio. Nella sezione DNS, fai clic su Show key
pulsante.
La chiave pubblica verrà rivelata. Ci sono due formati. Abbiamo solo bisogno del formato Bind/named.
Vai al tuo gestore DNS, crea un record TXT, inserisci modoboa._domainkey
nel campo Nome. (Ricorda che abbiamo usato modoboa
come selettore quando aggiungi il nome di dominio nel pannello di amministrazione.) Copia tutto tra parentesi e incolla nel campo del valore. Elimina tutte le virgolette doppie. Il tuo gestore DNS potrebbe richiederti di eliminare altri caratteri non validi, come il ritorno a capo.
Tieni presente che il tuo record DKIM potrebbe richiedere del tempo per propagarsi a Internet. A seconda del registrar di domini che utilizzi, il tuo record DNS potrebbe essere propagato istantaneamente o potrebbero essere necessarie fino a 24 ore per propagarsi. Puoi andare su https://www.dmarcanalyzer.com/dkim/dkim-check/, inserire modoboa
come selettore e inserisci il tuo nome di dominio per verificare la propagazione del record DKIM.
Registro DMARC
DMARC sta per Domain-based Message Authentication, Reporting and Conformance. DMARC può aiutare a ricevere server di posta elettronica per identificare e-mail legittime e impedire che il tuo nome di dominio venga utilizzato dallo spoofing e-mail.
Per creare un record DMARC, vai al tuo gestore DNS e aggiungi un TXT disco. Nel campo del nome, inserisci _dmarc
. Nel campo del valore, inserisci quanto segue:
v=DMARC1; p=none; pct=100; rua=mailto:[email protected]
Il record DMARC di cui sopra è un punto di partenza sicuro. Per vedere la spiegazione completa di DMARC, controlla il seguente articolo.
- Creazione di un record DMARC per proteggere il tuo nome di dominio dallo spoofing e-mail
Passaggio 7:verifica del punteggio e del posizionamento e-mail
Dopo aver creato il record PTR, SPF e DKIM, vai su https://www.mail-tester.com . Vedrai un indirizzo email univoco. Invia un'e-mail dal tuo dominio a questo indirizzo e poi controlla il tuo punteggio. Come puoi vedere, ho ottenuto un punteggio perfetto.
Mail-tester.com può mostrarti solo un punteggio del mittente. C'è un altro servizio chiamato GlockApps che ti consente di verificare se la tua e-mail è stata inserita nella posta in arrivo o nella cartella spam del destinatario o rifiutata a titolo definitivo. Supporta molti provider di posta elettronica popolari come Gmail, Outlook, Hotmail, YahooMail, posta iCloud, ecc
Cosa succede se le tue email vengono ancora contrassegnate come spam?
Ho altri suggerimenti per te in questo articolo:Come impedire che le tue e-mail vengano contrassegnate come spam. Anche se ci vorrà un po' di tempo e fatica, le tue email verranno eventualmente inserite nella Posta in arrivo dopo aver applicato questi suggerimenti.
Cosa succede se la tua email viene rifiutata dalla casella di posta Microsoft?
Microsoft sembra utilizzare una blacklist interna che blocca molti indirizzi IP legittimi. Se le tue e-mail vengono rifiutate da Outlook o Hotmail, devi inviare il modulo delle informazioni sul mittente. Dopodiché, la tua email verrà accettata da Outlook/Hotmail.
Rinnovo automatico del certificato Let's Encrypt TLS
Il certificato Let's Encrypt TLS è valido per 90 giorni. Per rinnovare automaticamente il certificato, modifica il file crontab dell'utente root.
sudo crontab -e
Aggiungi la seguente riga alla fine di questo file.
@daily /usr/bin/certbot renew -q && systemctl reload nginx postfix dovecot
Salva e chiudi il file. Questo dice a Cron di eseguire il comando di rinnovo certbot ogni giorno. Se il certificato ha ancora 30 giorni, certbot lo rinnoverà. È necessario ricaricare il server web Nginx, il server SMTP Postfix e il server IMAP di Dovecot in modo che possano ritirare il nuovo certificato.
Abilitazione della porta SMTPS 465
Se intendi utilizzare il client Microsoft Outlook, devi abilitare la porta SMTPS 465 nel server SMTP Postfix.
Risoluzione dei problemi
Innanzitutto, utilizza un VPS con almeno 2 GB di RAM. L'esecuzione di Modoboa su un VPS da 1 GB di RAM causerà l'uccisione del database, di SpamAssassin o di ClamAV a causa di un problema di memoria insufficiente. Se vuoi davvero utilizzare un VPS da 1 GB di RAM, perderai le email in arrivo e avrai altri risultati indesiderati.
Se l'interfaccia web di Modoboa non è accessibile, come un errore del gateway 502, dovresti controllare i log di Nginx in /var/log/nginx/
directory per trovare indizi. Potresti anche voler controllare il registro della posta /var/log/mail.log
.
Controlla se i vari servizi sono in esecuzione.
systemctl status postfix systemctl status dovecot systemctl status nginx systemctl status mariadb systemctl status clamav-daemon systemctl status amavis systemctl status uwsgi systemctl status supervisor
Se hai abilitato il firewall, dovresti aprire le seguenti porte nel firewall.
HTTP port: 80 HTTPS port: 443 SMTP port: 25 Submission port: 587 (and 465 if you are going to use Microsoft Outlook mail client) IMAP port: 143 and 993
Se desideri utilizzare il firewall UFW, consulta la mia guida qui:Introduzione al firewall UFW su Debian e Ubuntu.
ClamAV si spegne automaticamente
Ho scoperto che il clamav-daemon
il servizio tende a interrompersi senza una chiara ragione anche quando c'è abbastanza RAM. Ciò ritarderà le email di 1 minuto. Possiamo configurarlo per il riavvio automatico se si interrompe tramite l'unità di servizio systemd. Copia il file dell'unità di servizio originale in /etc/systemd/system/
directory.
sudo cp /lib/systemd/system/clamav-daemon.service /etc/systemd/system/clamav-daemon.service
Quindi modifica il file dell'unità di servizio.
sudo nano /etc/systemd/system/clamav-daemon.service
Aggiungi le seguenti due righe nella sezione [servizio].
Restart=always RestartSec=3
In questo modo:
[Service] ExecStart=/usr/sbin/clamd --foreground=true # Reload the database ExecReload=/bin/kill -USR2 $MAINPID StandardOutput=syslog Restart=always RestartSec=3
Salva e chiudi il file. Quindi ricarica systemd e riavvia clamav-daemon.service.
sudo systemctl daemon-reload sudo systemctl restart clamav-daemon
Spiacenti, si è verificato un errore interno
Se visualizzi il messaggio di errore interno quando tenti di accedere al pannello di amministrazione di Modoboa, modifica settings.py
file.
sudo nano /srv/modoboa/instance/instance/settings.py
Attiva la modalità di debug.
DEBUG = True
Riavvia uwsgi per rendere effettive le modifiche.
sudo systemctl restart uwsgi
Quindi, prova ad accedere nuovamente al pannello di amministrazione di Modoboa. Questa volta vedrai l'esatto errore interno. Ad esempio, sul mio server di posta è
database connection isn't set to UTC
Quindi ho bisogno di modificare il settings.py
file
sudo nano /srv/modoboa/instance/instance/settings.py
e disattivare il fuso orario.
USE_TZ = False
Salva e chiudi il file. Riavvia uwsgi per rendere effettive le modifiche.
sudo systemctl restart uwsgi
(Facoltativo) Configura l'individuazione automatica e la configurazione automatica per automatizzare la configurazione del client di posta
L'individuazione automatica e la configurazione automatica semplificano la configurazione di un client di posta desktop o mobile. L'utente finale deve solo inserire un nome, un indirizzo e-mail e una password per configurare il proprio account di posta, senza dover inserire i dettagli del server SMTP o IMAP. L'individuazione automatica è supportata dal client di posta di Microsoft Outlook e AutoConfig è supportato dal client di posta di Mozilla Thunderbird.
Modoboa utilizza AutoMX per implementare questa funzione sul tuo server di posta. Tutto ciò che dobbiamo fare ora è aggiungere record CNAME in DNS. In your DNS manager, create two CNAME records.
autoconfig.yourdomain.com CNAME mail.yourdomain.com autodiscover.yourdomain.com CNAME mail.yourdomain.com
Go to the Domains
tab in your Modoboa admin panel, if the autoconfig
is in green, that means your CNAME records are correct. (Modoboa checks DNS records for your mail server every 30 minutes, so you might need to wait some time for autoconfig to turn green.)
Once the CNAME records are propagated to the Internet, you don’t have to enter the SMTP or IMAP server details when setting up a mail account in Microsoft Outlook and Mozilla Thunderbird.
Host Multiple Domains in Modoboa
See the following article:
- How to Host Multiple Domains in Modoboa Mail Server
Setting Up Backup Mail Server
Your primary mail server could be down sometimes. If you host your mail server in a data center, then the downtime is very minimal, so you shouldn’t be worried about losing inbound emails. If you host your mail server at home, the downtime can’t be predicted so it’s a good practice for you to run a backup mail server in a data center to prevent losing inbound emails. The backup mail server needs just 512MB RAM to run. Please check the full detail in the following article.
- How to Set up a Backup Email Server with Postfix on Ubuntu (Complete Guide)
I hope this tutorial helped you set up a mail server on Ubuntu 20.04 with Modoboa. Come sempre, se hai trovato utile questo post, iscriviti alla nostra newsletter gratuita per ricevere ulteriori suggerimenti e trucchi. Attento 🙂