Configurazione Server · 11 min read · Sep 22, 2025
Configurazione perfetta di ISPConfig Multiserver su Ubuntu 20.04 e Debian 10 - Pagina 4

5 Installazione del secondo mailserver
Accedi come root o esegui
su -per diventare utente root sul tuo server prima di procedere. IMPORTANTE: Devi usare ‘su -‘ e non solo ‘su’, altrimenti la tua variabile PATH è impostata in modo errato da Debian.
5.1 Configurare il nome host
Il nome host del tuo server dovrebbe essere un sottodominio come “mx2.example.com”. Non utilizzare un nome di dominio senza una parte di sottodominio come “example.com” come nome host, poiché questo causerà problemi in seguito con la tua configurazione della posta. Prima, dovresti controllare il nome host in /etc/hosts e cambiarlo quando necessario. La riga dovrebbe essere: “Indirizzo IP - spazio - nome host completo incl. dominio - spazio - parte del sottodominio”. Per il nostro nome host mx2.example.com, il file dovrebbe apparire così:
nano /etc/hosts127.0.0.1 localhost.localdomain localhost
# Questa riga dovrebbe essere cambiata su ogni nodo al nome del server corretto:
127.0.1.1 mx2.example.com mx2
# Queste righe sono le stesse su ogni nodo:
10.0.64.12 panel.example.com panel
10.0.64.13 web01.example.com web01
10.0.64.14 mx1.example.com mx1
10.0.64.15 mx2.example.com mx2
10.0.64.16 ns1.example.com ns1
10.0.64.17 ns2.example.com ns2
10.0.64.18 webmail.example.com webmail
# Le seguenti righe sono desiderabili per host compatibili con IPv6
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersCome puoi vedere, abbiamo aggiunto anche i nomi host dei nostri altri server, in modo che possano comunicare attraverso la rete interna in seguito.
Poi modifica il file /etc/hostname:
nano /etc/hostnameDovrebbe contenere solo la parte del sottodominio, nel nostro caso:
mx2Infine, riavvia il server per applicare la modifica:
systemctl rebootAccedi di nuovo e controlla se il nome host è corretto ora con questi comandi:
hostname
hostname -fL’output dovrebbe essere simile a questo:
root@mx2:~$ hostname
mx2
root@mx2:~$ hostname -f
mx2.example.com5.2 Installazione di ISPConfig
Ora possiamo eseguire l’autoinstallatore per tutti i pacchetti e ISPConfig:
wget -O - https://get.ispconfig.org | sh -s -- --no-dns --no-roundcube --no-mailman --use-php=system --use-unbound --interactiveDopo un po’, vedrai:
WARNING! Questo script riconfigurerà il tuo server completo!
Dovrebbe essere eseguito su un server appena installato e tutta la configurazione attuale che hai fatto sarà molto probabilmente persa!
Digita 'yes' se vuoi davvero continuare:Rispondi “yes” e premi invio. L’installatore ora inizierà.
Quando l’installazione e la configurazione dei pacchetti sono completate, la password root per MySQL su mx2 verrà mostrata. Scrivila (insieme al nome del server, per prevenire confusione in seguito).
Ora dovremo rispondere ad alcune domande poiché stiamo usando la modalità interattiva. Questo è necessario poiché questo server sarà aggiunto alla tua configurazione multiserver.
[INFO] Installazione di ISPConfig3.
[INFO] La tua password root MySQL è: kl3994aMsfkkeE
--------------------------------------------------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
|_| |_|\__/ / | | \__/\ (_) | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
--------------------------------------------------------------------------------
>> Configurazione iniziale
Sistema Operativo: Debian 10.0 (Buster) o compatibile
Seguiranno alcune domande per la configurazione primaria, quindi fai attenzione.
I valori predefiniti sono tra [parentesi] e possono essere accettati con .
Digita "quit" (senza virgolette) per fermare l'installatore.
Seleziona la lingua (en,de) [en]: <-- Premi invio
Modalità di installazione (standard,esperto) [standard]: <-- esperto
Nome host completamente qualificato (FQDN) del server, es. server1.domain.tld [mx2.example.com]: <-- Premi Invio
Nome host del server MySQL [localhost]: <-- Premi Invio
Porta del server MySQL [3306]: <-- Premi Invio
Nome utente root MySQL [root]: <-- Premi Invio
Password root MySQL []: <-- Inserisci la password MySQL che lo script ti ha appena dato
Database MySQL da creare [dbispconfig]: <-- Premi Invio
Charset MySQL [utf8]: <-- Premi Invio
Le prossime due domande riguardano l'utente e la password del database interno di ISPConfig.
È consigliabile accettare i valori predefiniti che sono 'ispconfig' come nome utente e una password casuale.
Se usi una password diversa, usa solo numeri e caratteri per la password.
Nome utente del database mysql ISPConfig [ispconfig]: <-- Premi Invio
Password del database mysql ISPConfig [aakl203920459853sak20284204]: <-- Premi Invio
Questo server deve unirsi a una configurazione multiserver ISPConfig esistente (y,n) [n]: <-- y
Nome host del server master MySQL []: <-- panel.example.com
Porta del server master MySQL []: <-- Premi Invio
Nome utente root del server master MySQL [root]: <-- Premi Invio
Password root del server master MySQL []: <-- la password che hai dato all'utente root esterno sul server master.
Nome del database del server master MySQL [dbispconfig]: <-- Premi Invio
Aggiunta del record del server ISPConfig al database.
Configurare la posta (y,n) [y]: <-- premi invio
Configurazione di Postgrey
Configurazione di Postfix
Generazione di una chiave privata RSA
......................................................................++++
....................++++
scrittura della nuova chiave privata in 'smtpd.key'
-----
Stai per essere chiesto di inserire informazioni che verranno incorporate
nel tuo certificato di richiesta.
Quello che stai per inserire è ciò che viene chiamato un Distinguished Name o DN.
Ci sono diversi campi ma puoi lasciare alcuni vuoti
Per alcuni campi ci sarà un valore predefinito,
Se inserisci '.', il campo verrà lasciato vuoto.
-----
Nome del Paese (codice a 2 lettere) [AU]: <-- Premi invio
Nome dello Stato o della Provincia (nome completo) [Some-State]: <-- Premi invio
Nome della Località (es. città) []: <-- Premi invio
Nome dell'Organizzazione (es. azienda) [Internet Widgits Pty Ltd]: <-- Premi invio
Nome dell'Unità Organizzativa (es. sezione) []: <-- Premi invio
Nome Comune (es. FQDN del server o IL TUO nome) []: <-- Premi invio
Indirizzo Email []: <-- Premi invio
[WARN] autodetect per Mailman fallito
Forza la configurazione di Mailman (y,n) [n]: <-- Premi invio
Salta Mailman
Configurazione di Dovecot
Creazione di un nuovo file DHParams, ci vorranno diversi minuti. Non interrompere lo script.
Configurazione di Spamassassin
[WARN] autodetect per Amavisd fallito
Forza la configurazione di Amavisd (y,n) [n]: <-- Premi invio
Salta Amavisd
Configurazione di Rspamd
Configurazione di Getmail
Configurazione di Jailkit
Configurazione di Pureftpd
Configurare il server DNS (y,n) [y]: <-- n
L'opzione del server Web deve essere abilitata quando vuoi eseguire un server web o quando questo nodo deve ospitare l'interfaccia ISPConfig.
Configurare il server Web (y,n) [y]: <-- Premi invio
Configurazione di Apache
Configurazione di vlogger
[WARN] autodetect per OpenVZ fallito
Forza la configurazione di OpenVZ (y,n) [n]: <-- Premi Invio
Salta OpenVZ
Configurare il server Firewall (y,n) [y]: <-- Premi Invio
Configurazione del Firewall di Ubuntu
[WARN] autodetect per Metronome XMPP Server fallito
Forza la configurazione di Metronome XMPP Server (y,n) [n]: <-- Premi Invio
Salta Metronome XMPP Server
Configurazione di Fail2ban
Installa l'interfaccia Web ISPConfig (y,n) [n]: <-- Premi Invio
Vuoi creare certificati SSL per il tuo server? (y,n) [y]: <-- Premi Invio
Controllo / creazione del certificato per mx2.example.com
Utilizzando il percorso del certificato /etc/letsencrypt/live/mx2.example.com
Utilizzando apache per la convalida del certificato
Collegare i certificati SSL di ISPConfig a Postfix? (y,n) [y]: <-- Premi Invio
Collegare i certificati SSL di ISPConfig a Pure-FTPd? La creazione del file dhparam potrebbe richiedere del tempo. (y,n) [y]: <-- Premi Invio
Generazione dei parametri DH, lungo 2048 bit, primo sicuro, generatore 2
Questo richiederà molto tempo
......................+...........................................+...............
Configurazione di Apps vhost
Configurazione di DBServer
Installazione del crontab di ISPConfig
nessun crontab per getmail
Rilevamento degli indirizzi IP
Riavvio dei servizi ...
Installazione completata.
[INFO] Aggiunta delle versioni php a ISPConfig.
[INFO] Controllo che tutti i servizi siano in esecuzione.
[INFO] mysql: OK
[INFO] clamav-daemon: OK
[INFO] postfix: OK
[INFO] bind9: OK
[INFO] pureftpd: OK
[INFO] apache2: OK
[INFO] rspamd: OK
[INFO] redis-server: OK
[INFO] dovecot: OK
[INFO] Installazione pronta.
[INFO] La tua password root MySQL è: kl3994aMsfkkeE
[INFO] Avviso: Si prega di eliminare i file di log in /tmp/ispconfig-ai/var/log/setup-* una volta che non ne hai più bisogno perché contengono le tue password! 5.3 Configurazione della replica per Dovecot
Useremo dsync per sincronizzare le email tra mx1 e mx2, per ridondanza.
Le impostazioni personalizzate per dovecot devono essere memorizzate in /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master in modo da non perderle durante l’aggiornamento di ISPConfig.
nano /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.masterMetti quanto segue:
protocol imap {
mail_plugins = $mail_plugins quota imap_quota notify replication
}
protocol pop3 {
mail_plugins = $mail_plugins quota notify replication
}
protocol lda {
mail_plugins = $mail_plugins sieve quota notify replication
}
protocol lmtp {
mail_plugins = $mail_plugins sieve quota notify replication
}
doveadm_password = /(:&p-J:4e%?\@Q-;VSE#3Dmfm[fVK&r-mx2
doveadm_port = 12345
replication_max_conns = 50
ssl_client_ca_dir = /etc/ssl/certs
# Il processo replicatore dovrebbe essere avviato all'avvio, in modo che possa iniziare a replicare gli utenti immediatamente:
service replicator {
process_min_avail = 1
}
# I processi di posta devono avere accesso al fifo e al socket di notifica di replica.
service aggregator {
fifo_listener replication-notify-fifo {
user = vmail
mode = 0666
}
unix_listener replication-notify {
user = vmail
mode = 0666
}
}
# Abilita i comandi di replicatore doveadm
service replicator {
unix_listener replicator-doveadm {
mode = 0666
}
}
# Crea un listener per doveadm-server
service doveadm {
user = vmail
inet_listener {
port = 12345
ssl = yes
}
}
service config {
unix_listener config {
user = vmail
}
}
plugin {
mail_replica = tcps:mx1.example.com
}Sostituisci doveadm_password con la tua password - rendila una stringa lunga e casuale per motivi di sicurezza. Deve essere la stessa su entrambi i server.
Sostituisci
mail_replica = tcps:mx1.example.comcon il tuo nome host di mx1.
Per applicare queste modifiche, copia il file nella cartella dovecot e riavvia dovecot:
cp /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master /etc/dovecot/conf.d/99-ispconfig-custom-config.conf
systemctl restart dovecot5.4 Configurazione della sincronizzazione per Rspamd
Rspamd ha una bella interfaccia web. Configureremo i nostri server come vicini in modo da poter visualizzare le impostazioni, le statistiche e altri dati in un unico pannello.
nano /usr/local/ispconfig/server/conf-custom/install/rspamd_options.inc.masterAggiungi queste righe:
# Configurazione dal modello ISPConfig (deve essere aggiornata se ci sono modifiche)
# Indirizzi locali a questo server.
local_addrs = [
"127.0.0.0/8",
"::1",
];
# Questa lista è generata da ISPConfig, inserisci indirizzi/reti personalizzati in local_networks.inc.
local_networks = "/etc/rspamd/local.d/local_networks.inc";
dns {
nameserver = ["127.0.0.1:53:10"];
}
# Configurazione personalizzata:
neighbours {
mx1 {
host = "https://mx1.example.com:443";
path = "/rspamd/";
}
mx2 {
host = "https://mx2.example.com:443";
path = "/rspamd/";
}
}
# Ultimo aggiornamento: 19-01-2022Sostituisci i nomi host con i nomi host corretti per il tuo server di posta principale e secondario. Questa configurazione dovrebbe essere aggiornata se il modello cambia, quindi assicurati di verificarlo quando aggiorni ISPConfig.
Ora andremo ad aggiungere un sito web per questo server in ISPConfig. Vai su Siti -> Aggiungi nuovo sito web e aggiungi il sito web “mx2.example.com”. Assicurati di crearlo sul server corretto (mx2.example.com). Disabilita il sottodominio automatico e abilita SSL + Let’s Encrypt. Poi, vai su opzioni e incolla questo nella sezione delle direttive Apache:
RewriteEngine On
RewriteRule ^/rspamd$ /rspamd/ [R,L]
RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]
Header set Access-Control-Allow-Origin https://mx1.example.comSostituisci mx1.example.com con il nome host del nameserver secondario.
Infine, dobbiamo abilitare alcuni moduli Apache e riavviare i nostri servizi:
a2enmod proxy_balancer proxy_http
systemctl restart rspamd
systemctl restart apache2Ora andremo a impostare una password per l’interfaccia Rspamd su MX1, che utilizzeremo come interfaccia Web per il nostro cluster Rspamd.
Accedi a ISPConfig come admin e vai su Sistema -> Configurazione Server -> mx1.example.com -> Mail -> Password Rspamd.
Inserisci una nuova password e fai clic su salva. Poi vai su Sistema -> Configurazione Server -> mx2.example.com -> Mail -> Password Rspamd e inserisci la stessa password lì. Aspetta che le modifiche siano propagate. Quando è fatto, puoi accedere a Rspamd con la tua password su https://mx1.example.com/rspamd/ nel tuo browser.
5.5 Sicurezza del mailserver con un certificato SSL valido
Per un funzionamento di DSYNC e Roundcube, è necessario avere un certificato SSL valido per i nomi host utilizzati. Questo certificato non può essere autofirmato. Se intendi utilizzare nomi host aggiuntivi per questo server, come imap.example.com e smtp.example.com, o se l’installatore non è riuscito a creare un certificato valido durante l’installazione, segui questa guida per impostare un certificato valido per il tuo mailserver: https://www.howtoforge.com/securing-your-ispconfig-3-managed-mailserver-with-a-valid-lets-encrypt-certificate/
5.6 Configurazione del firewall
Accedi all’interfaccia ISPConfig e vai su Sistema -> Firewall. Poi fai clic su “Aggiungi nuovo record firewall”.
Assicurati di selezionare il server corretto. Per il nostro mailserver, dobbiamo aprire le seguenti porte:
TCP:
22,25,80,110,143,443,465,587,993,995Nessuna porta UDP deve essere aperta tramite l’interfaccia.
Apriremo anche la porta 3306, che è utilizzata per MySQL, e la porta 12345, che è utilizzata per dsync, ma solo dalla nostra rete locale per motivi di sicurezza. Per farlo, esegui il seguente comando dalla CLI, dopo che la modifica dal pannello ISPConfig è stata propagata (quando il punto rosso è scomparso):
ufw allow from 10.0.64.0/24 to any port 3306 proto tcp
ufw allow from 10.0.64.0/24 to any port 12345 proto tcp5.7 Mirroring MX2 da MX1 in ISPConfig
Per completare la configurazione, devi abilitare il mirroring tra mx1 e mx2. Per farlo, accedi a ISPConfig, vai su Sistema -> mx2.example.com -> “È specchio del Server”. Seleziona mx1.example.com e fai clic su salva.
Il nostro mailserver secondario è ora installato. Nel prossimo passo, installeremo il server DNS principale.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.