Configurare il proprio server di posta su Linux VPS è un compito importante per qualsiasi amministratore di sistema Linux. Postfix è una delle soluzioni di server di posta più utilizzate e più semplici disponibili. È un potente Mail Transfer Agent (MTA) gratuito, open source che può essere utilizzato per inviare e ricevere e-mail. Per impostazione predefinita, Postfix è il software MTA predefinito su tutte le distribuzioni Linux.
Dovecot è un server di posta elettronica IMAP e POP3 open source che può fungere da server di archiviazione della posta. Viene utilizzato per recapitare e recuperare e-mail da e verso le cassette postali locali.
Roundcube è un client e-mail IMAP basato sul Web in grado di leggere le e-mail archiviate da Dovecot su caselle di posta virtuali. Fornisce tutte le funzionalità che ti aspetti da un client di posta elettronica, incluso il supporto MIME, identità di più mittenti, controllo ortografico, manipolazione delle cartelle e molto altro.
In questo tutorial, ti mostreremo come configurare un server di posta completo con Postfix, Dovecot e Roundcube su Ubuntu 18.04 VPS.
Prerequisiti
- Un nuovo VPS Ubuntu 18.04 sulla piattaforma Atlantic.Net Cloud.
- Un nome di dominio valido puntato al tuo indirizzo IP VPS. In questo tutorial utilizzeremo email.example.com.
- Record A e MX per il tuo server.
Nota :puoi fare riferimento alla Guida DNS Atlantic per gestire i record DNS.
Fase 1:crea un server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu 18.04 come sistema operativo con almeno 2GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Ubuntu 18.04, esegui il comando seguente per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Fase 2:imposta il nome host
Successivamente, dovrai impostare il nome host del tuo server. In questo caso, imposteremo il nome host su mail.example.com, come mostrato di seguito:
hostnamectl set-hostname email.example.com
Quindi, apri il file /etc/hosts e associa l'indirizzo IP del tuo server con il nome host:
nano /etc/hosts
Aggiungi la seguente riga:
your-server-ip email.example.com email
Salva e chiudi il file. Quindi, esegui il comando seguente per applicare le modifiche alla configurazione:
hostname -f
Fase 3 – Installa Apache, MariaDB e PHP
Roundcube richiede che Apache, MariaDB e PHP siano installati sul tuo server. Puoi installarli con il seguente comando:
apt-get install apache2 mariadb-server php libapache2-mod-php php-mysql -y
Dopo aver installato tutti i pacchetti richiesti, sarà necessario abilitare il modulo di riscrittura di Apache affinché Roundcube funzioni. Puoi abilitarlo con il seguente comando:
a2enmod rewrite
Quindi, ricarica il servizio Apache per applicare le modifiche:
systemctl restart apache2
Fase 4 – Installa il certificato SSL Let's Encrypt
Successivamente, dovrai installare il certificato SSL Let's Encrypt Free sul tuo server per configurare il tuo server di posta con TLS.
Innanzitutto, installa il client Certbot nel tuo server con il seguente comando:
add-apt-repository ppa:certbot/certbot apt-get update -y apt-get install python-certbot-apache -y
Quindi, scarica il certificato SSL Let's Encrypt Free per il tuo dominio email.example.com con il seguente comando:
certbot certonly --apache -d email.example.com
Questo comando scaricherà il certificato nella directory /etc/letsencrypt/live/email.example.com/.
Fase 5 – Installa e configura Postfix
Quindi, iniziamo a installare un server di posta Postfix con il seguente comando:
apt-get install postfix
Verrai reindirizzato alla seguente schermata:
Seleziona Sito Internet e premi TAB e Invio continuare. Dovresti vedere la seguente schermata:
Fornisci il tuo nome di dominio e premi Tab e Invio per completare l'installazione.
Il file di configurazione Postfix predefinito si trova in /etc/postfix/main.cf. Prima di configurare Postfix, si consiglia di eseguire il backup di questo file:
mv /etc/postfix/main.cf /etc/postfix/main.cf.bak
Quindi, crea un nuovo file di configurazione di Postfix come mostrato di seguito:
nano /etc/postfix/main.cf
Aggiungi le seguenti righe:
# GENERAL SETTINGS smtpd_banner = $myhostname ESMTP $mail_name biff = no append_dot_mydomain = no readme_directory = no # SMTP SETTINGS smtp_use_tls=yes smtp_tls_security_level = may smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache # SMTPD SETTINGS smtpd_use_tls=yes smtpd_tls_security_level = may smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtpd_tls_cert_file=/etc/letsencrypt/live/email.example.com/fullchain.pem smtpd_tls_key_file=/etc/letsencrypt/live/email.example.com/privkey.pem smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination # SASL SETTINGS smtpd_sasl_auth_enable = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth # VIRTUAL MAIL BOX AND LMTP SETTINGS virtual_transport = lmtp:unix:private/dovecot-lmtp virtual_mailbox_domains = /etc/postfix/virtual_mailbox_domains # OTHER SETTINGS myhostname = email.example.com myorigin = /etc/mailname mydestination = localhost.$mydomain, localhost relayhost = mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all inet_protocols = all alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases
Salva e chiudi il file.
Successivamente, dovrai definire il tuo dominio nel file /etc/postfix/virtual_mailbox_domains:
nano /etc/postfix/virtual_mailbox_domains
Aggiungi la seguente riga:
example.com #domain
Salva e chiudi il file, quindi converti il file in un formato comprensibile per Postfix con il seguente comando:
postmap /etc/postfix/virtual_mailbox_domains
Quindi, modifica il file di configurazione principale di Postfix:
nano /etc/postfix/master.cf
Decommenta la seguente riga:
submission inet n - y - - smtpd
Salva e chiudi il file quando hai finito.
Fase 6 – Installa e configura Dovecot
Successivamente, dovrai installare Dovecot con altri pacchetti richiesti. Puoi installarli usando il seguente comando:
apt-get install dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd -y
Successivamente, dovrai definire la posizione della posta di Dovecot per comunicare con Postfix e i domini delle cassette postali virtuali. Puoi definirlo modificando il file /etc/dovecot/conf.d/10-mail.conf:
nano /etc/dovecot/conf.d/10-mail.conf
Trova la seguente riga:
mail_location = mbox:~/mail:INBOX=/var/mail/%u
E sostituiscilo con il seguente:
mail_location = maildir:/var/mail/vhosts/%d/%n
Salva e chiudi il file.
Successivamente, crea la directory Dovecot vhosts e la sottodirectory per il tuo nome di dominio.
mkdir /var/mail/vhosts mkdir /var/mail/vhosts/example.com
Quindi, crea un utente vmail e un gruppo e assegna la proprietà delle directory all'utente vmail.
groupadd -g 5000 vmail useradd -r -g vmail -u 5000 vmail -d /var/mail/vhosts -c "virtual mail user" chown -R vmail:vmail /var/mail/vhosts/
Quindi, modifica il file di configurazione principale di Dovecot e abilita i servizi di sicurezza IMAP e POP3:
nano /etc/dovecot/conf.d/10-master.conf
Trova le seguenti righe:
inet_listener imaps { #port = 993 #ssl = yes }
E sostituiscili con i seguenti:
inet_listener imaps { port = 993 ssl = yes }
Nello stesso file, trova le seguenti righe:
inet_listener pop3s { #port = 995 #ssl = yes }
E sostituiscili con i seguenti:
inet_listener pop3s { port = 995 ssl = yes }
Quindi, trova le seguenti righe:
service lmtp { unix_listener lmtp { #mode = 0666 }
E sostituiscili con i seguenti:
service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { mode = 0600 user = postfix group = postfix }
Quindi, trova le seguenti righe:
service auth { # Postfix smtp-auth #unix_listener /var/spool/postfix/private/auth { # mode = 0666 #} }
E sostituiscili con i seguenti:
service auth { ... #Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 user=postfix group=postfix }
Salva e chiudi il file quando hai finito.
Quindi, imposta il processo di autenticazione di Dovecot modificando il file /etc/dovecot/conf.d/10-auth.conf:
nano /etc/dovecot/conf.d/10-auth.conf
Decommenta la seguente riga:
disable_plaintext_auth = yes
Nello stesso file, trova la seguente riga:
auth_mechanisms = plain
E sostituiscilo con il seguente:
auth_mechanisms = plain login
Quindi, commenta la riga seguente per disabilitare il comportamento predefinito di Dovecot per l'autenticazione degli utenti.
#!include auth-system.conf.ext
Quindi, decommenta la riga seguente per abilitare la configurazione del file di password.
!include auth-passwdfile.conf.ext
Salva e chiudi il file quando hai finito.
Quindi, modifica il file /etc/dovecot/conf.d/auth-passwdfile.conf.ext :
nano /etc/dovecot/conf.d/auth-passwdfile.conf.ext
Modifica il file come mostrato di seguito:
passdb { driver = passwd-file args = scheme=PLAIN username_format=%u /etc/dovecot/dovecot-users } userdb { driver = static args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n }
Salva e chiudi il file.
Quindi, crea un file di password per l'utente a cui desideri assegnare un account e-mail:
nano /etc/dovecot/dovecot-users
Aggiungi le seguenti righe:
[email protected]:[email protected]
Salva e chiudi il file.
Passaggio 7:configurare Dovecot per utilizzare Let's Encrypt SSL
Successivamente, dovrai configurare Dovecot per funzionare con SSL. Puoi farlo modificando il file /etc/dovecot/conf.d/10-ssl.conf:
nano /etc/dovecot/conf.d/10-ssl.conf
Trova la seguente riga:
ssl = yes
Sostituiscilo con il seguente:
ssl = required
Quindi, trova le seguenti righe:
#ssl_cert = </etc/dovecot/dovecot.pem #ssl_key = </etc/dovecot/private/dovecot.pem
E sostituiscili con i seguenti:
ssl_cert = </etc/letsencrypt/live/email.example.com/fullchain.pem ssl_key = </etc/letsencrypt/live/email.example.com/privkey.pem
Salva e chiudi il file al termine, quindi riavvia i servizi Postfix e Dovecot per applicare le modifiche alla configurazione:
systemctl restart postfix systemctl restart dovecot
Fase 8 – Installa e configura Roundcube
apt-get install roundcube
Durante l'installazione verrà richiesto di configurare il database. Scegli l'opzione desiderata e premi Invio per completare l'installazione.
Successivamente, dovrai configurare l'host virtuale Apache per Roundcube. Puoi farlo modificando il file /etc/apache2/sites-enabled/000-default.conf:
nano /etc/apache2/sites-enabled/000-default.conf
Modifica il file come mostrato di seguito:
<VirtualHost *:80> Alias /mail /usr/share/roundcube ServerAdmin [email protected] DocumentRoot /var/www/html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Salva e chiudi il file, quindi riavvia il servizio Web Apache per applicare le modifiche:
systemctl restart apache2
Fase 9:accedi a Roundcube Webmail
Ora apri il tuo browser web e digita l'URL hhttp://email.example.com/mail. Verrai reindirizzato alla pagina di accesso di Roundcube:
Fornisci il nome utente e la password che hai definito nel file della password di Dovecot e fai clic su Accedi pulsante. Dovresti vedere la dashboard predefinita di Roundcube nella pagina seguente:
Conclusione
Congratulazioni! Hai installato e configurato correttamente un server di posta con Postfix, Dovecot e Roundcube. Ora puoi inviare e ricevere e-mail dalla dashboard webmail di Roundcube. Pronto per iniziare con Postfix, Dovecot e Roundcube? Provalo oggi stesso su un account di hosting VPS di Atlantic.Net!
Scopri di più sui nostri servizi di hosting VPS e sui server privati virtuali.