Installazione Server · 3 min read · Sep 30, 2025

Installazione di un cluster Web, Email e MySQL Database su Debian 8.4 Jessie con ISPConfig 3.1

Questo tutorial descrive l’installazione di un server web, email, database e DNS in cluster da utilizzare per ridondanza, alta disponibilità e bilanciamento del carico su Debian 8 con il pannello di controllo ISPConfig 3. La replicazione MySQL Master/Master sarà utilizzata per replicare i database client MySQL tra i server, Unison sarà utilizzato per sincronizzare la /var/www (siti web) e le email saranno sincronizzate con Dovecot.

1 Nota generale

In questa configurazione, ci sarà un server master (che esegue l’interfaccia del pannello di controllo ISPConfig) e un server slave che rispecchia i servizi web (apache), email (postfix e dovecot), dns (bind) e database (MySQL o MariaDB) del server master.

Per installare la configurazione in cluster, abbiamo bisogno di due server con un’installazione minima di Debian 8.4 e la stessa versione di ISPConfig.

Nel mio esempio utilizzo i seguenti nomi host e indirizzi IP per i due server:

Server Master

Nome host: server1.example.tld
Indirizzo IP: 192.168.0.105
Indirizzo IPv6: 2001:db8::1

Server Slave

Nome host: server2.example.tld
Indirizzo IP: 192.168.0.106
Indirizzo IPv6: 2001:db8::2

Dove questi nomi host o indirizzi IP si verificano nei prossimi passaggi di installazione, dovrai cambiarli per corrispondere agli IP e ai nomi host dei tuoi server.

Tutti i comandi devono essere eseguiti come utente root. Se hai bisogno di apportare modifiche in MySQL accedi a MySQL con la password di root per MySQL:

mysql -u root -p

2 Installa il Server Master

Prima dobbiamo installare ISPConfig sul Server Master. Se hai già installato ISPConfig su questo Server, puoi saltare l’installazione (assicurati che l’installazione esistente sia aggiornata).

Installa ISPConfig sul Server Master secondo The Perfect Server - Debian 8.4 Jessie (Apache2, BIND, Dovecot, ISPConfig 3.1).

Aggiungi il Server Slave al file /etc/hosts

vi /etc/hosts

in modo che appaia così:

127.0.0.1       localhost
192.168.0.105   server1.example.tld server1  
2001:db8::1     server1.example.tld server1
192.168.0.106   server2.example.tld  
2001:db8::2     server2.example.tld

# Le seguenti righe sono desiderabili per host compatibili con IPv6
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

3 Prepara il Server Slave

Esegui i passaggi 1 - 19 da The Perfect Server - Debian 8.4 Jessie (Apache2, BIND, Dovecot, ISPConfig 3.1).

Non installare ancora ISPConfig su server2.

Aggiungi il Server Master al file /etc/hosts

vi /etc/hosts

in modo che appaia così:

127.0.0.1       localhost
192.168.0.105   server1.example.tld  
2001:db8::1     server1.example.tld
192.168.0.106   server2.example.tld server2  
2001:db8::2     server2.example.tld server2

# Le seguenti righe sono desiderabili per host compatibili con IPv6
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

4 Accesso senza chiave da Server1 a Server2

Su server2:

Consentiamo temporaneamente il login root su server2 con una password. Apri /etc/sshd_config:

vi /etc/ssh/sshd_config

e cambia

PermitRootLogin without-password

in

PermitRootLogin yes

successivamente, riavvia il demone ssh:

service ssh restart

Su server1:

Crea una coppia di chiavi private/pubbliche:

ssh-keygen
Generazione di una coppia di chiavi rsa pubblica/privata.  
Inserisci il file in cui salvare la chiave (/root/.ssh/id_rsa): <-- ENTER  
Directory creata '/root/.ssh'.  
Inserisci la passphrase (vuoto per nessuna passphrase): <-- ENTER  
Inserisci la stessa passphrase di nuovo: <-- ENTER  
La tua identificazione è stata salvata in /root/.ssh/id_rsa.  
La tua chiave pubblica è stata salvata in /root/.ssh/id_rsa.pub.  
L'impronta della chiave è:  
f3:d0:62:a7:24:6f:f0:1e:d1:64:a9:9f:12:6c:98:5a root@server1  
L'immagine randomart della chiave è:  
+---[RSA 2048]----+  
|                 |  
|           .     |  
|          +      |  
|       + *       |  
|      E S +      |  
|    o O @ .      |  
|   .   B +       |  
|       o o       |  
|        .        |  
+-----------------+  
  

È importante che tu non inserisca una passphrase altrimenti il mirroring non funzionerà senza interazione umana, quindi premi semplicemente ENTER!

Successivamente, copiamo la nostra chiave pubblica su server2.example.tld:

ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
L'autenticità dell'host '192.168.0.106 (192.168.0.106)' non può essere stabilita.  
L'impronta della chiave ECDSA è 25:d8:7a:ee:c2:4b:1d:92:a7:3d:16:26:95:56:62:4e.  
Sei sicuro di voler continuare a connetterti (yes/no)? <-- yes (vedrai questo solo se è la prima volta che ti connetti a server2)   
/usr/bin/ssh-copy-id: INFO: tentativo di accesso con la nuova chiave(i), per filtrare quelle già installate  
/usr/bin/ssh-copy-id: INFO: 1 chiave(e) rimangono da installare -- se ti viene chiesto ora è per installare le nuove chiavi
[email protected]'s password: <- inserisci la password di root di server2

Ora prova a effettuare il login nella macchina:

ssh [email protected]

E controlla /root/.ssh/authorized_keys per assicurarti di non aver aggiunto chiavi extra che non ti aspettavi.

cat /root/.ssh/authorized_keys
ssh-dss AAAAB3NzaC1kc3MAAACBAPhiAexgEBexnw0rFG8lXwAuIsca/V+lhmv5lhF3BqUfAbL7e2sWlQlGhxZ8I2UnzZK8Ypffq6Ks+lp46yOs7MMXLqb7JBP9gkgqxyEWqOoUSt5hTE9ghupcCvE7rRMhefY5shLUnRkVH6hnCWe6yXSnH+Z8lHbcfp864GHkLDK1AAAAFQDddQckbfRG4C6LOQXTzRBpIiXzoQAAAIEAleevPHwi+a3fTDM2+Vm6EVqR5DkSLwDM7KVVNtFSkAY4GVCfhLFREsfuMkcBD9Bv2DrKF2Ay3OOh39269Z1rgYVk+/MFC6sYgB6apirMlHj3l4RR1g09LaM1OpRz7pc/GqIGsDt74D1ES2j0zrq5kslnX8wEWSHapPR0tziin6UAAACBAJHxgr+GKxAdWpxV5MkF+FTaKcxA2tWHJegjGFrYGU8BpzZ4VDFMiObuzBjZ+LrUs57BiwTGB/MQl9FKQEyEV4J+AgZCBxvg6n57YlVn6OEA0ukeJa29aFOcc0inEFfNhw2jAXt5LRyvuHD/C2gG78lwb6CxV02Z3sbTBdc43J6y [email protected]

Disabilita il login root con una password. Apri /etc/sshd_config:

vi /etc/ssh/sshd_config

e cambia

PermitRootLogin yes

in

PermitRootLogin without-password

successivamente, riavvia il demone ssh:

service ssh restart

Disconnettiti da server2:

exit
logout  
Connessione a 192.168.0.106 chiusa.

Siamo ora tornati su server1.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.