GNU/Linux >> Tutoriels Linux >  >> Panels >> Panels

Le serveur parfait - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3)

Ce tutoriel montre comment préparer un serveur CentOS 7 x86_64 pour l'installation d'ISPConfig 3, et comment y installer ISPConfig 3. ISPConfig 3 est un panneau de contrôle d'hébergement Web qui vous permet de configurer les services suivants via un navigateur Web :serveur Web nginx, serveur de messagerie Postfix, MySQL, serveur de noms BIND, PureFTPd, SpamAssassin, ClamAV, Mailman, et bien d'autres. Depuis la version 3.0.4, ISPConfig est livré avec un support complet pour le serveur Web nginx en plus d'Apache ; ce tutoriel couvre la configuration d'un serveur qui utilise nginx, pas Apache. Le tutoriel du serveur parfait apache ISPConfig 3 est disponible ici.

Manuel ISPConfig 3

Afin d'apprendre à utiliser ISPConfig 3, je vous recommande fortement de télécharger le manuel ISPConfig 3.

Sur environ 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 ainsi que des exemples d'entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il explique également comment rendre votre serveur plus sécurisé et est accompagné d'une section de dépannage à la fin.

1. Exigences

Pour installer un tel système, vous aurez besoin des éléments suivants

  • Téléchargez les deux DVD CentOS 7.0 depuis un miroir à côté de vous (la liste des miroirs se trouve ici :http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7.0-1406-x86_64 -DVD.iso.
  • Une connexion Internet rapide

2. Remarque préliminaire

Dans ce tutoriel, j'utilise le nom d'hôte server1.example.com avec l'adresse IP 192.168.0.100 et la passerelle 192.168.0.1. Ces paramètres peuvent différer pour vous, vous devez donc les remplacer le cas échéant. Veuillez installer l'installation minimale de CentOS 7 à partir de ce lien de tutoriel avant de continuer.

3 Installez l'éditeur nano et ajustez /etc/hosts

miam -y installer nano wget

Ensuite, nous éditons /etc/hosts. Faites en sorte qu'il ressemble à ceci :

nano /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4192.168.0.100 server1.example.com server1 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

et définissez le nom d'hôte sur server1.example.com :

echo 'serveur1.exemple.com'> /etc/nomhôte

4 Configurez le pare-feu et installez quelques logiciels réseau de base

(Vous pouvez ignorer ce chapitre si vous avez déjà désactivé le pare-feu à la fin de l'installation de base du système.)

Je souhaite installer ISPConfig à la fin de ce tutoriel qui est livré avec son propre pare-feu. C'est pourquoi je désactive maintenant le pare-feu CentOS par défaut. Bien sûr, vous êtes libre de le laisser allumé et de le configurer selon vos besoins (mais vous ne devriez pas utiliser d'autre pare-feu plus tard car il interférera très probablement avec le pare-feu CentOS).

Exécuter

systemctl stop firewalld.service
systemctl disable firewalld.service

[[email protected] ~]# systemctl disable firewalld.service
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/ basic.target.wants/firewalld.service'
[[email protected] ~]#

et désactiver le pare-feu.

Pour vérifier que le pare-feu a bien été désactivé, vous pouvez lancer

pare-feu-cmd --state

ensuite. Le résultat devrait ressembler à ceci :

[[email protected] ~]# firewall-cmd --state
not running
[[email protected] ~]#

yum -y install net-tools NetworkManager-tui

5 Désactiver SELinux

SELinux est une extension de sécurité de CentOS qui devrait fournir une sécurité étendue. À mon avis, vous n'en avez pas besoin pour configurer un système sécurisé, et cela cause généralement plus de problèmes que d'avantages (pensez-y après avoir effectué une semaine de dépannage car un service ne fonctionnait pas comme prévu, puis vous découvrir que tout allait bien, seul SELinux causait le problème). Par conséquent, je le désactive (c'est indispensable si vous souhaitez installer ISPConfig plus tard).

Modifiez /etc/selinux/config et définissez SELINUX=disabled :

nano /etc/selinux/config

# Ce fichier contrôle l'état de SELinux sur le système.# SELINUX=peut prendre l'une de ces trois valeurs :# enforcing - La politique de sécurité de SELinux est appliquée.# permissive - SELinux affiche des avertissements au lieu de les appliquer.# disabled - No SELinux la politique est chargée.SELINUX=disabled# SELINUXTYPE=peut prendre l'une de ces deux valeurs :# Targeted - Les processus ciblés sont protégés,# mls - Protection de sécurité à plusieurs niveaux.SELINUXTYPE=targeted

Ensuite, nous devons redémarrer le système :

redémarrer

6 Activer des référentiels supplémentaires et installer des logiciels

Nous allons activer les référentiels EPEL sur notre système CentOS car de nombreux packages que nous allons installer au cours de ce didacticiel ne sont pas disponibles dans les référentiels CentOS 7.0 officiels :

yum -y install epel-release

yum -y installe les priorités yum

Modifier /etc/yum.repos.d/epel.repo...

nano /etc/yum.repos.d/epel.repo

... et ajoutez la ligne priority=10 à la section [epel] :

[epel]name=Packages supplémentaires pour Enterprise Linux 7 - $basearch#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearchmirrorlist=https://mirrors.fedoraproject.org/metalink ?repo=epel-7&arch=$basearchfailovermethod=priorityenabled=1priority=10gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7[...]

Ensuite, nous mettons à jour nos packages existants sur le système :

miam mise à jour

Maintenant, nous installons certains packages logiciels qui seront nécessaires plus tard :

yum -y groupinstall 'Outils de développement'

7 quotas

(Si vous avez choisi un schéma de partitionnement différent du mien, vous devez ajuster ce chapitre afin que le quota s'applique aux partitions où vous en avez besoin.)

Pour installer le quota, nous exécutons cette commande :

yum -y quota d'installation

Maintenant, nous vérifions si le quota est déjà activé pour le système de fichiers où le site Web (/var/www) et les données maildir (var/vmail) sont stockées. Dans cet exemple de configuration, j'ai une grande partition racine, donc je recherche '/' :

monter | grep ' / '

[[email protected] ~]# montage | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
[[email protected] ~]#

Si vous avez une partition /var distincte, utilisez :

monter | grep '/var '

Au lieu. Si la ligne contient le mot "aucun quota ", puis procédez comme suit pour activer le quota.

Activation du quota sur la partition / (racine)

Normalement, vous activez le quota dans le fichier /etc/fstab, mais si le système de fichiers est le système de fichiers racine "/", alors le quota doit être activé par un paramètre de démarrage du noyau Linux.

Modifiez le fichier de configuration grub :

nano /etc/default/grub

recherchez la ligne qui commence par GRUB_CMDLINE_LINUX et ajoutez rootflags=uquota,gquota aux paramètres de ligne de commande afin que la ligne résultante ressemble à ceci :

[...]

GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/swap vconsole.font=latarcyrheb-sun16 rd.lvm.lv=centos/root crashkernel=auto vconsole.keymap =us rhgb quiet rootflags=uquota,gquota"
[...]

et appliquez les modifications en exécutant la commande suivante.

cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg_bak
grub2-mkconfig -o /boot/grub2/grub.cfg

et redémarrez le serveur.

redémarrer

Vérifiez maintenant si le quota est activé :

monter | grep ' / '

[[email protected] ~]# montage | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)
[[email protected] ~]#

Lorsque le quota est actif, nous pouvons voir "usrquota,grpquota " dans la liste des options de montage.

Activer le quota sur une partition /var séparée

Si vous avez une partition /var distincte, modifiez /etc/fstab et ajoutez ,uquota,gquota à la partition / (/dev/mapper/centos-var) :

nano /etc/fstab

## /etc/fstab# Créé par anaconda le dimanche 21 septembre 16:33:45 2014## Les systèmes de fichiers accessibles, par référence, sont maintenus sous '/dev/disk'# Voir les pages de manuel fstab(5), findfs (8), mount(8) et/ou blkid(8) pour plus d'informations#/dev/mapper/centos-root / xfs defaults 1 1/dev/mapper/centos-var /var xfs defaults,uquota,gquota 1 2UUID =9ac06939-7e43-4efd-957a-486775edd7b4 /boot xfs defaults 1 3/dev/mapper/centos-swap swap swap defaults 0 0

Puis lancez

mount -o remonter /var

quotacheck -avugm
quotaon -avug

pour activer le quota.

8 Synchroniser l'horloge système

Il est conseillé de synchroniser l'horloge système avec un NTP (n réseau t ime p rotocol) sur Internet. Exécutez simplement

miam -y installer ntp

et l'heure de votre système sera toujours synchronisée.

9 Installer MariaDB

Nous allons installer le serveur et le client MariaDB comme suit :

yum -y installer mariadb mariadb-server

Nous voulons que le service Mariadb s'exécute au démarrage et après le démarrage, et démarre le service en tant que :

systemctl enable mariadb.service
systemctl start mariadb.service

Définissez des mots de passe pour le compte racine MySQL :

mysql_secure_installation

[[email protected] ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation :ligne 379 :find_mysql_client :command not found

REMARQUE :L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS MariaDB
      SERVEURS EN UTILISATION DE PRODUCTION ! VEUILLEZ LIRE ATTENTIVEMENT CHAQUE ÉTAPE !

Afin de vous connecter à MariaDB pour le sécuriser, nous aurons besoin du mot de passe
actuel pour l'utilisateur root. Si vous venez d'installer MariaDB et
vous n'avez pas encore défini le mot de passe root, le mot de passe sera vide,
il vous suffit donc d'appuyer sur Entrée ici.<--ENTER

Entrez le mot de passe actuel pour root (entrez pour aucun) :<--ENTER
OK, mot de passe utilisé avec succès, on passe à autre chose...

La définition du mot de passe root garantit que personne ne peut se connecter à l'utilisateur root de MariaDB
sans l'autorisation appropriée.

Définir le mot de passe root ? [O/n]<--ENTER
Nouveau mot de passe :<--votremotdepassemariadb
Saisir à nouveau le nouveau mot de passe :<--votremotdepassemariadb
Mot de passe mis à jour avec succès !
Rechargement des tables de privilèges..
 ... Réussite !


Par défaut, une installation MariaDB a un utilisateur anonyme, ce qui permet n'importe qui
de se connecter à MariaDB sans avoir à créer un compte utilisateur
pour lui. Ceci est uniquement destiné aux tests et à rendre l'installation
un peu plus fluide. Vous devez les supprimer avant de passer à
un environnement de production.

Supprimer les utilisateurs anonymes ? [O/n] <--ENTER
 ... Succès !

Normalement, root ne devrait être autorisé à se connecter qu'à partir de "localhost". Cela
assure que personne ne peut deviner le mot de passe root à partir du réseau.

Interdire la connexion root à distance ? [O/n]<--ENTER
 ... Succès !

Par défaut, MariaDB est livré avec une base de données nommée "test" à laquelle tout le monde peut
accéder. Ceci est également destiné uniquement aux tests et doit être supprimé
avant de passer à un environnement de production.

Supprimer la base de données de test et y accéder ? [O/n]<--ENTER
 - Suppression de la base de données de test...
 ... Succès !
 - Suppression des privilèges sur la base de données de test...
 ... Succès !

Le rechargement des tables de privilèges garantira que toutes les modifications apportées jusqu'à présent
entreront en vigueur immédiatement.

Recharger les tables de privilèges maintenant ? [O/n] <--ENTER
 ... Succès !

Nettoyage...

C'est fait ! Si vous avez terminé toutes les étapes ci-dessus, votre installation de MariaDB
devrait maintenant être sécurisée.

Merci d'utiliser MariaDB !
[[email protected] ~]#

10 Installer Dovecot

Pigeonnier peut être installé comme suit :

miam -y installer dovecot dovecot-pigeonhole dovecot-mysql

Créez un fichier dovecot-sql.conf vide et un lien symbolique :

touchez /etc/dovecot/dovecot-sql.conf
ln -s /etc/dovecot/dovecot-sql.conf /etc/dovecot-sql.conf

Créez maintenant les liens de démarrage du système et démarrez Dovecot :

systemctl activer dovecot.service
systemctl démarrer dovecot.service

11 Installer Postfix

Postfix peut être installé comme suit :

miam -y installer postfix

Ensuite, désactivez Sendmail et démarrez Postfix :

systemctl enable mariadb.service
systemctl start mariadb.service
systemctl stop sendmail.service
systemctl disable sendmail.service
systemctl enable postfix.service
systemctl restart postfix.service

12 Installer Getmail

Getmail peut être installé comme suit :

miam -y installer getmail

13 Installer Amavisd-new, SpamAssassin et ClamAV

Pour installer amavisd-new, spamassassin et clamav, exécutez la commande suivante :

yum -y installer amavisd-new spamassassin clamav clamd clamav-update décompresser bzip2 unrar perl-DBD-mysql

Editez le fichier de configuration freshclam /etc/freshclam.conf

nano /etc/freshclam.conf

et commentez la ligne "Exemple"

[....]
# Exemple
[....]

Ensuite, nous commençons freshclam, amavisd et clamd.amavisd :

sa-mise à jour
freshclam
systemctl enable amavisd.service

14 Installer Nginx, PHP5 (PHP-FPM) et Fcgiwrap

Nginx est disponible sous forme de package pour CentOS 7.0 (de EPEL) que nous pouvons installer comme suit :

miam -y installer nginx

Si Apache2 est déjà installé sur le système, arrêtez-le maintenant...

systemctl stop httpd.service

... et supprimer les liens de démarrage du système d'Apache :

systemctl désactiver httpd.service

Ensuite, nous créons les liens de démarrage du système pour nginx et le démarrons :

systemctl enable nginx.service
systemctl start nginx.service

(Si Apache2 et nginx sont installés, le programme d'installation d'ISPConfig 3 vous demandera lequel vous souhaitez utiliser - répondez nginx dans ce cas. Si un seul de ces deux éléments est installé, ISPConfig effectuera automatiquement la configuration nécessaire.)

Nous pouvons faire fonctionner PHP5 dans nginx via PHP-FPM (PHP-FPM (FastCGI Process Manager) est une implémentation alternative de PHP FastCGI avec quelques fonctionnalités supplémentaires utiles pour les sites de toute taille, en particulier les sites les plus fréquentés). Nous pouvons installer php-fpm avec php-cli et certains modules PHP5 comme php-mysql dont vous avez besoin si vous souhaitez utiliser MySQL à partir de vos scripts PHP comme suit :

yum -y installer php-fpm php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-magickwand php-mbstring php-mcrypt php- mssql php-snmp php-soap php-tidy

Ensuite, nous ouvrons /etc/php.ini...

nano /etc/php.ini

... et modifier le rapport d'erreur (pour que les avis ne soient plus affichés) :

[...];error_reporting =E_ALL &~E_DEPRECATED &~E_STRICTerror_reporting =E_ALL &~E_NOTICE[...]

Définissez également cgi.fix_pathinfo=0 :

nano /etc/php.ini

[...] ; cgi.fix_pathinfo fournit un support *réel* PATH_INFO/PATH_TRANSLATED pour CGI. PHP ; le comportement précédent était de définir PATH_TRANSLATED sur SCRIPT_FILENAME, et de ne pas grok ; ce que PATH_INFO est. Pour plus d'informations sur PATH_INFO, consultez les spécifications cgi. Paramètre; ceci à 1 obligera PHP CGI à fixer ses chemins pour se conformer à la spécification. Un paramètre; de zéro oblige PHP à se comporter comme avant. La valeur par défaut est 1. Vous devez corriger vos scripts ; pour utiliser SCRIPT_FILENAME plutôt que PATH_TRANSLATED.; http://www.php.net/manual/en/ini.core.php#ini.cgi.fix-pathinfocgi.fix_pathinfo=0[...]

(Veuillez lire http://wiki.nginx.org/Pitfalls pour savoir pourquoi vous devriez faire cela.)

En plus de cela, afin d'éviter des erreurs telles que

[08-Aug-2011 18:07:08] Avertissement PHP :phpinfo() :il n'est pas prudent de se fier aux paramètres de fuseau horaire du système. Vous êtes *requis* pour utiliser le paramètre date.timezone ou la fonction date_default_timezone_set(). Si vous avez utilisé l'une de ces méthodes et que vous recevez toujours cet avertissement, vous avez probablement mal orthographié l'identifiant du fuseau horaire. Nous avons sélectionné 'Europe/Berlin' pour 'CEST/2.0/DST' à la place dans /usr/share/nginx/html/info.php sur la ligne 2

... dans /var/log/php-fpm/www-error.log lorsque vous appelez un script PHP dans votre navigateur, vous devez définir date.timezone dans /etc/php.ini :

[...][Date] ; Définit le fuseau horaire par défaut utilisé par les fonctions de date ; http://www.php.net/manual/en/datetime.configuration.php#ini.date.timezonedate.timezone ="Europe/Berlin"[...]

Créez ensuite les liens de démarrage du système pour php-fpm et démarrez-le :

systemctl activer php-fpm
systemctl redémarrer php-fpm

PHP-FPM est un processus démon (avec le script d'initialisation /etc/init.d/php-fpm) qui exécute un serveur FastCGI sur le port 9000.

Pour obtenir le support CGI dans nginx, nous installons Fcgiwrap.

Fcgiwrap est un wrapper CGI qui devrait également fonctionner pour les scripts CGI complexes et peut être utilisé pour les environnements d'hébergement partagé car il permet à chaque vhost d'utiliser son propre répertoire cgi-bin.

Comme il n'y a pas de package fcgiwrap pour CentOS 7.0, nous devons le construire nous-mêmes. Nous installons d'abord quelques prérequis :

yum -y install fcgi-devel

Nous pouvons maintenant construire fcgiwrap comme suit :

cd /usr/local/src/
git clone git://github.com/gnosek/fcgiwrap.git
cd fcgiwrap
autoreconf -i
./configure
faire
faire installer

Ceci installe fcgiwrap dans /usr/local/sbin/fcgiwrap.

Ensuite, nous installons le paquet spawn-fcgi qui nous permet d'exécuter fcgiwrap en tant que démon :

miam -y install spawn-fcgi

Ouvrez /etc/sysconfig/spawn-fcgi...

nano /etc/sysconfig/spawn-fcgi

... et modifiez le fichier comme suit :

# Vous devez définir certaines options de travail avant que le service "spawn-fcgi" ne fonctionne.# Si SOCKET pointe vers un fichier, alors ce fichier est nettoyé par le script init.## Voir spawn-fcgi(1) pour toutes les options possibles.## Exemple :#SOCKET=/var/run/php-fcgi.sock#OPTIONS="-u apache -g apache -s $SOCKET -S -M 0600 -C 32 -F 1 -P /var /run/spawn-fcgi.pid -- /usr/bin/php-cgi"FCGI_SOCKET=/var/run/fcgiwrap.socketFCGI_PROGRAM=/usr/local/sbin/fcgiwrapFCGI_USER=apacheFCGI_GROUP=apacheFCGI_EXTRA_OPTIONS="-M 0770"OPTIONS="-u $FCGI_USER -g $FCGI_GROUP -s $FCGI_SOCKET -S $FCGI_EXTRA_OPTIONS -F 1 -P /var/run/spawn-fcgi.pid -- $FCGI_PROGRAM"

Ajoutez maintenant l'utilisateur nginx au groupe apache :

usermod -a -G apache nginx

Créez les liens de démarrage du système pour spawn-fcgi...

chkconfig spawn-fcgi sur

... et démarrez-le comme suit :

systemctl start spawn-fcgi

Vous devriez maintenant trouver le socket fcgiwrap dans /var/run/fcgiwrap.socket, appartenant à l'utilisateur et au groupe apache (certains scripts, par exemple Mailman, s'attendent à être exécutés par l'utilisateur/groupe apache, c'est pourquoi nous n'exécutons pas spawn -fcgi en tant qu'utilisateur/groupe nginx, mais ajoutez à la place nginx au groupe apache).

14.1 Versions PHP supplémentaires

À partir d'ISPConfig 3.0.5, il est possible d'avoir plusieurs versions de PHP sur un serveur (sélectionnables via ISPConfig) qui peuvent être exécutées via FastCGI et PHP-FPM. La procédure de création de versions PHP supplémentaires sur CentOS est décrite dans ce tutoriel :Comment utiliser plusieurs versions PHP (PHP-FPM et FastCGI) avec ISPConfig 3 (CentOS 6.3)

Le serveur parfait - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3) - Page 2

15 Installer phpMyAdmin

Ensuite, nous installons phpMyAdmin :

miam -y installer phpmyadmin

Ensuite, nous changeons l'authentification dans phpMyAdmin de cookie à http :

nano /etc/phpMyAdmin/config.inc.php

[...]/* Type d'authentification */$cfg['Servers'][$i]['auth_type'] ='http';[...]

Vous pouvez maintenant trouver phpMyAdmin dans le répertoire /usr/share/phpMyAdmin/.

Après avoir installé ISPConfig 3, vous pouvez accéder à phpMyAdmin comme suit :

Le vhost des applications ISPConfig sur le port 8081 pour nginx est livré avec une configuration phpMyAdmin, vous pouvez donc utiliser http://server1.example.com:8081/phpmyadmin ou http://server1.example.com:8081/phpMyAdmin pour accéder à phpMyAdmin.

Si vous souhaitez utiliser un alias /phpmyadmin ou /phpMyAdmin 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). Vous devez donc définir ces alias pour chacun vhost à partir duquel vous souhaitez accéder à phpMyAdmin.

Pour ce faire, collez ce qui suit dans le champ Directives nginx de l'onglet Options du site Web dans ISPConfig :

 emplacement /phpmyadmin { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

Si vous utilisez https au lieu de http pour votre vhost, vous devez ajouter la ligne fastcgi_param HTTPS on; à votre configuration phpMyAdmin comme ceci :

 emplacement /phpmyadmin { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS activé ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

Si vous utilisez à la fois http et https pour votre vhost, vous pouvez utiliser la variable $https - accédez à nouveau 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 phpMyAdmin pour les requêtes http et https :

 emplacement /phpmyadmin { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/phpmyadmin/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $https; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /phpMyAdmin { réécrire ^/* /phpmyadmin dernier ; } 

16 Installer Mailman

Depuis la version 3.0.4, ISPConfig permet également de gérer (créer/modifier/supprimer) des listes de diffusion Mailman. Si vous souhaitez utiliser cette fonctionnalité, installez Mailman comme suit :

miam -y installer mailman

Avant de pouvoir démarrer Mailman, une première liste de diffusion appelée mailman doit être créée :

toucher /var/lib/mailman/data/aliases
toucher /etc/mailman/aliases
/usr/lib/mailman/bin/newlist mailman

[[email protected] tmp]# /usr/lib/mailman/bin/newlist mailman
Saisissez l'e-mail de la personne qui gère la liste : <-- l'adresse e-mail de l'administrateur, par ex. [email protected]
Mot de passe initial mailman  : <-- mot de passe admin pour la liste mailman 
Pour finir la création de votre liste de diffusion , vous devez modifier votre /etc/aliases (ou
l'équivalent) fichier en ajoutant les lignes suivantes et éventuellement en exécutant le programme
`newaliases'  :

## mailman mailing list
mailman :              "|/usr/lib/mailman/mail/mailman post mailman"
mailman-admin :        "|/usr/lib/mailman/mail/mailman admin mailman"
mailman-bounces :      "|/usr/lib/mailman/mail/mailman rebondit mailman"
mailman-confirm :      "|/usr/lib/mailman/mail/mailman confirm mailman"
mailman-join :         "|/usr/lib/mailman/mail/mailman join mailman"
mailman -leave :        "|/usr/lib/mailman/mail/mailman laisser mailman"
mailman-owner :        "|/usr/lib/mailman/mail/mailman owner mailman"
mailman-request :      " |/usr/lib/mailman/mail/mailman request mailman"
mailman-subscribe :    "|/usr/lib/mailman/mail/mailman subscribe mailman"
mailma n-unsubscribe :  "|/usr/lib/mailman/mail/mailman unsubscribe mailman"

Appuyez sur Entrée pour notifier le propriétaire du mailman... <-- ENTER

[exemple @unixlinux.online tmp]#

Ouvrez ensuite /etc/aliases...

nano /etc/alias

... et ajoutez les lignes suivantes :

[...]mailman:"|/usr/lib/mailman/mail/mailman post mailman"mailman-admin:"|/usr/lib/mailman/mail/mailman admin mailman"mailman-bounces:"| /usr/lib/mailman/mail/mailman rebondit mailman"mailman-confirm :"|/usr/lib/mailman/mail/mailman confirme mailman"mailman-join :"|/usr/lib/mailman/mail/mailman join mailman "mailman-leave:"|/usr/lib/mailman/mail/mailman quitter mailman"mailman-owner:"|/usr/lib/mailman/mail/mailman propriétaire mailman"mailman-request:"|/usr/lib/ mailman/mail/mailman demande mailman"mailman-subscribe:"|/usr/lib/mailman/mail/mailman s'abonner mailman"mailman-unsubscribe:"|/usr/lib/mailman/mail/mailman désabonner mailman"

Exécuter

nouveaux alias

ensuite et relancez Postfix :

systemctl redémarre postfix.service

Créez les liens de démarrage du système pour Mailman et démarrez-le :

systemctl activer mailman.service
systemctl démarrer mailman.service

Nous devons maintenant créer ce lien symbolique pour que Mailman fonctionne avec ISPConfig :

cd /usr/lib/mailman/cgi-bin/
ln -s ./ mailman

Si vous souhaitez utiliser Mailman à partir de vos sites Web créés via ISPConfig, 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). Vous devez donc définir ces alias pour chacun vhost à partir duquel vous souhaitez accéder à Mailman.

Pour ce faire, collez ce qui suit dans le champ Directives nginx de l'onglet Options du site Web dans ISPConfig :

 emplacement /cgi-bin/mailman { alias /usr/lib/mailman/cgi-bin; fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$ ; inclure /etc/nginx/fastcgi_params ; fastcgi_param SCRIPT_FILENAME /usr/lib/mailman$fastcgi_script_name ; fastcgi_param PATH_INFO $fastcgi_path_info ; fastcgi_param PATH_TRANSLATED /usr/lib/mailman$fastcgi_path_info ; fastcgi_intercept_errors activé ; fastcgi_pass unix:/var/run/fcgiwrap.socket; } emplacement /images/mailman { alias /usr/lib/mailman/icons; } emplacement /pipermail { alias /var/lib/mailman/archives/public ; indexation automatique activée ; } 

Cela définit l'alias /cgi-bin/mailman/ pour votre vhost, ce qui signifie que vous pouvez accéder à l'interface d'administration Mailman pour une liste à http:///cgi-bin/mailman/admin/, et le La page Web pour les utilisateurs d'une liste de diffusion peut être trouvée à http:///cgi-bin/mailman/listinfo/.

Sous http:///pipermail, vous pouvez trouver les archives de la liste de diffusion.

17 Installer PureFTPd

PureFTPd peut être installé avec la commande suivante :

miam -y installer pure-ftpd

Créez ensuite les liens de démarrage du système et lancez PureFTPd :

systemctl enable pure-ftpd.service
systemctl start pure-ftpd.service

Nous configurons maintenant PureFTPd pour autoriser les sessions FTP et TLS. FTP est un protocole très peu sûr car tous les mots de passe et toutes les données sont transférés en texte clair. En utilisant TLS, toute la communication peut être cryptée, ce qui rend le FTP beaucoup plus sécurisé.

OpenSSL est requis par TLS ; pour installer OpenSSL, nous exécutons simplement :

yum -y installe openssl

Ouvrez /etc/pure-ftpd/pure-ftpd.conf...

nano /etc/pure-ftpd/pure-ftpd.conf

Si vous souhaitez autoriser les sessions FTP et TLS, définissez TLS sur 1 :

[...]# Cette option peut accepter trois valeurs :# 0 :désactive la couche de chiffrement SSL/TLS (par défaut).# 1 :accepte les sessions traditionnelles et chiffrées.# 2 :refuse les connexions qui n'utilisent pas SSL /Mécanismes de sécurité TLS,# y compris les sessions anonymes.# Ne _pas_ décommentez ceci aveuglément. Assurez-vous que :# 1) Votre serveur a été compilé avec le support SSL/TLS (--with-tls),# 2) Un certificat valide est en place,# 3) Seuls les clients compatibles se connecteront.TLS 1[.. .]

Pour utiliser TLS, nous devons créer un certificat SSL. Je le crée dans /etc/ssl/private/, donc je crée d'abord ce répertoire :

mkdir -p /etc/ssl/private/

Ensuite, nous pouvons générer le certificat SSL comme suit :

openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem

Nom du pays (code à 2 lettres) [XX] :<-- Entrez le nom de votre pays (par exemple, "DE").
Nom de l'État ou de la province (nom complet) [] :<-- Entrez le nom de votre État ou de la province .
Nom de la localité (par exemple, ville) [Ville par défaut] :<-- Saisissez votre ville.
Nom de l'organisation (par exemple, société) [Société par défaut] :<-- Saisissez le nom de votre organisation (par exemple, , le nom de votre entreprise).
Nom de l'unité organisationnelle (par exemple, section) [] :<-- Saisissez le nom de votre unité organisationnelle (par exemple, "Service informatique").
Nom commun (par exemple, votre nom ou le nom d'hôte de votre serveur) [] :<-- Saisissez le nom de domaine complet du système (par exemple, "serveur1.exemple.com").
Adresse e-mail [] :<-- Saisissez votre adresse e-mail.

Modifiez les permissions du certificat SSL :

chmod 600 /etc/ssl/private/pure-ftpd.pem

Redémarrez enfin PureFTPd :

systemctl redémarrer pure-ftpd.service

C'est ça. Vous pouvez maintenant essayer de vous connecter en utilisant votre client FTP; cependant, vous devez configurer votre client FTP pour utiliser TLS.

18 Installer BIND

Nous pouvons installer BIND comme suit :

yum -y install bind bind-utils

Ouvrez ensuite /etc/sysconfig/named...

nano /etc/sysconfig/named

... et assurez-vous que la ligne ROOTDIR=/var/named/chroot est commentée :

# Options de processus nommés BIND# ~~~~~~~~~~~~~~~~~~~~~~~~~~## OPTIONS="whatever" -- Ces options supplémentaires seront transmises à nommé # au démarrage. N'ajoutez pas -t ici, activez le fichier d'unité # -chroot.service approprié.

Faites une sauvegarde du fichier /etc/named.conf existant et créez-en un nouveau comme suit :

cp /etc/named.conf /etc/named.conf_bak
cat /dev/null> /etc/named.conf
nano /etc/named.conf

////named.conf//// Fourni par le package de liaison Red Hat pour configurer le serveur DNS ISC BIND named(8)// en tant que serveur de noms de mise en cache uniquement (en tant que résolveur DNS localhost uniquement)./// / Voir /usr/share/doc/bind*/sample/ pour des exemples de fichiers de configuration nommés.//options { listen-on port 53 { any; } ; listen-on-v6 port 53 { n'importe lequel ; } ; répertoire "/var/named" ; fichier de vidage "/var/named/data/cache_dump.db" ; fichier-statistiques "/var/named/data/named_stats.txt" ; memstatistics-file "/var/named/data/named_mem_stats.txt" ; allow-query { n'importe lequel ; } ; recursion no ;} logging { channel default_debug { file "data/named.run" ; dynamique de sévérité ; };};zone "." IN { type indice ; file "named.ca";};include "/etc/named.conf.local";

Créez le fichier /etc/named.conf.local qui est inclus à la fin de /etc/named.conf (/etc/named.conf.local sera plus tard rempli par ISPConfig si vous créez des zones DNS dans ISPConfig) :

touchez /etc/named.conf.local

Ensuite, nous créons les liens de démarrage et démarrons BIND :

systemctl enable named.service
systemctl start named.service

19 Installer Webalizer et AWStats

Webalizer et AWStats peuvent être installés comme suit :

yum -y installer webalizer awstats perl-DateTime-Format-HTTP perl-DateTime-Format-Builder

20 Installer Jailkit

Jailkit n'est nécessaire que si vous souhaitez chrooter les utilisateurs SSH. Il peut être installé comme suit (important :Jailkit doit être installé avant ISPConfig - il ne peut pas être installé après !) :

cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.17.tar.gz
tar xvfz jailkit-2.17.tar.gz
cd jailkit-2.17
./configure
make
make install
cd ..
rm -rf jailkit-2.17*

21 Installer fail2ban

Ceci est facultatif mais recommandé, car le moniteur ISPConfig essaie d'afficher le journal :

miam -y installer fail2ban

Nous devons configurer fail2ban pour qu'il se connecte au fichier journal /var/log/fail2ban.log car il s'agit du fichier journal surveillé par le module ISPConfig Monitor. Ouvrez /etc/fail2ban/fail2ban.conf...

nano /etc/fail2ban/fail2ban.conf

... et assurez-vous que logtarget =/var/log/fail2ban.log :

[...]# Option :logtarget# Remarques. :Définissez la cible du journal. Il peut s'agir d'un fichier, SYSLOG, STDERR ou STDOUT. # Une seule cible de journal peut être spécifiée. # Si vous modifiez logtarget à partir de la valeur par défaut et que vous # utilisez logrotate -- ajustez ou désactivez également la rotation dans le # fichier de configuration correspondant # (par exemple /etc/logrotate.d/fail2ban sur les systèmes Debian)# Valeurs :[ STDOUT | STDERR | SYSLOG | FICHIER ] Par défaut :STDERR#logtarget =/var/log/fail2ban.log[...]

Créez ensuite les liens de démarrage du système pour fail2ban et démarrez-le :

systemctl enable fail2ban.service
systemctl start fail2ban.service

22 Installer rkhunter

rkhunter peut être installé comme suit :

miam -y installer rkhunter

Le serveur parfait - CentOS 7 x86_64 (nginx, Dovecot, ISPConfig 3) - Page 3

23 Installer RoundcubeMail

Pour installer le client de messagerie Web Roundcube, exécutez...

miam -y installer roundcubemail

ISPConfig contient un alias de messagerie Web par défaut pour squirremail dans son vhost d'applications. Nous utiliserons cet alias pour le cube rond plus moderne, nous créons donc 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 :

L'hôte virtuel des applications ISPConfig sur le port 8081 pour nginx est fourni avec une configuration d'alias /webmail. Vous pouvez donc utiliser  http://server1.example.com:8081/webmail pour accéder à RoundcubeMail.

Si vous souhaitez utiliser un alias /webmail ou /roundcubemail que vous pouvez utiliser à partir de 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 chacun 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 :

 emplacement /roundcubemail { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/roundcubemail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /webmail { réécrire ^/* /roundcubemail dernier ; } 

Si vous utilisez https au lieu de http pour votre vhost, vous devez ajouter la ligne fastcgi_param HTTPS on; à votre configuration RoundcubeMail comme ceci :

 emplacement /roundcubemail { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/roundcubemail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS activé ; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /webmail { réécrire ^/* /roundcubemail dernier ; } 

Si vous utilisez à la fois http et https pour votre vhost, vous pouvez utiliser la variable $https - accédez à nouveau 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 :

 emplacement /roundcubemail { root /usr/share/ ; index index.php index.html index.htm; emplacement ~ ^/roundcubemail/(.+\.php)$ { try_files $uri =404; racine /usr/partage/ ; fastcgi_pass 127.0.0.1:9000; fastcgi_param HTTPS $https; # <-- ajoutez cette ligne fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $request_filename ; inclure /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 activé ; } emplacement ~* ^/roundcubemail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { root /usr/share/; } } emplacement /webmail { réécrire ^/* /squirrelmail dernier ; } 

Nous avons maintenant besoin d'une base de données pour le courrier roundcube, nous allons l'initialiser comme suit :

mysql -u root -p

À l'invite mariadb, utilisez :

CRÉER UNE BASE DE DONNÉES roundcubedb ;
CREATE USER [email protected] IDENTIFIED BY 'roundcubepassword' ;
ACCORDER TOUS LES PRIVILÈGES sur roundcubedb.* à [email protected];
FLUSH PRIVILEGES ;
exit

J'utilise les détails de la base de données roundcube comme 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 démarrer l'installation d'ISPConfig, assurez-vous qu'Apache est arrêté (s'il est installé - il est possible que certains de vos packages installés aient installé Apache en tant que dépendance à votre insu). Si Apache2 est déjà installé sur le système, arrêtez-le maintenant...

systemctl stop httpd.service

... et supprimer les liens de démarrage du système d'Apache :

systemctl désactiver httpd.service

Assurez-vous que nginx est en cours d'exécution :

systemctl redémarre nginx.service

(Si Apache et nginx sont installés, le programme d'installation 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 seuls Apache ou nginx sont installés, cela est automatiquement détecté par le programme d'installation et aucune question n'est posée.)

Téléchargez la version actuelle d'ISPConfig 3 et installez-la. Le programme d'installation d'ISPConfig configurera tous les services comme Postfix, Dovecot, etc. pour vous. Une configuration manuelle telle que requise pour ISPConfig 2 n'est plus nécessaire.

Vous avez maintenant également la possibilité de laisser le programme d'installation créer un vhost SSL pour le panneau de contrôle ISPConfig, afin que ISPConfig soit 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 ISPConfig (y,n) [y] :.

Pour installer ISPConfig 3 à partir de la dernière version publiée, procédez comme suit :

cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install /installer/

La prochaine étape consiste à exécuter

php -q install.php

Cela lancera le programme d'installation d'ISPConfig 3 :

[[email protected] install]# php -q install.php


----------------------- -------------------------------------------------- -------
 _____ ___________   _____              __ _         ____
|_   _/  ___| ___ \ /  __ \            / _(_)       /__  \
  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
  | | `--. \  __/  | | / _ \| '_ \| _| |/ _` | |_ |
 _| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
 \___/\____/\_|      \____/\___/|_| |_|_| |_|\__, | \____/
                                            __/ |
                                          |___/
-------------------------------------------------- ------------------------------------------


>> Configuration initiale

Système d'exploitation  : Redhat ou compatible, version inconnue.

    Suivant seront quelques questions pour la configuration principale alors soyez prudent.
    Les valeurs par défaut sont entre [crochets] et peuvent être acceptées avec  .
    Appuyez sur "quitter" (sans les guillemets) pour arrêter le programme d'installation.


Sélectionnez la langue (en,de) [en] : <-- ENTRER

Mode d'installation (standard,expert) [standard] : <-- ENTRER

Nom d'hôte complet (FQDN) du serveur, par exemple serveur1.domaine.tld  [serveur1.exemple.com] : <-- ENTER

nom d'hôte du serveur MySQL [localhost] : <-- ENTER

MySQL nom d'utilisateur root [root] : <-- ENTER

mot de passe root MySQL [] : <- - votremotdepasseqlracine

base de données MySQL à créer [dbispconfig] : <-- ENTER

Jeu de caractères MySQL [utf8] : <-- ENTER

Apache et nginx détecté. Sélectionnez le serveur à utiliser pour ISPConfig : (apache,nginx) [apache] :<-- nginx

Génération d'une clé privée RSA 2048 bits
........... .................................................. .........+++
.................................. .............+++
écrire une nouvelle clé privée à 'smtpd.key'
-----
Vous allez être sur le point d'être demandé de saisir les informations qui seront incorporées
dans votre demande de certificat.
Ce que vous êtes sur le point de saisir est ce qu'on appelle un nom distingué ou un  DN.
Il existe un assez quelques 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] : <-- ENTRER
Nom de l'État ou de la province (nom complet) [] : <-- ENTRER
Nom de la localité (par exemple, ville) [Ville par défaut] : <-- ENTER
Nom de l'organisation (par exemple, société) [Default Company Ltd] : <-- ENTER
Nom de l'unité organisationnelle (par exemple, section) [] : <-- ENTER
Nom commun (par exemple, votre n nom ou le nom d'hôte de votre serveur) [] : <-- ENTER
Adresse e-mail [] : <-- ENTER
Configuration Jailkit
Configuration Dovecot
Configuration Spamassassin
Configuration Amavisd
Configuration Getmail
Configuration Pureftpd
Configuration BIND
Configuration nginx
Configuration Vlogger
Configuration Apps vhost
Configuration Bastille Firewall
Configuration Fail2ban
Installation ISPConfig
Port ISPConfig [8080] : <-- ENTRER

Souhaitez-vous une connexion sécurisée (SSL) à l'interface Web ISPConfig (y,n) [y] : <-- ENTRER

Génération de la clé privée RSA, module de long 4096 bits
............................ ..................................++
......... .................................................. ................++
e est 65537 (0x10001)
Vous êtes sur le point d'être demandé de saisir des informations qui seront incorporées
dans votre demande de certificat.
Ce que vous êtes sur le point d'entrer est ce qu'on appelle un nom distingué ou un DN.
Il il y a un peu de champs mais vous pouvez en laisser certains vides
Pour certains champs il y aura une valeur par défaut,
Si vous entrez '.', le champ sera laissé en vide.
--- --
Nom du pays (code à 2 lettres) [XX] : <-- ENTER
Nom de l'État ou de la province (nom complet) [] : <-- ENTER
Nom de la localité (par exemple, ville ) [Ville par défaut] : <-- ENTER
Nom de l'organisation (par exemple, société) [Default Company Ltd] : <-- ENTER
Nom de l'unité organisationnelle (par exemple, section) [] : <-- ENTER
Nom commun (par exemple votre nom ou le nom d'hôte de votre serveur) [] : <-- ENTRER
Adresse e-mail [] : <-- ENTRER

Veuillez saisir les informations supplémentaires suivantes ' attributs
à envoyer avec votre demande de certificat
Un mot de passe de défi [] : <-- ENTER
Un nom de société facultatif [] : <-- ENTER
en écrivant la clé RSA
Configuration DBServer
Installation ISPConfig crontab
pas crontab pour root
pas crontab pour getmail
Redémarrage des services ...
Arrêt mysqld :                                         [        [                                   [                                      >Commencer MySQLD:[OK]
Arrêt PostFix:[OK]
Démarrage de PostFix:[OK]
Arrêt de SaslAuthd:[Échec]
Démarrage de Saslauthd:[OK]
Arrêter Amavisd:Daemon [1554] terminé par Sigterm
[OK]
Amavisd arrêté
Démarrer Amavisd:[OK]

Arrêt Clamd.Amavisd:[OK]
Démarrer Clamd.amavisd:[OK]
Arrêt DoveCot IMAP:[OK]
Démarrage de DoveCot IMAP:[OK]
Rechargement PHP-FPM:[OK]
Rechargement nginx :                          [OK]
Arrêt de Pure-FTPD:[OK]
Démarrage de Pure-FTPD:[OK]
Installation terminée.
[[email protected] Install] #

Pour corriger les erreurs 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 redémarre 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 le programme d'installation Web de RoundcubeMail, faites défiler la page et cliquez sur suivant :

Entrez ensuite 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 :

Définissez le serveur SMTP sur localhost et définissez votre langue préférée

et cliquez sur "Créer une configuration" pour passer à la page suivante.

Ouvrez le fichier /etc/roundcubemail/config.inc.php sur le shell :

nano /etc/roundcubemail/config.inc.php

et collez la configuration affichée dans le programme d'installation Web dans ce fichier et enregistrez le fichier.

 

Revenez ensuite au programme d'installation 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 une initialisation réussie de la base de données :

Pour protéger la configuration de RoundcubeMail contre les modifications non autorisées, je supprimerai le dossier d'installation en exécutant cette commande sur 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 devez 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 du haut, 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 dans l'onglet "DNS" du formulaire :

et entrez les chemins DNS comme suit :

Répertoire des fichiers de zone BIND :/var/named
Chemin BIND named.conf :/etc/named.conf
Chemin BIND named.conf.local :/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 procéder comme 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écuter...

sysctl-p

... ensuite pour que la modification prenne effet.

25.1 Manuel ISPConfig 3

Afin d'apprendre à utiliser ISPConfig 3, je vous recommande fortement de télécharger le manuel 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 ainsi que des exemples d'entrées valides, et fournit des tutoriels pour les tâches les plus courantes dans ISPConfig 3. Il explique également comment rendre votre serveur plus sécurisé et est accompagné d'une section de dépannage à la fin.

  • CentOS :http://www.centos.org/
  • ISPConfig :http://www.ispconfig.org/

Panels
  1. Le serveur parfait – CentOS 7 (Apache2, Dovecot, ISPConfig 3)

  2. Le serveur parfait - OpenSUSE 12.3 x86_64 (nginx, Dovecot, ISPConfig 3)

  3. Le serveur parfait - CentOS 5.6 x86_64 [ISPConfig 2]

  4. Le serveur parfait - CentOS 6.1 x86_64 avec Apache2 [ISPConfig 3]

  5. Le serveur parfait - OpenSUSE 12.1 x86_64 avec Nginx [ISPConfig 3]

Le serveur parfait - OpenSUSE 12.2 x86_64 (Apache2, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 6.3 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 6.3 x86_64 (nginx, Courier, ISPConfig 3)

Le serveur parfait - CentOS 6.3 x86_64 (Apache2, Courier, ISPConfig 3)

Le serveur parfait - CentOS 6.4 x86_64 (nginx, Dovecot, ISPConfig 3)

Le serveur parfait - CentOS 6.4 x86_64 (Apache2, Dovecot, ISPConfig 3)