Installation serveur · 10 min read · Nov 09, 2025
Installation automatisée parfaite d'ISPConfig 3 sur Debian 11 et 12, Ubuntu 22.04 et Ubuntu 24.04

Ce tutoriel vous aidera à installer votre configuration de serveur unique ISPConfig 3 en utilisant l’auto-installateur ISPConfig. Cet installateur suit les anciens guides de Perfect Server mais est plus modulaire et facile à suivre. Si vous souhaitez configurer une installation multiserveur avec des serveurs dédiés pour chaque service, consultez le guide Perfect Multiserver.
Ce guide fonctionne pour Debian 11 et 12, Ubuntu 22.04 et Ubuntu 24.04. Il prend actuellement en charge les architectures CPU x86_64 (également connu sous le nom d’AMD64) et ARM (ARM64). Nous utiliserons le nom d’hôte server1.example.com. Remplacez-le si nécessaire. Le guide nécessite un système d’exploitation de base fraîchement installé et vide ; ne tentez pas de l’utiliser sur un système où vous avez déjà configuré d’autres services.
Prérequis
- Système d’exploitation : Debian 11 et 12, Ubuntu 22.04 ou Ubuntu 24.04.
- Architecture CPU 64 bits Intel ou AMD (x86_64, également connu sous le nom d’AMD64) ou architecture CPU ARM (ARM64).
- Le système doit avoir accès à Internet pour télécharger et installer des logiciels avec apt.
- Commencez à partir d’une installation de base propre et vide. Le système doit être entièrement accessible depuis Internet ; ne bloquez pas l’accès avec un pare-feu, surtout pas le port 80 pour l’émission de certificats LE et le port 8080 pour l’accès à ISPConfig, ainsi que les ports pour tous les services que vous utilisez sur ce système. Le serveur doit également avoir accès à Internet pour télécharger et installer des logiciels pendant l’installation et résoudre les noms de domaine via DNS.
1. Connectez-vous au serveur
Connectez-vous en tant que root ou exécutez
su --loginsur Debian pour devenir l’utilisateur root sur votre serveur avant de continuer. IMPORTANT : Vous devez utiliser ‘su –login’ ou ‘su -‘ et pas seulement ‘su’. Sinon, Debian définira votre variable PATH de manière incorrecte.
Sur Ubuntu, utilisez la commande :
sudo -spour devenir utilisateur root.
2. Configurez le nom d’hôte et les hôtes
Le nom d’hôte de votre serveur doit être un sous-domaine comme “server1.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. Tout d’abord, vous devez vérifier le nom d’hôte dans /etc/hosts et le modifier si nécessaire. La ligne doit être : “Adresse IP - espace - nom d’hôte complet incl. domaine - espace - partie sous-domaine”. Pour notre nom d’hôte server1.example.com, le fichier doit ressembler à ceci (certaines lignes peuvent être différentes ; cela peut varier selon le fournisseur d’hébergement) :
nano /etc/hosts127.0.0.1 localhost.localdomain localhost
# Cette ligne doit être changée pour le nom de serveur correct :
127.0.1.1 server1.example.com server1
# Les lignes suivantes sont souhaitables pour les hôtes compatibles IPv6
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allroutersEnsuite, modifiez le fichier /etc/hostname :
nano /etc/hostnameIl doit contenir uniquement la partie sous-domaine, dans notre cas :
server1Enfin, redémarrez le serveur pour appliquer le changement :
systemctl rebootReconnectez-vous et vérifiez si le nom d’hôte est correct maintenant avec ces commandes :
hostname
hostname -fLa sortie doit ressembler à ceci :
root@server1:~$ hostname
server1
root@server1:~$ hostname -f
server1.example.comVous devrez également configurer un enregistrement DNS avec votre fournisseur DNS qui pointe vers votre serveur. Il doit y avoir un enregistrement A (et/ou AAAA) pour le sous-domaine qui pointe vers votre IP publique.
3. Mettez à jour le système
Pour mettre à jour les paquets du système, exécutez la commande :
apt update && apt upgrade4. Exécutez l’auto-installateur
Nous pouvons maintenant exécuter l’auto-installateur. La configuration de base contient les paquets logiciels suivants (plus leurs dépendances, bien sûr) : Apache2, PHP (versions 5.6 - 8.3), MariaDB, Postfix, Dovecot, Rspamd, BIND, Jailkit, Roundcube, PHPMyAdmin, Mailman, Webalizer, AWStats et GoAccess. Vous pouvez facilement choisir de ne pas utiliser certaines fonctions ou d’installer des services supplémentaires en passant des arguments à l’installateur. Voir le Chapitre 6 pour les options de ligne de commande disponibles.
Installer ISPConfig avec le serveur web Apache
Vous pouvez maintenant exécuter le script avec des arguments. Par exemple, si vous souhaitez une installation normale avec le serveur web Apache et une plage de ports pour FTP passif + mises à jour non surveillées, exécutez :
wget -O - https://get.ispconfig.org | sh -s -- `--use-ftp-ports=40110-40210` --unattended-upgradesLes étapes suivantes sont décrites dans le chapitre “Exécution de l’auto-installateur”.
Installer ISPConfig avec le serveur web Nginx
Vous pouvez maintenant exécuter le script avec des arguments. Par exemple, si vous souhaitez une installation normale avec le serveur web Nginx et une plage de ports pour FTP passif + mises à jour non surveillées, exécutez :
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx `--use-ftp-ports=40110-40210` --unattended-upgradesExécution de l’auto-installateur
Après un certain temps, vous verrez :
WARNING! Ce script reconfigurera l'intégralité de votre serveur !
Il doit être exécuté sur un serveur fraîchement installé et toute configuration actuelle que vous avez effectuée sera très probablement perdue !
Tapez 'yes' si vous souhaitez vraiment continuer :Répondez “yes” et appuyez sur entrée. L’installateur va maintenant démarrer.
Lorsque l’installateur est terminé, il vous montrera le mot de passe administrateur ISPConfig et le mot de passe root MySQL comme ceci :
[INFO] Votre mot de passe administrateur ISPConfig est : 5GvfSSSYsdfdYC
[INFO] Votre mot de passe root MySQL est : kkAkft82d!kafMwqxdtYsAssurez-vous de noter ces informations, car vous en aurez besoin plus tard.
5. Configuration du pare-feu
La dernière chose à faire est de configurer notre pare-feu.
Connectez-vous à l’interface utilisateur ISPConfig, et allez à Système -> Pare-feu. Cliquez ensuite sur “Ajouter un nouvel enregistrement de pare-feu”.
Pour une configuration normale, cela ressemblerait à ceci :
TCP :
20,21,22,25,80,443,40110:40210,110,143,465,587,993,995,53,8080,8081UDP :
53Les ports nécessaires pour chaque service sont :
Web : 20, 21, 22, 80, 443 et 40110:40210 (Tous TCP, pas de UDP)
Mail : 25, 110, 143, 465, 587, 993, et 995 (Tous TCP, pas de UDP)
DNS : 53 (TCP et UDP)
Panneau : 8080 et 8081 (Tous TCP, pas de UDP)
Votre serveur est maintenant configuré et prêt à être utilisé. Vous pouvez vous connecter à https://server1.example.com:8080
6. Options avancées
L’auto-installateur a diverses options de ligne de commande pour peaufiner la configuration.
Vous pouvez voir tous les arguments avec :
wget -O - https://get.ispconfig.org | sh -s -- --helpVous pouvez par exemple choisir entre le serveur web Apache et Nginx et quels services doivent être installés sur le système. Les arguments de ligne de commande sont :
Usage : ispc3-ai.sh [] [...]
Ce script installe automatiquement tous les paquets nécessaires pour une configuration ISPConfig 3 en utilisant les directives des "Perfect Server Setup" howtos sur www.howtoforge.com.
Les arguments possibles sont :
--help Afficher cette page d'aide.
--debug Activer l'enregistrement détaillé (enregistre chaque commande avec le code de sortie).
--channel Choisissez le canal à utiliser pour ISPConfig : --channel=
"stable" est la dernière version d'ISPConfig disponible sur www.ispconfig.org
"dev" est la dernière branche de développement du dépôt git d'ISPConfig : https://git.ispconfig.org/ispconfig/ispconfig3/tree/develop
Le canal de développement peut contenir des bugs et des fonctionnalités moins testées et ne doit être utilisé en production que par des utilisateurs très expérimentés.
--lang Utilisez la langue pour l'installation d'ISPConfig. Spécifiez avec --lang=en|de (seules les langues en (anglais) et de (allemand) sont actuellement prises en charge).
--interactive Ne pas installer ISPConfig en mode non interactif.
Cela est nécessaire si vous souhaitez utiliser le mode expert, par exemple pour installer un serveur esclave qui doit être intégré dans une configuration multiserveur existante.
--use-nginx Utilisez le serveur web nginx au lieu d'apache2.
--use-amavis Utilisez amavis au lieu de rspamd pour le filtrage des mails.
--use-unbound Utilisez unbound au lieu de bind9 pour la résolution locale. Autorisé uniquement si --no-dns est défini.
--use-php Utilisez des versions PHP spécifiques, séparées par des virgules, au lieu d'installer plusieurs PHP, par exemple --use-php=7.4,8.0 (5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 et 8.3 disponibles).
--use-php=system désactive le dépôt sury et installe simplement la version PHP par défaut du système.
--use-php en omettant l'argument, utilise toutes les versions.
--use-ftp-ports Cette option définit la plage de ports passifs pour pure-ftpd. Vous devez spécifier la plage de ports séparée par un tiret, par exemple --use-ftp-ports=40110-40210.
Si non fourni, la plage de ports passifs ne sera pas configurée.
--use-certbot Utilisez Certbot au lieu de acme.sh pour émettre des certificats Let's Encrypt. Non conseillé à moins que vous ne migriez depuis un ancien serveur qui utilise Certbot.
--no-web Ne pas utiliser ISPConfig sur ce serveur pour gérer les paramètres du serveur web et ne pas installer nginx/apache ou pureftpd.
Cela empêchera également l'installation d'une interface utilisateur ISPConfig et implique --no-roundcube ainsi que --no-pma.
--no-mail Ne pas utiliser ISPConfig sur ce serveur pour gérer les paramètres du serveur de mail.
Cela installera postfix pour l'envoi de mails système, mais pas dovecot et ne configurera aucun paramètre pour le mail ISPConfig. Cela implique --no-mailman.
--no-dns Ne pas utiliser ISPConfig sur ce serveur pour gérer les entrées DNS. Bind sera installé uniquement pour la mise en cache / résolution DNS locale.
--no-local-dns Ne pas installer la mise en cache / résolution DNS locale via bind.
--no-firewall Ne pas installer ufw et dire à ISPConfig de ne pas gérer les paramètres du pare-feu sur ce serveur.
--no-roundcube Ne pas installer le webmail roundcube.
--roundcube Installer Roundcube même lorsque --no-mail est utilisé. Une configuration manuelle du fichier de configuration de Roundcube est nécessaire.
--no-pma Ne pas installer PHPMyAdmin sur ce serveur.
--no-mailman Ne pas installer le gestionnaire de listes de diffusion Mailman.
--no-quota Désactiver le quota du système de fichiers.
--no-ntp Désactiver la configuration NTP.
--no-jailkit Ne pas installer jailkit.
--no-ftp Ne pas installer le serveur pure-ftpd.
--monit Installer Monit et le configurer pour surveiller les services installés. Services pris en charge : Apache2, NGINX, MariaDB, pure-ftpd-mysql, php-fpm, ssh, named, Postfix, Dovecot, rspamd.
--monit-alert-email
Configurer des alertes pour Monit à envoyer à l'adresse e-mail donnée. par exemple [email protected].
--ssh-port Configurer le serveur SSH pour écouter sur un port non par défaut. Le numéro de port doit être compris entre 1 et 65535 et ne peut pas être utilisé par d'autres services. par exemple --ssh-port=64.
--ssh-permit-root
Configurer le serveur SSH pour autoriser ou non la connexion root : --ssh-permit-root=, par exemple --ssh-permit-root=without-password.
--ssh-password-authentication
Configurer le serveur SSH pour autoriser ou non l'authentification par mot de passe : --ssh-password-authentication=, par exemple -ssh-password-authentication=no.
--ssh-harden Configurer le serveur SSH pour avoir une configuration de sécurité plus stricte.
--unattended-upgrades
Installer UnattendedUpgrades. Vous pouvez ajouter des arguments supplémentaires pour un nettoyage automatique et des redémarrages automatiques si nécessaire : --unattended-upgrades=autoclean,reboot (ou seulement l'un d'eux).
--i-know-what-i-am-doing
Empêcher l'auto-installateur de demander une confirmation avant de continuer à reconfigurer le serveur. Par exemple, pour installer une configuration de type ‘Perfect Server’ avec Nginx au lieu d’Apache, utilisez cette commande :
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx `--use-ftp-ports=40110-40210` --unattended-upgradesOu pour installer un serveur web Nginx sans services de mail et DNS :
wget -O - https://get.ispconfig.org | sh -s -- --use-nginx --no-dns --no-mail `--use-ftp-ports=40110-40210` --unattended-upgrades7. Finalisation
Votre configuration est maintenant terminée !
Vous pouvez soutenir ISPConfig en achetant notre manuel : https://www.ispconfig.org/documentation/
Les liens suivants sont quelques tutoriels/indications précieux pour une configuration supplémentaire :
- Configuration du mail (rDNS, SPF, DKIM) : https://www.howtoforge.com/how-to-install-an-email-server-with-ispconfig-on-debian-10/
- Ajustement de Roundcube : https://www.howtoforge.com/community/threads/tweaking-the-roundcube-settings.86387/
- Configuration de l’autoconfig (configuration automatique pour vos clients de messagerie) : https://schaal-it.com/ispconfig-automail/
- Améliorer la sécurité de PHPMyAdmin et de l’interface Rspamd : https://www.howtoforge.com/community/threads/improving-the-security-of-phpmyadmin-and-rspamd-ui.86544/
- Dépôt de code et suivi des problèmes de l’auto-installateur ISPConfig : https://git.ispconfig.org/ispconfig/ispconfig-autoinstaller
Si vous avez des questions, posez-les sur le forum.
8. Débogage en cas d’erreur
Si quelque chose ne va pas pendant l’installation, vous pouvez déboguer le processus en ajoutant le drapeau de ligne de commande –debug à la commande d’installation. Cela écrira un fichier journal
/tmp/ispconfig-ai/var/log/ispconfig.logDe plus, l’option de ligne de commande –interactive peut aider à révéler la raison d’une erreur d’installation.
9. Téléchargement sous forme de machine virtuelle
Cette configuration est disponible en tant que téléchargement de machine virtuelle au format ova/ovf (compatible avec VMWare et Virtualbox) pour les abonnés de howtoforge. La machine virtuelle est basée sur Debian 12 et utilise Apache comme serveur web.
Détails de connexion pour la VM
- Le mot de passe root est : howtoforge
- Le mot de passe de l’utilisateur “admin” d’ISPConfig est : howtoforge
- Il y a un autre utilisateur shell avec le nom “administrator” et le mot de passe : howtoforge
- Le mot de passe root MySQL est : 7s8EtDL1QhorSaeHhnRh
Veuillez changer tous les mots de passe lors de la première connexion.
- L’adresse IP de la VM est 192.168.0.100
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.