Configuration Serveur · 12 min read · Sep 22, 2025

Configuration parfaite de multiserveur ISPConfig sur Ubuntu 20.04 et Debian 10 - Page 4

5 Installation du deuxième serveur de messagerie

Connectez-vous en tant que root ou exécutez

su -

pour devenir utilisateur root sur votre serveur avant de continuer. IMPORTANT : Vous devez utiliser ‘su -‘ et pas seulement ‘su’, sinon votre variable PATH est mal définie par Debian.

5.1 Configurer le nom d’hôte

Le nom d’hôte de votre serveur doit être un sous-domaine comme “mx2.example.com”. N’utilisez pas un nom de domaine sans partie sous-domaine comme “example.com” comme nom d’hôte, car cela causera des problèmes plus tard avec votre configuration de messagerie. Tout d’abord, vous devez vérifier le nom d’hôte dans /etc/hosts et le changer si nécessaire. La ligne doit être : “Adresse IP - espace - nom d’hôte complet incluant le domaine - espace - partie sous-domaine”. Pour notre nom d’hôte mx2.example.com, le fichier doit ressembler à ceci :

nano /etc/hosts
127.0.0.1 localhost.localdomain   localhost  
# Cette ligne doit être changée sur chaque nœud au nom de serveur correct :  
127.0.1.1 mx2.example.com mx2  
# Ces lignes sont les mêmes sur chaque nœud :
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

# Les lignes suivantes sont souhaitables pour les hôtes compatibles IPv6
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Comme vous pouvez le voir, nous avons également ajouté les noms d’hôtes de nos autres serveurs afin qu’ils puissent communiquer sur le réseau interne plus tard.

Ensuite, éditez le fichier /etc/hostname :

nano /etc/hostname

Il doit contenir uniquement la partie sous-domaine, dans notre cas :

mx2

Enfin, redémarrez le serveur pour appliquer le changement :

systemctl reboot

Reconnectez-vous et vérifiez si le nom d’hôte est correct maintenant avec ces commandes :

hostname  
hostname -f

La sortie doit être comme ceci :

root@mx2:~$ hostname  
mx2  
root@mx2:~$ hostname -f  
mx2.example.com

5.2 Installation d’ISPConfig

Maintenant, nous pouvons exécuter l’autoinstalleur pour tous les paquets et ISPConfig :

wget -O - https://get.ispconfig.org | sh -s -- --no-dns --no-roundcube --no-mailman --use-php=system --use-unbound --interactive

Après un certain temps, vous verrez :

WARNING! Ce script va reconfigurer votre serveur complet !  
Il doit être exécuté sur un serveur fraîchement installé et toute configuration actuelle que vous avez faite sera très probablement perdue !  
Tapez 'yes' si vous voulez vraiment continuer :

Répondez “yes” et appuyez sur entrée. L’installateur va maintenant commencer.

Lorsque l’installation et la configuration des paquets sont terminées, le mot de passe root pour MySQL sur mx2 sera affiché. Notez-le (avec le nom du serveur, pour éviter toute confusion plus tard).

Maintenant, nous devrons répondre à quelques questions car nous utilisons le mode interactif. Cela est nécessaire car ce serveur sera ajouté à votre configuration multiserveur.

[INFO] Installation d'ISPConfig3.  
[INFO] Votre mot de passe root MySQL est : kl3994aMsfkkeE  
  
  
--------------------------------------------------------------------------------  
 _____ ___________   _____              __ _          ____  
|_   _/  ___| ___ \ /  __ \            / _(_)        /__  \  
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /  
  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |  |_ |  
  |_| |_|\__/ / |     | \__/\ (_) | | | | | | (_| | ___\ \  
  \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/  
                                                  __/ |  
                                                  |___/   
--------------------------------------------------------------------------------  
  
>> Configuration initiale   
  
Système d'exploitation : Debian 10.0 (Buster) ou compatible  
  
    Suivront quelques questions pour la configuration principale, soyez prudent.  
    Les valeurs par défaut sont entre [crochets] et peuvent être acceptées avec .  
    Tapez "quit" (sans les guillemets) pour arrêter l'installateur.  
  
Sélectionnez la langue (en,de) [en] : <-- Appuyez sur entrée  
  
Mode d'installation (standard,expert) [standard] : <-- expert  
  
Nom d'hôte pleinement qualifié (FQDN) du serveur, par ex. server1.domain.tld  [mx2.example.com] : <-- Appuyez sur Entrée  
  
Nom d'hôte du serveur MySQL [localhost] : <-- Appuyez sur Entrée  
  
Port du serveur MySQL [3306] : <-- Appuyez sur Entrée  
  
Nom d'utilisateur root MySQL [root] : <-- Appuyez sur Entrée  
  
Mot de passe root MySQL [] : <-- Entrez le mot de passe MySQL que le script vient de vous donner  
  
Base de données MySQL à créer [dbispconfig] : <-- Appuyez sur Entrée  
  
Charset MySQL [utf8] : <-- Appuyez sur Entrée  
  
Les deux prochaines questions concernent l'utilisateur et le mot de passe de la base de données interne ISPConfig.  
Il est recommandé d'accepter les valeurs par défaut qui sont 'ispconfig' comme nom d'utilisateur et un mot de passe aléatoire.  
Si vous utilisez un mot de passe différent, utilisez uniquement des chiffres et des caractères pour le mot de passe.  
  
Nom d'utilisateur de la base de données MySQL ISPConfig [ispconfig] : <-- Appuyez sur Entrée  
  
Mot de passe de la base de données MySQL ISPConfig [aakl203920459853sak20284204] : <-- Appuyez sur Entrée  
  
Ce serveur doit-il rejoindre une configuration multiserveur ISPConfig existante (y,n) [n] : <-- y  
  
Nom d'hôte du serveur maître MySQL [] : <-- panel.example.com  
  
Port du serveur maître MySQL [] : <-- Appuyez sur Entrée  
  
Nom d'utilisateur root du serveur maître MySQL [root] : <-- Appuyez sur Entrée  
  
Mot de passe root du serveur maître MySQL [] : <-- le mot de passe que vous avez donné à l'utilisateur root externe sur le serveur maître.  
  
Nom de la base de données du serveur maître MySQL [dbispconfig] : <-- Appuyez sur Entrée  
  
Ajout d'un enregistrement de serveur ISPConfig à la base de données.  
  
Configurer le mail (y,n) [y] : <-- Appuyez sur entrée  
  
Configuration de Postgrey  
Configuration de Postfix  
Génération d'une clé privée RSA  
......................................................................++++  
....................++++  
écriture de la nouvelle clé privée dans 'smtpd.key'  
-----  
Vous allez être invité à entrer des informations qui seront incorporées  
dans votre demande de certificat.  
Ce que vous allez entrer est ce qu'on appelle un Nom Distingué ou DN.  
Il y a pas mal de champs mais vous pouvez laisser certains vides  
Pour certains champs, il y aura une valeur par défaut,  
Si vous entrez '.', le champ sera laissé vide.  
-----  
Nom du pays (code à 2 lettres) [AU] : <-- Appuyez sur entrée  
Nom de l'État ou de la province (nom complet) [Some-State] : <-- Appuyez sur entrée  
Nom de la localité (par ex., ville) [] : <-- Appuyez sur entrée  
Nom de l'organisation (par ex., entreprise) [Internet Widgits Pty Ltd] : <-- Appuyez sur entrée  
Nom de l'unité organisationnelle (par ex., section) [] : <-- Appuyez sur entrée  
Nom commun (par ex. FQDN du serveur ou VOTRE nom) [] : <-- Appuyez sur entrée  
Adresse e-mail [] : <-- Appuyez sur entrée  
[WARN] autodetect pour Mailman échoué  
Forcer la configuration de Mailman (y,n) [n] : <-- Appuyez sur entrée  
  
Sauter Mailman  
  
Configuration de Dovecot  
Création d'un nouveau fichier DHParams, cela prend plusieurs minutes. Ne pas interrompre le script.  
Configuration de Spamassassin  
[WARN] autodetect pour Amavisd échoué  
Forcer la configuration d'Amavisd (y,n) [n] : <-- Appuyez sur entrée  
  
Sauter Amavisd  
  
Configuration de Rspamd  
Configuration de Getmail  
Configuration de Jailkit  
Configuration de Pureftpd  
Configurer le serveur DNS (y,n) [y] : <-- n  
  
L'option Serveur Web doit être activée lorsque vous souhaitez exécuter un serveur web ou lorsque ce nœud doit héberger l'interface ISPConfig.  
Configurer le serveur Web (y,n) [y] : <-- Appuyez sur entrée  
  
Configuration d'Apache  
Configuration de vlogger  
[WARN] autodetect pour OpenVZ échoué  
Forcer la configuration d'OpenVZ (y,n) [n] : <-- Appuyez sur Entrée  
  
Sauter OpenVZ  
  
Configurer le serveur de pare-feu (y,n) [y] : <-- Appuyez sur Entrée  
  
Configuration du pare-feu Ubuntu  
[WARN] autodetect pour Metronome XMPP Server échoué  
Forcer la configuration du serveur XMPP Metronome (y,n) [n] : <-- Appuyez sur Entrée  
  
Sauter le serveur XMPP Metronome  
  
Configuration de Fail2ban  
Installer l'interface Web ISPConfig (y,n) [n] : <-- Appuyez sur Entrée  
  
Voulez-vous créer des certificats SSL pour votre serveur ? (y,n) [y] : <-- Appuyez sur Entrée  
  
Vérification / création du certificat pour mx2.example.com  
Utilisation du chemin de certificat /etc/letsencrypt/live/mx2.example.com  
Utilisation d'apache pour la validation du certificat  
Créer un lien symbolique des certificats SSL ISPConfig vers Postfix ? (y,n) [y] : <-- Appuyez sur Entrée  
  
Créer un lien symbolique des certificats SSL ISPConfig vers Pure-FTPd ? La création du fichier dhparam peut prendre du temps. (y,n) [y] : <-- Appuyez sur Entrée  
  
Génération de paramètres DH, 2048 bits de long nombre premier sûr, générateur 2  
Cela va prendre beaucoup de temps  
......................+...........................................+...............  
Configuration des vhosts d'Apps  
Configuration du serveur DB  
Installation du crontab ISPConfig  
aucun crontab pour getmail  
Détection des adresses IP  
Redémarrage des services ...  
Installation terminée.  
[INFO] Ajout des versions php à ISPConfig.  
[INFO] Vérification que tous les services fonctionnent.  
[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] Installation prête.  
[INFO] Votre mot de passe root MySQL est : kl3994aMsfkkeE  
[INFO] Avertissement : Veuillez supprimer les fichiers journaux dans /tmp/ispconfig-ai/var/log/setup-* une fois que vous n'en avez plus besoin car ils contiennent vos mots de passe !

5.3 Configuration de la réplication pour Dovecot

Nous allons utiliser dsync pour synchroniser les e-mails entre mx1 et mx2, pour la redondance.

Les paramètres personnalisés pour dovecot doivent être stockés dans /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master afin que vous ne les perdiez pas lors de la mise à jour d’ISPConfig.

nano /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master

Mettez ce qui suit là-dedans :

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  
  
# Le processus de réplication doit être démarré au démarrage, afin qu'il puisse commencer à répliquer les utilisateurs immédiatement :  
service replicator {  
 process_min_avail = 1  
}  
  
# Les processus de messagerie doivent avoir accès à la fifo de notification de réplication et au socket.  
service aggregator {  
    fifo_listener replication-notify-fifo {  
        user = vmail  
        mode = 0666  
    }  
  
    unix_listener replication-notify {  
        user = vmail  
        mode = 0666  
    }  
}  
  
# Activer les commandes de réplication doveadm  
service replicator {  
    unix_listener replicator-doveadm {  
        mode = 0666  
    }  
}  
  
# Créer un écouteur pour le serveur doveadm  
service doveadm {  
    user = vmail  
    inet_listener {  
        port = 12345  
        ssl = yes  
    }  
}  
service config {  
    unix_listener config {  
        user = vmail  
    }  
}  
  
plugin {  
    mail_replica = tcps:mx1.example.com  
}

Remplacez doveadm_password par votre propre mot de passe - faites-en une chaîne longue et aléatoire pour des raisons de sécurité. Il doit être le même sur les deux serveurs.

Remplacez

mail_replica = tcps:mx1.example.com

par votre propre nom d’hôte de mx1.

Pour appliquer ces changements, copiez le fichier dans le dossier dovecot et redémarrez dovecot :

cp /usr/local/ispconfig/server/conf-custom/install/dovecot_custom.conf.master /etc/dovecot/conf.d/99-ispconfig-custom-config.conf  
systemctl restart dovecot

5.4 Configuration de la synchronisation pour Rspamd

Rspamd a une belle interface web. Nous allons configurer nos serveurs comme voisins afin que vous puissiez voir les paramètres, les statistiques et d’autres données dans un seul panneau.

nano /usr/local/ispconfig/server/conf-custom/install/rspamd_options.inc.master

Ajoutez ces lignes :

# Configuration du modèle ISPConfig (doit être mise à jour s'il y a des changements)  
# Adresses locales à ce serveur.  
local_addrs = [  
    "127.0.0.0/8",  
    "::1",  
  ];

# Cette liste est générée par ISPConfig, placez les adresses/réseaux personnalisés dans local_networks.inc.  
local_networks = "/etc/rspamd/local.d/local_networks.inc";

dns {  
    nameserver = ["127.0.0.1:53:10"];  
}

# Configuration personnalisée :  
neighbours {  
    mx1 {  
        host = "https://mx1.example.com:443";  
        path = "/rspamd/";  
    }  
    mx2 {   
        host = "https://mx2.example.com:443";  
        path = "/rspamd/";  
    }  
}  
# Dernière mise à jour : 19-01-2022

Remplacez les noms d’hôtes par les noms d’hôtes corrects pour votre serveur de messagerie principal et secondaire. Cette configuration doit être mise à jour si le modèle change, alors assurez-vous de vérifier cela lors de la mise à jour d’ISPConfig.

Nous allons maintenant ajouter un site Web pour ce serveur dans ISPConfig. Allez dans Sites -> Ajouter un nouveau site Web et ajoutez le site Web “mx2.example.com”. Assurez-vous de le créer sur le bon serveur (mx2.example.com). Désactivez le sous-domaine automatique, et activez SSL + Let’s Encrypt. Ensuite, allez dans les options, et collez ceci dans la section des directives 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.com

Remplacez mx1.example.com par le nom d’hôte du serveur de noms secondaire.

Enfin, nous devons activer certains modules Apache et redémarrer nos services :

a2enmod proxy_balancer proxy_http  
systemctl restart rspamd  
systemctl restart apache2

Nous allons maintenant définir un mot de passe pour l’interface Rspamd sur MX1, que nous utiliserons comme interface Web pour notre cluster Rspamd.

Connectez-vous à ISPConfig en tant qu’administrateur et allez dans Système -> Configuration du serveur -> mx1.example.com -> Mail -> Mot de passe Rspamd.

Entrez un nouveau mot de passe et cliquez sur enregistrer. Ensuite, allez dans Système -> Configuration du serveur -> mx2.example.com -> Mail -> Mot de passe Rspamd et entrez le même mot de passe là-bas. Attendez que les changements soient propagés. Une fois terminé, vous pouvez vous connecter à Rspamd avec votre mot de passe à https://mx1.example.com/rspamd/ dans votre navigateur.

5.5 Sécuriser le serveur de messagerie avec un certificat SSL valide

Pour un fonctionnement DSYNC et Roundcube, vous devez avoir un certificat SSL valide en place pour les noms d’hôtes utilisés. Ce certificat ne peut pas être auto-signé. Si vous allez utiliser des noms d’hôtes supplémentaires pour ce serveur, comme imap.example.com et smtp.example.com, ou si l’installateur n’a pas pu créer un certificat valide lors de l’installation, suivez ce guide pour configurer un certificat valide pour votre serveur de messagerie : https://www.howtoforge.com/securing-your-ispconfig-3-managed-mailserver-with-a-valid-lets-encrypt-certificate/

5.6 Configuration du pare-feu

Connectez-vous à l’interface ISPConfig, et allez dans Système -> Pare-feu. Ensuite, cliquez sur “Ajouter un nouvel enregistrement de pare-feu”.

Assurez-vous de sélectionner le bon serveur. Pour notre serveur de messagerie, nous devons ouvrir les ports suivants :

TCP :

22,25,80,110,143,443,465,587,993,995

Aucun port UDP ne doit être ouvert via l’interface.

Nous allons également ouvrir le port 3306, qui est utilisé pour MySQL, et le port 12345, qui est utilisé pour dsync, mais uniquement depuis notre réseau local pour des raisons de sécurité. Pour ce faire, exécutez la commande suivante depuis la CLI, après que le changement du panneau ISPConfig soit propagé (lorsque le point rouge a disparu) :

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 tcp

5.7 Miroiter MX2 depuis MX1 dans ISPConfig

Pour terminer la configuration, vous devez activer le mirroring entre mx1 et mx2. Pour ce faire, connectez-vous à ISPConfig, allez dans Système -> mx2.example.com -> “Est le miroir du serveur”. Sélectionnez mx1.example.com et cliquez sur enregistrer.

Notre serveur de messagerie secondaire est maintenant installé. Dans l’étape suivante, nous allons installer le serveur DNS principal.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.