Serveur Web · 13 min read · Jan 07, 2026
Le Serveur Parfait - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3) - Page 3
23 Installer RoundcubeMail
Pour installer le client webmail Roundcube, exécutez…
yum -y install roundcubemail
ISPConfig contient un alias webmail par défaut pour squirremail dans son vhost d’applications. Nous utiliserons cet alias pour le plus moderne roundcube, donc nous créons un lien symbolique avec le nom squirrelmail dans /usr/share
ln -s /usr/share/roundcubemail /usr/share/squirrelmail
Après avoir installé ISPConfig 3, vous pouvez accéder à RoundcubeMail comme suit :
Le vhost d’applications ISPConfig sur le port 8081 pour nginx vient avec une configuration d’alias /webmail, donc vous pouvez utiliser http://server1.example.com:8081/webmail pour accéder à RoundcubeMail.
Si vous souhaitez utiliser un alias /webmail ou /roundcubemail que vous pouvez utiliser depuis vos sites web, c’est un peu plus compliqué que pour Apache car nginx n’a pas d’alias globaux (c’est-à-dire, des alias qui peuvent être définis pour tous les vhosts). Par conséquent, vous devez définir ces alias pour chaque vhost à partir duquel vous souhaitez accéder à SquirrelMail.
Pour ce faire, collez ce qui suit dans le champ Directives nginx de l’onglet Options du site web dans ISPConfig :
Pour ce faire, collez ce qui suit dans le champ Directives nginx de l’onglet Options du site web dans ISPConfig :
location /roundcubemail {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/roundcubemail/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include /etc/nginx/fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 4k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
}
location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /webmail {
rewrite ^/* /roundcubemail last;
}Si vous utilisez http s au lieu de http pour votre vhost, vous devez ajouter la ligne fastcgi_param HTTPS on; à votre configuration RoundcubeMail comme ceci :
location /roundcubemail {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/roundcubemail/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param HTTPS on; # <-- ajoutez cette ligne
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include /etc/nginx/fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 4k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
}
location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /webmail {
rewrite ^/* /roundcubemail last;
}Si vous utilisez à la fois http et https pour votre vhost, vous pouvez utiliser la variable $https - retournez au champ Directives nginx, et au lieu de fastcgi_param HTTPS on; vous ajoutez la ligne fastcgi_param HTTPS $https; afin que vous puissiez utiliser RoundcubeMail pour les requêtes http et https :
location /roundcubemail {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/roundcubemail/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param HTTPS $https; # <-- ajoutez cette ligne
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include /etc/nginx/fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 4k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
}
location ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /webmail {
rewrite ^/* /squirrelmail last;
}Maintenant, nous avons besoin d’une base de données pour roundcube mail, nous allons l’initialiser comme suit :
mysql -u root -p
À l’invite de mariadb, utilisez :
CREATE DATABASE roundcubedb;
CREATE USER roundcubeuser@localhost IDENTIFIED BY ‘roundcubepassword’;
GRANT ALL PRIVILEGES on roundcubedb.* to roundcubeuser@localhost ;
FLUSH PRIVILEGES;
exit
J’utilise des détails pour la base de données roundcube à titre de test, veuillez remplacer les valeurs selon votre choix pour des raisons de sécurité. Nous terminerons l’installation de roundcube après avoir installé ISPConfig.
24 Installer ISPConfig 3
Avant de commencer l’installation d’ISPConfig, assurez-vous qu’Apache est arrêté (s’il est installé - il est possible que certains de vos paquets installés aient installé Apache comme dépendance sans que vous le sachiez). Si Apache2 est déjà installé sur le système, arrêtez-le maintenant…
systemctl stop httpd.service
… et supprimez les liens de démarrage système d’Apache :
systemctl disable httpd.service
Assurez-vous qu’nginx fonctionne :
systemctl restart nginx.service
(Si vous avez à la fois Apache et nginx installés, l’installateur vous demande lequel vous souhaitez utiliser : Apache et nginx détectés. Sélectionnez le serveur à utiliser pour ISPConfig : (apache,nginx) [apache] :
Tapez nginx. Si seulement Apache ou nginx sont installés, cela est automatiquement détecté par l’installateur, et aucune question n’est posée.)
Téléchargez la version actuelle d’ISPConfig 3 et installez-la. L’installateur d’ISPConfig configurera tous les services comme Postfix, Dovecot, etc. pour vous. Une configuration manuelle comme celle requise pour ISPConfig 2 n’est plus nécessaire.
Vous avez maintenant également la possibilité de laisser l’installateur créer un vhost SSL pour le panneau de contrôle ISPConfig, afin qu’ISPConfig puisse être accessible en utilisant https:// au lieu de http://. Pour ce faire, appuyez simplement sur ENTRÉE lorsque vous voyez cette question : Voulez-vous une connexion sécurisée (SSL) à l’interface web d’ISPConfig (y,n) [y] :.
Pour installer ISPConfig 3 à partir de la dernière version publiée, faites ceci :
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
L’étape suivante consiste à exécuter
php -q install.php
Cela lancera l’installateur d’ISPConfig 3 :
[root@server1 install]# php -q install.php
——————————————————————————–
_ _ _ _
| / | \ / \ / () / \
| | | \ --.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ / | | |–. \ / | | / \| ‘ \| | |/ ` | | |
|| |_|\/ / | | _/\ () | | | | | | | (| | __\ \
_/__/_| _/\/|| ||| ||_, | __/ / |
|__/
——————————————————————————–
>> Configuration initiale
Système d’exploitation : Redhat ou compatible, version inconnue.
Les questions suivantes seront posées pour la configuration principale, soyez donc 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] : <– ENTRÉE
Mode d’installation (standard,expert) [standard] : <– ENTRÉE
Nom d’hôte entièrement qualifié (FQDN) du serveur, par ex. server1.domain.tld [server1.example.com] : <– ENTRÉE
Nom d’hôte du serveur MySQL [localhost] : <– ENTRÉE
Nom d’utilisateur root MySQL [root] : <– ENTRÉE
Mot de passe root MySQL [] : <– votremotdepasseSQLroot
Base de données MySQL à créer [dbispconfig] : <– ENTRÉE
Jeu de caractères MySQL [utf8] : <– ENTRÉE
Apache et nginx détectés. Sélectionnez le serveur à utiliser pour ISPConfig : (apache,nginx) [apache] : <– nginx
Génération d’une clé privée RSA de 2048 bits
…………………………………………………………….+++
………………………………………..+++
é est 65537 (0x10001)
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) [XX] : <– ENTRÉE
Nom de l’État ou de la province (nom complet) [] : <– ENTRÉE
Nom de la localité (par ex., ville) [Default City] : <– ENTRÉE
Nom de l’organisation (par ex., entreprise) [Default Company Ltd] : <– ENTRÉE
Nom de l’unité organisationnelle (par ex., section) [] : <– ENTRÉE
Nom commun (par ex., votre nom ou le nom d’hôte de votre serveur) [] : <– ENTRÉE
Adresse e-mail [] : <– ENTRÉE
Configuration de Jailkit
Configuration de Dovecot
Configuration de Spamassassin
Configuration d’Amavisd
Configuration de Getmail
Configuration de Pureftpd
Configuration de BIND
Configuration de nginx
Configuration de Vlogger
Configuration du vhost d’applications
Configuration du pare-feu Bastille
Configuration de Fail2ban
Installation d’ISPConfig
Port ISPConfig [8080] : <– ENTRÉE
Voulez-vous une connexion sécurisée (SSL) à l’interface web d’ISPConfig (y,n) [y] : <– ENTRÉE
Génération de la clé privée RSA, longueur de 4096 bits
…………………………………………………..++
…………………………………………………………………++
e est 65537 (0x10001)
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) [XX] : <– ENTRÉE
Nom de l’État ou de la province (nom complet) [] : <– ENTRÉE
Nom de la localité (par ex., ville) [Default City] : <– ENTRÉE
Nom de l’organisation (par ex., entreprise) [Default Company Ltd] : <– ENTRÉE
Nom de l’unité organisationnelle (par ex., section) [] : <– ENTRÉE
Nom commun (par ex., votre nom ou le nom d’hôte de votre serveur) [] : <– ENTRÉE
Adresse e-mail [] : <– ENTRÉE
Veuillez entrer les attributs ‘supplémentaires’ suivants
à envoyer avec votre demande de certificat
Un mot de passe de défi [] : <– ENTRÉE
Un nom d’entreprise optionnel [] : <– ENTRÉE
écriture de la clé RSA
Configuration de DBServer
Installation du crontab d’ISPConfig
aucun crontab pour root
aucun crontab pour getmail
Redémarrage des services …
Arrêt de mysqld : [ OK ]
Démarrage de mysqld : [ OK ]
Arrêt de postfix : [ OK ]
Démarrage de postfix : [ OK ]
Arrêt de saslauthd : [FAILED]
Démarrage de saslauthd : [ OK ]
Arrêt d’amavisd : Daemon [1554] terminé par SIGTERM
[ OK ]
amavisd arrêté
Démarrage d’amavisd : [ OK ]
Arrêt de clamd.amavisd : [ OK ]
Démarrage de clamd.amavisd : [ OK ]
Arrêt de Dovecot Imap : [ OK ]
Démarrage de Dovecot Imap : [ OK ]
Rechargement de php-fpm : [ OK ]
Rechargement de nginx : [ OK ]
Arrêt de pure-ftpd : [ OK ]
Démarrage de pure-ftpd : [ OK ]
Installation terminée.
[root@server1 install]# Pour corriger les erreurs de Mailman que vous pourriez rencontrer lors de l’installation d’ISPConfig, ouvrez /usr/lib/mailman/Mailman/mm_cfg.py… vi /usr/lib/mailman/Mailman/mm_cfg.py … et définissez DEFAULT_SERVER_LANGUAGE = ‘en’ : [...] #------------------------------------------------------------- # La langue par défaut pour ce serveur. DEFAULT_SERVER_LANGUAGE = 'en' [...] Redémarrez Mailman : systemctl restart mailman.service Maintenant, je vais terminer l’installation de RoundcubeMail. Ouvrez l’URL suivante dans votre navigateur : http://192.168.0.100:8081/roundcubemail/installer vous serez accueilli par l’installateur web de RoundcubeMail, faites défiler la page et cliquez sur suivant :
Ensuite, entrez les détails de la base de données de la base de données roundcubedb que nous avons créée au chapitre 23 ici :
Et définissez le serveur SMTP sur localhost et définissez votre langue préférée
et cliquez sur “Créer la config” pour passer à la page suivante. Ouvrez le fichier /etc/roundcubemail/config.inc.php dans le shell : nano /etc/roundcubemail/config.inc.php et collez la configuration qui est affichée dans l’installateur web dans ce fichier et enregistrez le fichier. Ensuite, retournez à l’installateur web et cliquez sur le bouton continuer. Sur cette page, cliquez sur “initialiser la base de données” :
La page devrait ressembler à ceci après l’initialisation réussie de la base de données :
Pour protéger la configuration de RoundcubeMail contre les modifications non autorisées, je vais supprimer le dossier d’installation en exécutant cette commande dans le shell : rm -rf /usr/share/roundcubemail/installer ### 25 Première connexion à ISPConfig Ensuite, vous pouvez accéder à ISPConfig 3 sous http(s)://server1.example.com:8080/ ou http(s)://192.168.0.100:8080/ (http ou https dépend de ce que vous avez choisi lors de l’installation). Connectez-vous avec le nom d’utilisateur admin et le mot de passe admin (vous devriez changer le mot de passe par défaut après votre première connexion) :
Ensuite, nous devons ajuster les chemins de configuration BIND dans ISPConfig. Cliquez sur “Système” dans le menu supérieur, puis sur “Configuration du serveur” dans le menu de droite. Dans la liste qui apparaît alors sur le côté gauche, cliquez sur le nom du serveur.
Allez à l’onglet “DNS” du formulaire :
et entrez les chemins DNS comme suit : Répertoire des fichiers de zone BIND : /var/named
Chemin named.conf de BIND : /etc/named.conf
Chemin named.conf.local de BIND : /etc/named.conf.local Le système est maintenant prêt à être utilisé. Si vous souhaitez utiliser des adresses IPv6 avec vos vhosts nginx, veuillez faire ce qui suit avant de créer des vhosts IPv6 dans ISPConfig : Ouvrez /etc/sysctl.conf… vi /etc/sysctl.conf … et ajoutez la ligne net.ipv6.bindv6only = 1 : [...] net.ipv6.bindv6only = 1 Exécutez… sysctl -p … ensuite pour que le changement prenne effet. #### 25.1 Manuel d’ISPConfig 3 Afin d’apprendre à utiliser ISPConfig 3, je recommande fortement de télécharger le Manuel d’ISPConfig 3. Sur plus de 300 pages, il couvre le concept derrière ISPConfig (administrateur, revendeurs, clients), explique comment installer et mettre à jour ISPConfig 3, inclut une référence pour tous les formulaires et champs de formulaire dans ISPConfig avec des exemples d’entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il décrit également comment rendre votre serveur plus sécurisé et comprend une section de dépannage à la fin. ### 25 Liens - CentOS: http://www.centos.org/ - ISPConfig: http://www.ispconfig.org/
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.