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

4 Installazione del primo server di posta
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 sarà impostata in modo errato da Debian.
4.1 Configurare il nome host
Il nome host del tuo server dovrebbe essere un sottodominio come “mx1.example.com”. Non usare 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 incluso dominio - spazio - parte di sottodominio”. Per il nostro nome host mx1.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 server corretto:
127.0.1.1 mx1.example.com mx1
# 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 gli 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 di sottodominio, nel nostro caso:
mx1Infine, 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@mx1:~$ hostname
mx1
root@mx1:~$ hostname -f
mx1.example.com4.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à completamente il tuo server!
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 inizierà ora.
Quando l’installazione e la configurazione dei pacchetti sono completate, verrà mostrata la password root per MySQL su mx1. Scrivila (insieme al nome del server, per evitare 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 lingua (en,de) [en]: <-- Premi invio
Modalità di installazione (standard,esperto) [standard]: <-- esperto
Nome host completamente qualificato (FQDN) del server, ad es. server1.domain.tld [mx1.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 invitato a inserire informazioni che saranno incorporate
nel tuo certificato di richiesta.
Ciò che stai per inserire è ciò che viene chiamato un Nome Distinto o DN.
Ci sono diversi campi ma puoi lasciare alcuni vuoti
Per alcuni campi ci sarà un valore predefinito,
Se inserisci '.', il campo sarà lasciato vuoto.
-----
Nome del Paese (codice di 2 lettere) [AU]: <-- Premi invio
Nome dello Stato o della Provincia (nome completo) [Some-State]: <-- Premi invio
Nome della Località (ad es., città) []: <-- Premi invio
Nome dell'Organizzazione (ad es., azienda) [Internet Widgits Pty Ltd]: <-- Premi invio
Nome dell'Unità Organizzativa (ad es., sezione) []: <-- Premi invio
Nome Comune (ad 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
Saltando 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
Saltando Amavisd
Configurazione di Rspamd
Configurazione di Getmail
Configurazione di Jailkit
Configurazione di Pureftpd
Configurare il Server DNS (y,n) [y]: <-- n
L'opzione Web Server deve essere abilitata quando vuoi eseguire un web server o quando questo nodo deve ospitare l'interfaccia ISPConfig.
Configurare il Web Server (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
Saltando 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 del Metronome XMPP Server (y,n) [n]: <-- Premi Invio
Saltando Metronome XMPP Server
Configurazione di Fail2ban
Installa l'interfaccia Web di ISPConfig (y,n) [n]: <-- Premi Invio
Vuoi creare certificati SSL per il tuo server? (y,n) [y]: <-- Premi Invio
Controllando / creando certificato per mx1.example.com
Utilizzando il percorso del certificato /etc/letsencrypt/live/mx1.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, primo sicuro lungo 2048 bit, 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] Attenzione: 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! 4.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-mx1
doveadm_port = 12345
replication_max_conns = 50
ssl_client_ca_dir = /etc/ssl/certs
# Il processo replicatore dovrebbe essere avviato all'avvio, in modo da poter 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 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:mx2.example.com
}Sostituisci doveadm_password con la tua password - rendila una stringa lunga e casuale per motivi di sicurezza.
Sostituisci
mail_replica = tcps:mx2.example.comcon il tuo nome host di mx2.
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 dovecot4.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 verificarla quando aggiorni ISPConfig.
Ora andremo ad aggiungere un sito per questo server in ISPConfig. Vai su Siti -> Aggiungi nuovo sito e aggiungi il sito “mx1.example.com”. Assicurati di crearlo sul server corretto (mx1.example.com). Disabilita il sottodominio automatico e abilita SSL + Let’s Encrypt. Poi, vai alle 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://mx2.example.comSostituisci mx2.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 apache24.5 Sicurezza del server di posta 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 server di posta: https://www.howtoforge.com/securing-your-ispconfig-3-managed-mailserver-with-a-valid-lets-encrypt-certificate/
4.6 Configurazione del firewall
L’ultima cosa da fare è configurare il nostro firewall.
Accedi all’interfaccia ISPConfig e vai su Sistema -> Firewall. Poi clicca su “Aggiungi nuovo record firewall”.
Assicurati di selezionare il server corretto. Per il nostro server di posta, 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 viene utilizzata per MySQL, e la porta 12345, che viene 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 tcpRicevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.