GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare un server di posta completo con Postfix, Dovecot e Roundcube su Ubuntu 18.04

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.


Linux
  1. Come installare e configurare Ubuntu Mail Server sulla versione 18.04 LTS

  2. Come installare Spamassassin con Postfix e Dovecot su Ubuntu/Debian Server

  3. Installa il server di posta Postfix e Dovecot su Ubuntu o Debian

  4. Come configurare Apache con MPM Event e PHP-FPM su Ubuntu 20.04

  5. Come configurare un server di posta POP3/IMAP con Dovecot su Ubuntu 18.04

Come installare e utilizzare pgAdmin su Ubuntu 18.04

Come configurare un server FTP con ProFTPD in Ubuntu 18.04

Come configurare un server di posta con Modoboa su Ubuntu 20.04

Come configurare Postfix come server SMTP di solo invio su Ubuntu 20.04

Come impostare e configurare una VPN con OpenVPN su Ubuntu 18.04

Come configurare un server di posta SMTP con Postfix su Ubuntu 18.04