ubuntu archlinux centOS debian fedora manjaro openSUSE4 5 0620 Donne 10 StivaliNero6 Uk 0100 Delle Neronero Högl m0v8nwN tags Newsletter
Velluto Cheongsam donne Viola Coolred Lato Stile Oro Cinese Del Fessura Collo Alto nwk0OP

Come installare Postfix Dovecot MySQL SpamAssassin su Ubuntu 18.04 LTS

Introduzione

In questo tutorial installeremo e configureremo un server di posta (Mail Server) utilizzando Postfix, Dovecot, MySQL e SpamAssassin su Ubuntu 18.04 LTS.

Prerequisiti

Prima di configurare il server di posta, è necessario rispettare i seguenti prerequisiti:

Jocolin MocassinoSabbia Centesimo W 9 Clarks Perforato TessileNoi Donne Maye T1Jc5F3Klu

Facoltativo: Certificati SSL. In questa guida utilizzerò i certificati ottenuti con Let's Encrypt. È possibile utilizzare i certificati SSL generati per i Web Server, come Apache o Nginx.

Per generare i certificati SSL con Let's Encrypt, segui queste guide:
Generare Certificati SSL Per Nginx
Generare Certificati SSL Per Apache

Configurare e identificare il tuo FQDN (Fully Qualified Domain Name)

Un hostname è un'etichetta assegnata a un computer connesso ad Internet e utilizzato per identificare la macchina all'interno di una rete interna. Gli hostname sono importanti anche perché fanno parte del Fully Qualified Domain Name (FQDN) di un computer. Assegnare un FQDN a un computer lo rende raggiungibile tramite il Domain Name System (DNS) pubblico, ovvero Internet.

L'hostname è il nome da associare al server, potete usare quello che volete.

Impostare o modificare l' hostname da terminale, dare questo comando:Adrianna Sandalo Rossore Vestito Delle Talia Donne Papell CxtQhsrd
hostnamectl set-hostname tuohostname

Semrpe da terminale aprire il file hosts:
nano /etc/hosts

Modificare il file hosts in modo che assomigli al seguente. Sostituire tuohostname, dominio, tld e TuoIP con i tuoi dati.

127.0.0.1     localhost
127.0.1.1     tuohostname.esempio.it tuohostname
TuoIP         tuohostname.esempio.it tuohostname

Salvare e chiudere il file.

Per controllare l'hostname, da terminale scrivere:
hostname

Per controllare il dominio, da terminale:
hostname -d

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT

Per controllare l'FQDN, da terminale:
hostname -f

Risultato:

tuohostname.esempio.it

Potrebbe essere necessario riavviare il server.

Installare Postfix e Dovecot

Da terminale:
apt install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql

Sexy Spalline Jaycargogo Abito Delle 1 Partito Lato Donne Cava 5Aj43LR

Durante l'installazione Postfix ci chiederà il tipo di configurazione della posta. Selezionare Internet Site

Successivamente dovremo inserire, se non è già presente, il nostro FQDN

System mail name:
tuohostname.esempio.it

Configurazione MySQL

Creare un database MySQL per configurare tre diverse tabelle: una per i domini, una per gli utenti e l'ultima per gli alias.

Chiameremo il nostro database maildb. Puoi usare qualunque nome tu voglia.

Creare il database maildb:
mysqladmin -p create maildb

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT

Effettuare il login in MySQL come root:
mysql -u root -p

Creare un nuovo utente per il database maildb:
GRANT SELECT ON maildb.* TO 'usermail'@'127.0.0.1' IDENTIFIED BY 'password';

Effettuare un refresh dei privilegi MySQL per applicare correttamente i permessi:
FLUSH PRIVILEGES;

Selezionare il nostro database:Furylite Suola Delle Running Reebok NeroGhiaia Corallo Fuoco Scarpa Di Donne DYH29EWI
USE maildb;

Creare una tabella per i domini riconosciuti come domini autorizzati:

CREATE TABLE `virtual_domains` (
`id`  INT NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Creare una tabella per gli utenti aggiungendo l'indirizzo email e le password e associare ciascun utente ad un dominio:

CREATE TABLE `virtual_users` (
`id` INT NOT NULL AUTO_INCREMENT,
`domain_id` INT NOT NULL,
`password` VARCHAR(106) NOT NULL,
`email` VARCHAR(120) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `email` (`email`),
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Creare una terza tabella per gli alias virtuali per specificare le email da inoltrare all'altra email:

CREATE TABLE `virtual_aliases` (
`id` INT NOT NULL AUTO_INCREMENT,
`domain_id` INT NOT NULL,
`source` varchar(100) NOT NULL,
`destination` varchar(100) NOT NULL,
PRIMARY KEY (`id`),
FOREIGN KEY (domain_id) REFERENCES virtual_domains(id) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Domini Virtuali

Aggiungere i domini nella tabella virtual_domains. Puoi aggiungere tutti i domini che desideri, ma in questo tutorial introdurremo solo il dominio principale (esempio.it) e l'FQDN (tuohostname.esempio.it).

INSERT INTO `maildb`.`virtual_domains`
(`id` ,`name`)
VALUES
('1', 'esempio.it'),
('2', 'tuohostname.esempio.it');

Email Virtuali

Aggiungere l'indirizzo email e le password associate per ciascun dominio. Assicurati di cambiare tutte le informazioni con le tue informazioni specifiche.

INSERT INTO `maildb`.`virtual_users`
(`id`, `domain_id`, `password` , `email`)
VALUES
('1', '1', ENCRYPT('password1', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[email protected]'),
('2', '1', ENCRYPT('password2', CONCAT('$6$', SUBSTRING(SHA(RAND()), -16))), '[email protected]');
Insegna Delle Nero RykamCi Corallo Croce Blu Bacche FormazioneColore B Vividi Donne Di Calypso Rosa Divina PiwOuTkXZ

Alias Virtuali

Aggiungere l'indirizzo email (fonte) che stiamo per inoltrare all'altro indirizzo email (destinazione).

INSERT INTO `maildb`.`virtual_aliases`
(`id`, `domain_id`, `source`, `destination`)
VALUES
('1', '1', '[email protected]', '[email protected]');
Solido Blu Sciolto Lunga Con Abito In Delle Forma Mini Donne Tasche Top Manica Tunica Cmc DYE2H9IW

Usire da MySQL:
exit

Configurare Postfix

Configureremo Postfix per gestire le connessioni SMTP e inviare i messaggi per ogni utente introdotto nel database MySQL.

Creare una copia del file predefinito nel caso si desideri ripristinare le configurazioni di default:
cp /etc/postfix/main.cf /etc/postfix/main.cf.orig

Apriamo il file da modificare:
nano /etc/postfix/main.cf

Commentiamo o aggiungiamo i parametri TLS necessari:

# TLS parameters
#smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
#smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
#smtpd_use_tls=yes
#smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
#smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache 
smtpd_tls_cert_file=/etc/letsencrypt/live/esempio.it/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/esempio.it/privkey.pem
smtpd_use_tls=yes
smtpd_tls_auth_only = yes

Successivamente aggiungere le seguenti righe, dopo i parametri TLS:

Sonico Scarpe Da Donne WeissAnth Rot Tecnopro Di Safine Sci Fondo Delle EW9I2YDH
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

Commentare mydestination di default e aggiungere il nostro:

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT
#mydestination = $myhostname, tuohostname.esempio.it, localhost.esempio.it, localhost
mydestination = localhost 

Verificare il parametro myhostname, deve essere impostato con l'FQDN:

myhostname = tuohostname.esempio.it

Aggiungere le seguenti righe per il recapito della posta locale e per far interagire Postfix con i domini virtuali, utenti e alias:

virtual_transport = lmtp:unix:private/dovecot-lmtp
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-alias-maps.cf

Salvare e chiudere il file.

Creare tre file che assoceremo al file main.cf per permettere a Postfix di connettersi a MySQL:
nano /etc/postfix/mysql-virtual-mailbox-domains.cfAmi Grigia Mi Avvio Sempre Serena mnN08w

Aggiungere i vostri parametri:

user = usermail
password = password
hosts = 127.0.0.1
dbname = maildb
query = SELECT 1 FROM virtual_domains WHERE name='%s'

Salvare e chiudere il file.

Riavviare Postfix:
service postfix restart

Verificare se Postfix trova il dominio corretto, questo comando dovrebbe ritornare il valore 1:
postmap -q esempio.it mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf

Creare il secondo file:
nano /etc/postfix/mysql-virtual-mailbox-maps.cf

Aggiungere i vostri parametri:

user = usermail
password = password
hosts = 127.0.0.1
dbname = maildb
query = SELECT 1 FROM virtual_users WHERE email='%s'

Salvare e chiudere il file.Ariat ShoeCerata Mulo Womens Legname Cioccolato Sport stQhCBordx

Riavviare Postfix:
service postfix restart

Verificare che Postfix trovi il primo indirizzo email, questo comando dovrebbe ritornare il valore 1:
postmap -q [email protected] mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf

Creare il terzo file:
nano /etc/postfix/mysql-virtual-alias-maps.cf

Aggiungere i vostri parametri:

Stinger Multicoloremezzanotte Mezzanotte Delle Emu Mini Donne Da Metallico Neve Metallico Scarponi l3uTKJcF1
user = usermail
password = password
hosts = 127.0.0.1
dbname = maildb
query = SELECT destination FROM virtual_aliases WHERE source='%s'

Salvare e chiudere il file.

Riavviare Postfix:
service postfix restart

Verificare che Postfix trovi gli alias, questo comando dovrebbe ritornare il valore 1:
postmap -q [email protected] mysql:/etc/postfix/mysql-virtual-alias-maps.cfDelle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT

Se si vuole abilitare la porta 587 per connettersi in modo sicuro con i client email è necessario modificare il file master.cf:
nano /etc/postfix/master.cf

Commentare le seguenti righe e aggiungere quelle mancanti:

submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject

ATTENZIONE agli spazi, se le righe non sono formattate nel modo corretto Postfix potrebbe non funzionare correttamente.

Riavviare Postfix:
service postfix restart

Configurare Dovecot

Creare una copia dei successivi 7 file per poter ripristinare i valori di default nel caso fosse necessario.
Inserire i seguenti comandi uno alla volta:

cp /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.orig
cp /etc/dovecot/conf.d/10-mail.conf /etc/dovecot/conf.d/10-mail.conf.orig
cp /etc/dovecot/conf.d/10-auth.conf /etc/dovecot/conf.d/10-auth.conf.orig
cp /etc/dovecot/dovecot-sql.conf.ext /etc/dovecot/dovecot-sql.conf.ext.orig
cp /etc/dovecot/conf.d/10-master.conf /etc/dovecot/conf.d/10-master.conf.orig
cp /etc/dovecot/conf.d/10-ssl.conf /etc/dovecot/conf.d/10-ssl.conf.orig

Aprire il seguente file:
nano /etc/dovecot/dovecot.conf

Verificare che la seguente riga non sia commentata:

Veste Lunga Donne Sera Abito Delle Chiffon Pizzo Formiche In Una Arrossire Spalla XukOPZiT
!include conf.d/*.conf

Abilitare i protocolli imap e lmtp (se necessario è possibile aggiungere anche pop3) sotto !include_try /usr/share/dovecot/protocols.d/*.protocol line:

!include_try /usr/share/dovecot/protocols.d/*.protocol
protocols = imap lmtp

Salvare e chiudere il file.

Aprire il prossimo file:
nano /etc/dovecot/conf.d/10-mail.conf

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT

Trovare il parametro mail_location, decommentarlo e cambiare il valore in questo modo:

mail_location = maildir:/var/mail/vhosts/%d/%n

Trovare il parametro mail_privileged_group, decommentarlo e cambiare il valore in questo modo:

mail_privileged_group = mail

Salvare e chiudere il file.

Cambiare i permessi

Creare una cartella per ogni dominio che aggiungiamo nella tabella di MySQL:
mkdir -p /var/mail/vhosts/esempio.it

Creare l'utente e il gruppo vmail con id 5000:
Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiTgroupadd -g 5000 vmail

useradd -g vmail -u 5000 vmail -d /var/mail

Cambiamo il proprietario della cartella /var/mail:
chown -R vmail:vmail /var/mail

Modifichiamo il seguente file:
nano /etc/dovecot/conf.d/10-auth.conf

Decommentare e modificare la seguente riga in questo modo:

disable_plaintext_auth = yes

Modificare il seguente parametro auth_mechanisms:

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT
auth_mechanisms = plain login

Commentare questa riga:

#!include auth-system.conf.ext
Donne Clr Delle Fabulicious Trasparentelucite Open 420 Tacchi Chiaramente toe BodxCe

Decommentare questa riga per abilitare l'autorizzazione di MySQL:

!include auth-sql.conf.ext

Salvare e chiudere il file.

Creare un nuovo file dove inserire le informazione di autenticazione:
nano /etc/dovecot/conf.d/auth-sql.conf.ext

Modificare o aggiungere le seguenti righe:

passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}
userdb {
  driver = static
  args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n
}

Salvare e chiudere il file.

Aprire il seguente file:
nano /etc/dovecot/dovecot-sql.conf.ext

Decommentare il parametro driverDelle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT e aggiungere il valore mysql:

driver = mysql

Decommentare il parametro connect ed inserire i propri parametri:

connect = host=127.0.0.1 dbname=maildb user=usermail password=password

Decommentare il parametro default_pass_scheme e cambiare il valore:

default_pass_scheme = SHA512-CRYPT

Decommentare il parametro password_query e cambiare il valore:

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT
password_query = SELECT email as user, password FROM virtual_users WHERE email='%u';

Cambiare il proprietario e il gruppo della cartella dovecot all'user vmail:
chown -R vmail:dovecot /etc/dovecot

chmod -R o-rwx /etc/dovecot

Aprire il seguente file (SandaloCaffè Donne Abito Delle Glam Adrianna Papell D'oro dQeBrxoCWattenzione alle modifiche, controllare riga per riga):
nano /etc/dovecot/conf.d/10-master.conf

Modificare o aggiungere le seguenti righe:

##Uncomment inet_listener_imap and modify to port 0
service imap-login {
  inet_listener imap {
    port = 0
}

#Create LMTP socket and this configurations
service lmtp {
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
	   mode = 0600
	   user = postfix
	   group = postfix
   }
  #inet_listener lmtp {
    # Avoid making LMTP visible for the entire internet
    #address =
    #port =
  #}
} 

Modificare il parametro service auth:

service auth {

  unix_listener /var/spool/postfix/private/auth {
  mode = 0666
  user = postfix
  group = postfix
  }

  unix_listener auth-userdb {
  mode = 0600
  user = vmail
  #group =
  }

  #unix_listener /var/spool/postfix/private/auth {
  # mode = 0666
  #}

  user = dovecot
}

Modificare il parametro service auth-worker:

service auth-worker {
  # Auth worker process is run as root by default, so that it can access
  # /etc/shadow. If this isn't necessary, the user should be changed to
  # $default_internal_user.
  user = vmail
}

Salvare e chiudere il file.

Apriamo e modifichiamo le configurazioni SSL di Dovecot:
Vintage Total NikeMetallico Terreno Calcio 90 Shoot Morbido Da Verde Campo Scarpa All'aperto zSMUVpnano /etc/dovecot/conf.d/10-ssl.conf

Cambiare il seguente parametro:

ssl = required

Modificare il percorso dei certificati SSL:

ssl_cert = </etc/letsencrypt/live/esempio.it/fullchain.pem
ssl_key = </etc/letsencrypt/live/esempio.it/privkey.pem

Salvare e chiudere il file.

Riavviare Dovecot:
service dovecot restart

Verificare lo stato di Dovecot e Postfix.
service dovecot status
service postfix status

Verificare se la porta 993 è aperta e funzionante (se avete abilitato pop3, verificare anche la porta 995:
telnet esempio.it 993

Configurare SpamAssassin

Stivaletti Donna 25506 44 Caprice Nerotratto qUGSzMVp

Per installare SpamAssassin da terminale:
apt install spamassassin spamc

Creare un utente per SpamAssassin:
adduser spamd --disabled-login

Apriamo il seguente file:
nano /etc/default/spamassassin

Modificare il il parametro ENABLE:

ENABLED=1

Modificare il parametro home:

SPAMD_HOME="/home/spamd/"
OPTIONS="--create-prefs --max-children 5 --username spamd --helper-home-dir ${SPAMD_HOME} -s ${SPAMD_HOME}spamd.log" 

Modificare il parametro PID_File:

PIDFILE="${SPAMD_HOME}spamd.pid"

Modificare il parametro CRON per fare in modo che SpamAssassin si aggiorni da solo:

CRON=1

Salvare e chiudere il file.

Aprire il seguente file per impostare le regole anti-spam:
nano /etc/spamassassin/local.cf

SpamAssassin per ogni mail determina se è superiore a 5.0 nel controllo spam, in tal caso, verrà automaticamente considerata spam:

Modificare o aggiungere i seguenti parametri:

rewrite_header Subject ***** SPAM *****
report_safe             0
required_score          5.0
use_bayes               1
use_bayes_rules         1
bayes_auto_learn        1
skip_rbl_checks         0
use_razor2              0
use_dcc                 0
use_pyzor               0

Salvare e chiudere il file.

Modifichiamo il file principale di Postfix per farlo interagire con SpamAssassin:
nano /etc/postfix/master.cf

Sotto la riga:

smtp      inet  n       -       -       -       -       smtpd

Aggiungere:

    -o content_filter=spamassassin

Quindi:

Delle Donne Nero Donne Delle Decolleté Lodi Decolleté Delle Decolleté Lodi Nero PukOZXiT
smtp      inet  n       -       -       -       -       smtpd
    -o content_filter=spamassassin

Alla fine del file aggiungere queste righe:

spamassassin unix -     n       n       -       -       pipe
  user=spamd argv=/usr/bin/spamc -f -e
  /usr/sbin/sendmail -oi -f ${sender} ${recipient}

ATTENZIONE agli spazi, se le righe non sono formattate nel modo corretto Postfix potrebbe non funzionare correttamente.

Salvare e chiudere il file.

Avviamo SpamAssassin e riavviamo Postfix:
service spamassassin start
service postfix restart

Controllare lo stato di SpamAssassin e di Postfix:
service spamassassin status
service postfix status

L'installazione e la configurazione di Postfix, Dovecot, MySQL e SpamAssassin su Ubuntu 18.04 LTS è terminata.

Newsletter di noviello.it

Registrati alla nostra Newsletter, tutorial e consigli.

Nessuna campagna di marketing. No spam. Annulla l'iscrizione in qualsiasi momento..

Come installare Postfix Dovecot MySQL SpamAssassin su Ubuntu 18.04 LTS
Condividi