Ce tutoriel montre l'installation d'ISPConfig 3.2 sur un serveur CentOS 8 (64Bit). ISPConfig est un panneau de contrôle d'hébergement Web qui vous permet de configurer les services suivants via un navigateur Web :serveur Web Apache, PHP, serveur de messagerie Postfix, MySQL, serveur de noms BIND, PureFTPd, SpamAssassin, ClamAV, Mailman et bien d'autres.
1 Exigences
Pour installer un tel système, vous aurez besoin des éléments suivants :
- Un système de serveur minimal Centos 8. Il peut s'agir d'un serveur installé à partir de zéro, comme décrit dans notre didacticiel sur le serveur minimal Centos 8, ou d'un serveur virtuel ou d'un serveur racine d'une société d'hébergement sur laquelle une configuration minimale de Centos 8 est installée.
- 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.
3 Préparer le serveur
Définir la disposition du clavier
Dans le cas où la disposition du clavier du serveur ne correspond pas à votre clavier, vous pouvez passer au bon clavier (dans mon cas "de" pour une disposition de clavier allemande, avec la commande localectl :
localectl set-keymap de
Pour obtenir une liste de tous les keymaps disponibles, exécutez :
localectl list-keymaps
Je veux installer ISPConfig à la fin de ce tutoriel, ISPConfig est livré avec le script de pare-feu Bastille que j'utiliserai comme pare-feu, donc je désactive maintenant le pare-feu CentOS par défaut. Bien sûr, vous êtes libre de laisser le pare-feu CentOS activé 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...
dnf -y install net-tools wget rsyslog curl
systemctl stop firewalld.service
systemctl disable firewalld.service
pour arrêter et désactiver le pare-feu CentOS. Ce n'est pas grave lorsque vous obtenez des erreurs ici, cela indique simplement que le pare-feu n'a pas été installé.
Ensuite, vous devez vérifier que le pare-feu a bien été désactivé. Pour cela, lancez la commande :
iptables -L
Le résultat devrait ressembler à ceci :
[[email protected] ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chaîne FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Ou utilisez la commande firewall-cmd :
firewall-cmd --state
[[email protected] ~]# firewall-cmd --state
ne fonctionne pas
[[email protected] ~]#
Je vais maintenant installer l'éditeur de configuration réseau et l'éditeur basé sur le shell "nano" que j'utiliserai dans les prochaines étapes pour modifier les fichiers de configuration :
dnf -y install nano wget NetworkManager-tui yum-utils
Si vous n'avez pas configuré votre carte réseau lors de l'installation, vous pouvez le faire maintenant. Exécuter...
nmtui
... et allez dans Modifier une connexion :
Sélectionnez votre interface réseau :
Ensuite, remplissez les détails de votre réseau - désactivez DHCP et remplissez une adresse IP statique, un masque de réseau, votre passerelle et un ou deux serveurs de noms, puis cliquez sur OK :
Sélectionnez ensuite OK pour confirmer les modifications que vous avez apportées aux paramètres réseau
et Quitter pour fermer l'outil de configuration réseau nmtui.
Vous devriez courir
ifconfig
maintenant pour vérifier si le programme d'installation a bien saisi votre adresse IP :
[[email protected] ~]# ifconfig
ens33 :flags=4163mtu 1500
inet 192.168.0.100 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::20c:29ff:feee:b665 préfixe 64 scopeid 0x20
inet6 2003:e1:bf22:1b00:20c:29ff:feee:b665 préfixe 64 scopeid 0x0
ether 00:0c:29:ee:b6:65 txqueuelen 1000 (Ethernet)
Paquets RX 2874 octets 1369892 (1,3 Mio)
Erreurs RX 0 abandonné 546 dépassement 0 frame 0 paquet TX 968 octets 160901 (157,1 Kio)
Erreurs de transmission 0 abandonnées 0 dépassements 0 porteuse 0 collisions 0
lo :flags=73mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1 000 (Local Loopback)
Paquets RX 0 octets 0 (0,0 B)
Erreurs RX 0 abandonné 0 dépassement 0 trame 0
Paquets TX 0 octets 0 (0,0 B)
Erreurs TX 0 abandonné 0 dépassements 0 porteur 0 collisions 0
Si votre carte réseau n'y apparaît pas, elle n'est pas activée au démarrage. Dans ce cas, ouvrez le fichier /etc/sysconfig/network-scripts/ifcfg-eth0
nano /etc/sysconfig/network-scripts/ifcfg-ens33
et réglez ONBOOT sur oui :
[...]
ONBOOT=oui
[...]
et redémarrez le serveur.
Vérifiez votre /etc/resolv.conf s'il répertorie tous les serveurs de noms que vous avez précédemment configurés :
cat /etc/resolv.conf
Si les serveurs de noms sont manquants, exécutez
nmtui
et ajoutez à nouveau les serveurs de noms manquants.
Passons maintenant à la configuration...
Ajuster /etc/hosts et /etc/hostname
Ensuite, nous allons éditer /etc/hosts. Faites en sorte qu'il ressemble à ceci :
nano /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.0.100 server1.example.com server1
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Définissez le nom d'hôte dans le fichier /etc/hostname. Le fichier doit contenir le nom de domaine complet (par exemple server1.example.com dans mon cas) et pas seulement le nom court comme "server1". Ouvrez le fichier avec l'éditeur nano :
nano /etc/hostname
Et définissez le nom d'hôte dans le fichier.
serveur1.exemple.com
Enregistrez le fichier et quittez nano.
Définir SELinux sur permissif
SELinux est une extension de sécurité de CentOS qui devrait fournir une sécurité étendue. ISPConfig n'est pas livré avec un ensemble de règles SELinux, donc je l'ai défini sur permissif (c'est un must si vous souhaitez installer ISPConfig plus tard).
Modifiez /etc/selinux/config et définissez SELINUX=permissive :
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=permissif# SELINUXTYPE=peut prendre l'une de ces deux valeurs :# ciblé - Les processus ciblés sont protégés,# mls - Protection de sécurité à plusieurs niveaux.SELINUXTYPE=ciblé
Ensuite, nous devons redémarrer le système :
redémarrer
4 Activer des dépôts supplémentaires et installer certains logiciels
Tout d'abord, nous importons les clés GPG pour les packages logiciels :
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
Ensuite, nous activons le référentiel EPEL sur notre système CentOS car de nombreux packages que nous allons installer au cours de ce didacticiel ne sont pas disponibles dans le référentiel officiel CentOS 8 :
dnf -y install epel-release
Activer les outils électriques :
dnf config-manager --set-enabled powertools
Ensuite, nous mettons à jour nos packages existants sur le système :
dnf -y mise à jour
Maintenant, nous installons certains packages logiciels qui seront nécessaires plus tard :
dnf -y groupinstall 'Outils de développement'
5 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 :
dnf -y quota d'installation
Nous vérifions maintenant si le quota est déjà activé pour le système de fichiers dans lequel 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] ~]# monter | 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 "noquota ", 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 la ligne de commande afin que la ligne résultante ressemble à ceci :
GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap 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] ~]# monter | 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.
Activation du quota sur une partition /var distincte
Si vous avez une partition /var séparée, 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
#
# Systèmes de fichiers accessibles, par référence , sont maintenus sous '/dev/disk'
# Consultez 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 2
UUID=9ac06939-7e43-4efd-957a- 486775edd7b4 /boot xfs defaults 1 3
/dev/mapper/centos-swap swap swap defaults 0 0
Puis lancez
mount -o remount /var
quotacheck -avugm
quotaon -avug
pour activer les quotas. Lorsque vous obtenez une erreur indiquant qu'il n'y a pas de partition avec un quota activé, redémarrez le serveur avant de continuer.
6 Installer Apache, PHP, MySQL et phpMyAdmin
Activez le référentiel Remi pour obtenir les nouvelles versions de PHP (actuellement PHP 7.4) :
dnf install http://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf -y install yum-utils
dnf -y module reset php
dnf -y module install php:remi-7.4
mise à jour dnf
Nous pouvons installer les packages nécessaires avec une seule commande :
dnf -y install httpd mod_ssl mariadb-server php php-mysqlnd php-mbstring
Pour garantir que le serveur ne peut pas être attaqué via la vulnérabilité HTTPOXY, nous désactiverons globalement l'en-tête HTTP_PROXY dans apache.
Ajoutez la règle d'en-tête apache à la fin du fichier httpd.conf :
echo "RequestHeader unset Proxy early">> /etc/httpd/conf/httpd.conf
Et redémarrez httpd pour appliquer le changement de configuration.
redémarrage du service httpd
Installez phpMyAdmin :
cd /tmp
wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.gz
tar xzvf phpMyAdmin-5.0. 2-all-languages.tar.gz
mkdir /usr/share/phpmyadmin
mv phpMyAdmin-5.0.2-all-languages/* /usr/share/phpmyadmin/
mkdir /usr /share/phpmyadmin/tmp
chown -R apache:apache /usr/share/phpmyadmin
chmod 777 /usr/share/phpmyadmin/tmp
Facultatif :Modifier le module Apache MPM
CentOS 8 utilise le module Apache MPM Event par défaut, ce qui est bien d'un côté, car il permet d'utiliser le protocole HTTP/2. En revanche, il ne permet pas d'utiliser le module apache mod_php. En général, on devrait utiliser PHP-FPM par défaut aujourd'hui et ISPConfig le supporte. Si vous avez besoin de l'ancien mode mod_php pour des raisons de compatibilité, vous pouvez changer le MPM Apache comme ceci :
nano /etc/httpd/conf.modules.d/00-mpm.conf
Ajoutez un # devant la ligne d'événement MPM pour qu'elle ressemble à ceci :
# LoadModule mpm_event_module modules/mod_mpm_event.so
Ensuite, supprimez le # dans de la ligne MPM Prefork, de sorte qu'il ressemble à ceci :
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Redémarrez ensuite httpd pour appliquer le changement de configuration.
redémarrage du service httpd
7 Installer Dovecot
Le pigeonnier peut être installé comme suit :
dnf -y install dovecot dovecot-mysql dovecot-pigeonhole
Créez un fichier dovecot-sql.conf vide et créez des liens symboliques :
touchez /etc/dovecot/dovecot-sql.conf
ln -s /etc/dovecot/dovecot-sql.conf /etc/dovecot-sql.conf
ln -s /etc/dovecot /dovecot.conf /etc/dovecot.conf
Créez maintenant les liens de démarrage du système et démarrez Dovecot :
systemctl activer colombier
systemctl démarrer colombier
8 Installer Postfix
Postfix peut être installé comme suit :
dnf -y install postfix postfix-mysql
Ensuite, ouvrez les ports TLS/SSL et de soumission dans Postfix :
nano /etc/postfix/master.cf
Décommentez les sections submission et smtps comme suit et ajoutez des lignes si nécessaire afin que cette section du fichier master.cf ressemble exactement à celle ci-dessous. IMPORTANT : Supprimez le # devant les lignes qui commencent par smtps et la soumission aussi et pas seulement des lignes -o après ces lignes !
[...]
soumission inet n - n - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o s =$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
smtps inet n - n - - smtpd
-o syslog_name=postfix/smtps
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_se nder_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING
[...]
Ensuite, désactivez Sendmail et démarrez Postfix et MariaDB (MySQL) :
systemctl enable mariadb.service
systemctl start mariadb.service
systemctl enable postfix.service
systemctl restart postfix.service
Nous désactivons sendmail pour nous assurer qu'il ne démarre pas s'il est installé sur votre serveur. Ainsi, le message d'erreur "Échec de l'émission de l'appel de méthode :l'unité sendmail.service n'est pas chargée." peut être ignoré.
Pour activer la prise en charge des appareils anciens/obsolètes, exécutez cette commande (facultatif, utilisez uniquement lorsque vous souhaitez que les anciens appareils de messagerie se connectent car cela affaiblit la configuration SSL/TLS en autorisant des chiffrements moins sécurisés) :
update-crypto-policies --set LEGACY
9 Installer Getmail
Getmail peut être installé comme suit :
dnf install python2
cd /tmp
wget http://pyropus.ca/software/getmail/old-versions/getmail-5.14.tar.gz
tar xvfz getmail-5.14 .tar.gz
cd getmail-5.14
python2 setup.py build
python2 setup.py install
10 Définir les mots de passe MySQL et configurer phpMyAdmin
Définissez des mots de passe pour le compte racine MySQL :
mysql_secure_installation
[[email protected] tmp]# mysql_secure_installation
REMARQUE :L'EXÉCUTION DE TOUTES LES PARTIES DE CE SCRIPT EST RECOMMANDÉE POUR TOUS LES SERVEURS MariaDB
EN UTILISATION DE PRODUCTION ! VEUILLEZ LIRE ATTENTIVEMENT CHAQUE ÉTAPE !
Afin de se 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.
Entrez le mot de passe actuel pour root (entrez pour aucun) :
OK, mot de passe utilisé avec succès, continuez...
La définition du mot de passe root garantit que personne ne peut se connecter à l'utilisateur root MariaDB
sans l'autorisation appropriée.
Définir le mot de passe root ? [O/n] <-- ENTRER
Nouveau mot de passe : <-- votremotdepasseqlracine
Saisir à nouveau le nouveau mot de passe : <-- votremotdepasseqlracine
Mot de passe mis à jour avec succès !
Rechargement des tableaux de privilèges. .
... Succès !
Par défaut, une installation MariaDB a un utilisateur anonyme, permettant à n'importe qui
de se connecter à MariaDB sans avoir de compte utilisateur créé pour
eux. 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 doit être autorisé à se connecter depuis 'localhost'. Cela
assure que quelqu'un ne ne peut pas deviner le mot de passe root depuis le réseau.
Interdire la connexion root à distance ? [O/n] <-- ENTER
... Succès !
Par défaut, MariaDB est fourni 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...
... Réussite !
- Suppression des privilèges sur la base de données de test...
... Réussite !
Recharger les tableaux de privilèges garantira que tout les changements apportés jusqu'à présent
prendront effet immédiatement.
Recharger les tableaux de privilèges maintenant ? [O/n] <-- ENTER
... Réussite !
Nettoyage ...
Tout est terminé ! 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] tmp ]#
Maintenant, nous configurons phpMyAdmin. Créez ce fichier de configuration phpMyAdmin :
nano /etc/httpd/conf.d/phpmyadmin.conf
Ajoutez ce contenu au fichier :
# phpMyAdmin - Navigateur MySQL basé sur le Web écrit en php## N'autorise que localhost par défaut## Mais autoriser phpMyAdmin à toute personne autre que localhost devrait être considéré# dangereux à moins qu'il ne soit correctement sécurisé par SSLAlias /phpMyAdmin /usr/share/phpmyadminAlias /phpmyadmin /usr/share/phpmyadmin# Apache 2.4 # # Require ip 127.0.0.1 # Require ip ::1 # # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1
Ensuite, nous changeons l'authentification dans phpMyAdmin de cookie à http:
cp -pf /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
nano /usr/share/phpmyadmin/config.inc.php[...]/* Type d'authentification */$cfg['Servers'][$i]['auth_type'] ='http';[...]Ensuite, nous créons les liens de démarrage du système pour Apache et le démarrons :
systemctl activer httpd
systemctl redémarrer httpdVous pouvez maintenant diriger votre navigateur vers http://server1.example.com/phpmyadmin/ ou http://192.168.0.100/phpmyadmin/ et vous connecter avec le nom d'utilisateur root et votre nouveau mot de passe root MySQL.
11 Installer Amavisd-new, SpamAssassin, ClamAV et Postgrey
Pour installer amavisd-new, SpamAssassin et ClamAV, exécutez la commande suivante :
dnf -y install amavisd-new spamassassin clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd décompresser bzip2 perl-DBD-mysql postgrey re2cEnsuite, nous commençons freshclam, amavisd et clamd.amavisd :
sa-update
freshclam
systemctl enable amavisd.service
systemctl start amavisd.service
systemctl start [email protected]
systemctl enable postgrey.service
systemctl démarrer postgrey.serviceDans l'étape suivante, nous configurons postgrey. Ouvrez le fichier /etc/sysconfig/postgrey dans un éditeur :
nano /etc/sysconfig/postgreyet changez la ligne :
POSTGREY_TYPE="--unix=/var/spool/postfix/postgrey/socket"à
POSTGREY_TYPE="--inet=10023"Enregistrez le fichier et redémarrez postgrey :
redémarrage du service postgreyPour configurer amavisd, éditez le fichier /etc/clamd.d/amavisd.conf :
nano /etc/clamd.d/amavisd.confet changez la ligne :
LocalSocket /run/clamd.amavisd/clamd.sockà
LocalSocket /var/spool/amavisd/clamd.sockEnregistrez le fichier de configuration modifié et redémarrez ClamAV :
systemctl redémarrer [email protected]Nous devons maintenant créer une unité système pour le service freshclam. Créez un nouveau fichier /usr/lib/systemd/system/freshclam.service :
nano /usr/lib/systemd/system/freshclam.serviceet saisissez le contenu suivant dans ce fichier :
[Unit]Description =ClamAV ScannerAfter =network.target[Service]Type =forking# si vous souhaitez en numériser plusieurs par jour, remplacez le numéro 1 par le numéro souhaité dans la ligne ci-dessous.ExecStart =/usr/bin /freshclam -d -c 1Restart =on-failurePrivateTmp =true[Install]WantedBy=multi-user.targetEnregistrez le fichier, puis activez et démarrez le service.
systemctl enable freshclam.service
systemctl start freshclam.service
systemctl status freshclam.service12 Installer Apache avec mod_php, mod_fcgi/PHP, PHP-FPM
ISPConfig 3 vous permet d'utiliser mod_php, mod_fcgi/PHP, cgi/PHP et PHP-FPM sur une base par site Web.
Nous pouvons installer Apache2 avec mod_php, mod_fcgid et PHP comme suit :
dnf -y install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-pecl-apc php-mbstring php-mcrypt php-snmp php -soap php-tidy curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel mod_fcgid php-cli httpd-devel php-fpm php-intl php-imagick php-pspell wgetEnsuite, nous ouvrons /etc/php.ini...
nano /etc/php.ini... et modifiez le rapport d'erreur (afin que les avis ne soient plus affichés), définissez le fuseau horaire et décommentez cgi.fix_pathinfo=1 :
[...];error_reporting =E_ALL &~E_DEPRECATEDerror_reporting =E_ALL &~E_NOTICE &~E_DEPRECATED &~E_STRICT[...]; 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 PPpp.tldTH_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=1
[...]
date.timezone ='Europe /Berlin'[...]Activez httpd et PHP-FPM pour démarrer au démarrage et démarrer le service PHP-FPM.
systemctl start php-fpm.service
systemctl enable php-fpm.service
systemctl enable httpd.serviceEnfin, nous redémarrons Apache :
systemctl redémarre httpd.serviceNous allons maintenant ajouter la prise en charge de Let's encrypt. ISPConfig utilise maintenant acme.sh comme client Let's Encrypt. Installez acme.sh à l'aide de la commande suivante :
curl https://get.acme.sh | sh -s13 Installation de mod_python
Le module Apache mod_python n'est pas disponible en tant que package RPM, nous allons donc le compiler à partir des sources. La première étape consiste à installer les fichiers de développement python et à télécharger la version actuelle de mod_python en tant que fichier .tar.gz
dnf -y install python3-develcd /usr/local/src/
wget http://dist.modpython.org/dist/mod_python-3.5.0.tgz
tar xfz mod_python-3.5.0.tgz
cd mod_python-3.5.0puis configurez et compilez le module.
./configure --with-python=/usr/bin/python3
makeIl y a une erreur dans le module compilé qui entraînera l'échec de l'installation avec l'erreur "version ="fatal :Pas un référentiel git (ou l'un des répertoires parents) :.git ". Pour résoudre ce problème, exécutez cette commande sed (la commande tient sur une ligne !).
sed -e 's/(git describe --always)/(git describe --always 2>\/dev\/null)/g' -e 's/`git describe --always`/`git describe --always 2>\/dev\/null`/g' -i $( find . -type f -name Makefile\* -o -name version.sh )Installez ensuite le module avec cette commande.
faire installeret activez le module dans Apache :
echo 'LoadModule python_module modules/mod_python.so'> /etc/httpd/conf.modules.d/10-python.conf
systemctl restart httpd.service14 Installer PureFTPd
PureFTPd peut être installé avec la commande suivante :
dnf -y install pure-ftpdCréez ensuite les liens de démarrage du système et lancez PureFTPd :
systemctl enable pure-ftpd.service
systemctl start pure-ftpd.serviceNous 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 :
dnf installer opensslOuvrez /etc/pure-ftpd/pure-ftpd.conf...
nano /etc/pure-ftpd/pure-ftpd.confSi vous souhaitez autoriser les sessions FTP et TLS, définissez TLS sur 1 en supprimant le # devant la ligne TLS. Il est fortement recommandé d'activer TLS.
[...]# 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.pemNom 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] :<-- Entrez votre ville.
Nom de l'organisation (par exemple, société) [Default Company Ltd] :<-- Entrez 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 autorisations du certificat SSL :
chmod 600 /etc/ssl/private/pure-ftpd.pemCréez un fichier DHCParam :
openssl dhparam -out /etc/ssl/private/pure-ftpd-dhparams.pem 2048Enfin, redémarrez PureFTPd :
systemctl redémarre pure-ftpd.serviceC'est ça. Vous pouvez maintenant essayer de vous connecter en utilisant votre client FTP; cependant, vous devez configurer votre client FTP pour utiliser TLS.
15 Installer BIND
Nous pouvons installer BIND comme suit :
dnf -y install bind bind-utils havegedFaites 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 ; } ; allow-recursion {"aucun";} ; 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.localEnsuite, nous créons les liens de démarrage et démarrons BIND :
systemctl enable named.service
systemctl start named.service
systemctl enable haveged.service
systemctl start haveged.service16 Installer AWStats
AWStats peut être installé comme suit :
dnf -y install awstats perl-DateTime-Format-HTTP perl-DateTime-Format-BuilderL'application alternative de statistiques Web 'webalizer' n'est plus disponible pour CentOS 8, vous ne pourrez donc utiliser qu'AWStats.
17 Installer Jailkit
Jailkit est utilisé pour chrooter les utilisateurs SSH et les cronjobs. Il peut être installé comme suit :
ln -s /usr/bin/python2 /usr/bin/python
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.21.tar.gz
tar xvfz jailkit-2.21.tar.gz
cd jailkit-2.21
./configure
make
make install
cd ..
rm -rf jailkit-2.21*18 Installer Fail2Ban
Ceci est facultatif mais recommandé, car le moniteur ISPConfig essaie d'afficher le journal.
dnf -y install iptables-services fail2ban fail2ban-systemd
systemctl stop firewalld.service
systemctl mask firewalld.service
systemctl disable firewalld.serviceEnsuite, nous créons le fichier /etc/fail2ban/jail.local et activons la surveillance des services ssh, e-mail et ftp.
nano /etc/fail2ban/jail.localAjoutez le contenu suivant au fichier jail.local :
[sshd]
enabled =true
action =iptables[name=sshd, port=ssh, protocol=tcp]
[pure-ftpd]
enabled =true
action =iptables[name=FTP, port=ftp, protocol=tcp]
maxretry =3
[dovecot]
enabled =true
action =iptables-multiport[name=dovecot, port="pop3,pop3s,imap,imaps", protocol=tcp]
maxretry =5
[postfix-sasl]
enabled =true
action =iptables-multiport[name=postfix-sasl, port="smtp,smtps,submission", protocol=tcp]
maxretry =3Créez ensuite les liens de démarrage du système pour fail2ban et démarrez-le :
systemctl enable fail2ban.service
systemctl start fail2ban.service19 Installer rkhunter
rkhunter peut être installé comme suit :
dnf -y install rkhunter20 Installer Mailman
Si vous souhaitez gérer des listes de diffusion avec Mailman sur votre serveur, installez mailman maintenant. Mailman est pris en charge par ISPConfig, vous pourrez donc créer ultérieurement de nouvelles listes de diffusion via ISPConfig.
dnf -y install mailmanAvant de pouvoir démarrer Mailman, une première liste de diffusion appelée mailman doit être créée :
touchez /var/lib/mailman/data/aliases
postmap /var/lib/mailman/data/aliases
/usr/lib/mailman/bin/newlist mailman
ln - s /usr/lib/mailman/mail/mailman /usr/bin/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 d'envoi , vous de vaut modifier votre /etc/aliases (ou
équivalent) fichier en 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- congé : "|/usr/lib/mailman/mail/mailman congé 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"
mailman-unsub scribe : "|/usr/lib/mailman/mail/mailman unsubscribe mailman"
Appuyez sur Entrée pour notifier le propriétaire du mailman... <-- ENTER
[[email protected ] tmp]#Ouvrez ensuite /etc/aliases...
nano /etc/aliases... 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 aliasensuite et relancez Postfix :
systemctl redémarre postfix.serviceOuvrez maintenant le fichier de configuration Mailman Apache /etc/httpd/conf.d/mailman.conf...
nano /etc/httpd/conf.d/mailman.conf... et ajoutez la ligne ScriptAlias /cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/. Commentez Alias /pipermail/ /var/lib/mailman/archives/public/ et ajoutez la ligne Alias /pipermail /var/lib/mailman/archives/public/ :
## paramètres de configuration httpd à utiliser avec mailman.#ScriptAlias /mailman/ /usr/lib/mailman/cgi-bin/ScriptAlias /cgi-bin/mailman/ /usr/lib/mailman/cgi-bin/AllowOverride None Options ExecCGI Order allow,deny Allow from all#Alias /pipermail/ /var/lib/mailman/archives/public/Alias /pipermail /var/lib /mailman/archives/public/ Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all AddDefaultCharset Off # Décommentez la ligne suivante, pour rediriger les requêtes vers / mailman à la page # listinfo (recommandé).# RedirectMatch ^/mailman[/]*$ /mailman/listinfoRedémarrez Apache :
systemctl redémarre httpd.serviceCréez les liens de démarrage du système pour Mailman et démarrez-le :
systemctl enable mailman.service
systemctl start mailman.serviceAprès avoir installé ISPConfig 3, vous pouvez accéder à Mailman comme suit :
Vous pouvez utiliser l'alias /cgi-bin/mailman pour tous les vhosts Apache (veuillez noter que suExec et CGI doivent être désactivés pour tous les vhosts à partir desquels vous souhaitez accéder à Mailman !), ce qui signifie que vous pouvez accéder à l'interface d'administration de Mailman pour une liste à http://
/cgi-bin/mailman/admin/ , et la page Web pour les utilisateurs d'une liste de diffusion se trouve à http:// /cgi-bin/mailman/listinfo / . Sous http://
/pipermail/ vous pouvez trouver les archives de la liste de diffusion. 21 Installer le webmail Roundcube
Pour installer le client de messagerie Web RoundCube, téléchargez la dernière version avec wget dans le dossier /tmp :
cd /tmp
wget https://github.com/roundcube/roundcubemail/releases/download/1.4.3/roundcubemail-1.4.3-complete.tar.gzDécompressez l'archive tar.gz et déplacez la source RoundCube vers /usr/share/roundcubemail
tar xfz roundcubemail-1.4.3-complete.tar.gz
mkdir /usr/share/roundcubemail
mv /tmp/roundcubemail-1.4.3/* /usr/share/roundcubemail/
chown -R root:root /usr/share/roundcubemail
chown apache /usr/share/roundcubemail/temp
chown apache /usr/share/roundcubemail/logsCréez un fichier de configuration roundcubemail.conf avec l'éditeur nano :
nano /etc/httpd/conf.d/roundcubemail.confEt ajoutez le contenu suivant à ce fichier :
## Round Cube Webmail est un client IMAP multilingue basé sur un navigateur#Alias /roundcubemail /usr/share/roundcubemail
Alias /webmail /usr/share/roundcubemail# Définir qui peut accéder au Webmail# Vous pouvez agrandir autorisations une fois configuréesOptions aucune AllowOverride Limit Require all distributed# Définir qui peut accéder au programme d'installation# garder ceci sécurisé une fois configuré Options aucune AllowOverride Limit Exiger que tous soient accordés # Ces répertoires ne doivent pas être visualisés par les clients Web.Order Allow,Deny Deny from all Ordre Autoriser, Refuser Refuser de tous Redémarrez Apache :
systemctl redémarre httpd.serviceNous 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 ;
CRÉER UN UTILISATEUR [email protected] IDENTIFIÉ PAR 'roundcubepassword' ;
ACCORDER TOUS LES PRIVILÈGES sur roundcubedb.* à [email protected] ;
FLUSH PRIVILEGES ;
quitterJ'utilise les détails de la base de données RoundCube à titre d'exemple, veuillez remplacer les valeurs selon votre choix pour des raisons de sécurité.
Nous allons maintenant installer RoundCube dans le navigateur à l'adresse http://192.168.0.100/roundcubemail/installer
Créez maintenant le fichier config.inc.php :
nano /usr/share/roundcubemail/config/config.inc.php
/* Configuration locale pour Webmail Roundcube */
// ----------------- -----------------
// BASE DE DONNÉES SQL
// ------------------- ---------------
// Chaîne de connexion à la base de données (DSN) pour les opérations de lecture+écriture
// Format (compatible avec PEAR MDB2) :db_provider:// utilisateur :[email protected]/database
// Fournisseurs de base de données actuellement pris en charge :mysql, pgsql, sqlite, mssql, sqlsrv, oracle
// Pour des exemples, voir http://pear.php.net/manual/ en/package.database.mdb2.intro-dsn.php
// REMARQUE :pour SQLite, utilisez le chemin absolu (Linux) :'sqlite:////full/path/to/sqlite.db?mode=0646 '
// ou (Windows) :'sqlite:///C:/full/path/to/sqlite.db'
$config['db_dsnw'] ='mysql://roundcubeuser :[email protected]/roundcubedb';
// -------------------------------- --
// IMAP
// ----------------------------------
// L'hôte IMAP choisi pour effectuer la connexion.
// Laisser vide pour afficher une zone de texte à la connexion, donner une liste d'hôtes
// à afficher un menu déroulant ou définissez un hôte comme chaîne.
// Pour utiliser la connexion SSL/TLS, entrez le nom d'hôte avec le préfixe ssl:// ou tls://
// Variables de remplacement prises en charge :
// %n - nom d'hôte ($_SERVER['SERVER_NAME'])
// %t - nom d'hôte sans la première partie
// %d - domaine (nom d'hôte http $_SERVER['HTTP_HOST'] sans la première partie)
// %s - nom de domaine après le '@' de l'adresse e-mail fournie à l'écran de connexion
// Par exemple %n =mail.domain.tld, %t =domaine .tld
// AVERTISSEMENT :après le changement de nom d'hôte, la mise à jour de la colonne mail_host dans la table des utilisateurs est
// requise pour faire correspondre les anciens enregistrements de données utilisateur avec le nouvel hôte.
$config['default_host'] ='localhost';
$config['smtp_server'] ='localhost';
$config['smtp_port'] =25;
// fournissez une URL où un l'utilisateur peut obtenir de l'aide pour cette installation de Roundcube
// VEUILLEZ NE PAS LIEN VERS LE SITE WEB ROUNDCUBE.NET ICI !
$config['support_url'] ='';
/ / Cette clé est utilisée à des fins de chiffrement, comme sto anneau de mot de passe imap
// dans la session. Pour des raisons historiques, elle s'appelle DES_key, mais elle est utilisée
// avec n'importe quelle méthode de chiffrement configurée (voir ci-dessous).
$config['des_key'] ='pb0UucO0eqjgvhrqYlFTBVjE';
/ / ----------------------------------
// PLUGINS
// -- --------------------------------
// Liste des plugins actifs (dans le répertoire plugins/)
$config['plugins'] =array();
// Définit le moteur de vérification orthographique. Valeurs possibles :
// - 'googie' - la valeur par défaut (également utilisée pour se connecter à Nox Spell Server, voir le paramètre 'spellcheck_uri')
// - 'pspell' - nécessite le module PHP Pspell et aspell installed
// - 'enchant' - requires the PHP Enchant module
// - 'atd' - install your own After the Deadline server or check with the people at http://www.afterthedeadline.com before using their API
// Since Google shut down their public spell checking service, the default settings
// connect to http://spell.roundcube.net which is a hosted service provided by Roundcube.
// You can connect to any other googie-compliant service by setting 'spellcheck_uri' accordingly.
$config['spellcheck_engine'] ='pspell';
$config['enable_installer'] =true;Then press "continue" in the web installer. On the following page, press on the button "Initialize database".
Finally, disable the Roundecubemail installer. Change the RoundCube config.inc.php configuration file
nano /usr/share/roundcubemail/config/config.inc.phpet changez la ligne :
$config['enable_installer'] =true;à :
$config['enable_installer'] =false;Roundcube is available now under the aliases /webmail and /roundcubemail on your server:
http://192.168.0.100/webmail
The RoundCube login is the email address and password of an email account that you create later in ISPConfig.
22 Install ISPConfig 3.2
The ISPConfig installer will configure all services like Postfix, Dovecot, etc. for you.
You now also have the possibility to let the installer create an SSL vhost for the ISPConfig control panel so that ISPConfig can be accessed using https:// instead of http://. To achieve this, just press ENTER when you see this question:Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]:.
To install ISPConfig 3.2 nightly build, do this:
cd /tmp
wget -O ispconfig.tar.gz https://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ispconfig.tar.gz
cd ispconfig3*/install/The next step is to run:
php -q install.phpCela lancera le programme d'installation d'ISPConfig 3. Le programme d'installation configurera tous les services comme Postfix, Dovecot, etc. pour vous.
[[email protected] install]# php install.php
------------------------------------------------------- -------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
-------------------------------------------------- ------------------------------------------
>> Configuration initialeOperating System:CentOS 8.2Voici 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] :<-- Appuyez sur EntréeMode d'installation (standard, expert) [standard] : <-- Appuyez sur EntréeFull qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.example.com]: <-- Hit EnterNom d'hôte du serveur MySQL [localhost] : <-- Appuyez sur EntréePort du serveur MySQL [3306] : <-- Appuyez sur EntréeNom d'utilisateur root MySQL [root] : <-- Appuyez sur EntréeMySQL root password []: <-- Ente the MySQL root password hereBase de données MySQL pour créer [dbispconfig] : <-- Appuyez sur EntréeJeu de caractères MySQL [utf8] : <-- Appuyez sur EntréeConfiguring Postgrey
Configuring Postfix
Generating a 4096 bit RSA private key
................................++
.....................................................................................................................................................................................................................................................................................................................................................++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:<-- Enter 2 Letter country code, e.g. US
State or Province Name (full name) []:<-- Enter anme of State or Province
Locality Name (eg, city) [Default City]:<-- Name of city
Organization Name (eg, company) [Default Company Ltd]:<-- Company name
Organizational Unit Name (eg, section) []: <-- Hit Enter
Common Name (eg, your name or your server's hostname) []:<-- Enter server hostname here, in my case:server1.example.com
Email Address []:<-- Enter Email address
Configuring mailman
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring Jailkit
Configuring Pureftpd
Configuring BIND
Configuring Apache
Configuring vlogger
[INFO] service OpenVZ not detected
Configuring Bastille Firewall
[INFO] service Metronome XMPP Server not detected
Configuring Fail2ban
Configuring Apps vhost
Installing ISPConfig
ISPConfig Port [8080]: <-- Hit EnterAdmin password [fad579a6]: <-- Enter new password for ISPConfig admin userRe-enter admin password []: <-- Repeat the passwordSouhaitez-vous une connexion sécurisée (SSL) à l'interface Web ISPConfig (y,n) [y] : <-- Appuyez sur EntréeGenerating RSA private key, 4096 bit long modulus
.................................................................................++
.....++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]: <-- Enter 2 Letter country code, e.g. US
State or Province Name (full name) []:<-- Enter anme of State or Province
Locality Name (eg, city) [Default City]:<-- Name of city
Organization Name (eg, company) [Default Company Ltd]:<-- Company name
Organizational Unit Name (eg, section) []: <-- Hit Enter
Common Name (eg, your name or your server's hostname) []:<-- Enter server hostname here, in my case:server1.example.com
Email Address []:<-- Enter Email addressPlease enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- Hit Enter
An optional company name []: <-- Hit Enter
writing RSA key
Configuring DBServer
Installing ISPConfig crontab
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Detect IP addresses
Restarting services ...
Installation completed.The installer automatically configures all underlying services, so there is no manual configuration needed.
23 First ISPConfig Login
Afterwards you can access ISPConfig 3 under http(s)://server1.example.com:8080/ or http(s)://192.168.0.100:8080/ (http or https depends on what you chose during installation).
Log in with the username admin and the password admin (you should change the default password after your first login):
23.1 The ISPConfig 3 Manual
In order to learn how to use ISPConfig 3, I strongly recommend downloading the ISPConfig 3 Manual.
On more than 300 pages, it covers the concept behind ISPConfig (admin, resellers, clients), explains how to install and update ISPConfig 3, includes a reference for all forms and form fields in ISPConfig together with examples of valid inputs, and provides tutorials for the most common tasks in ISPConfig 3. It also lines out how to make your server more secure and comes with a troubleshooting section at the end.
24 Download as a virtual machine
Cette configuration est disponible en téléchargement de machine virtuelle au format ova/ovf (compatible avec VMWare et Virtualbox) pour les abonnés howtoforge.
Informations de connexion pour la VM
- The root password is:howtoforge
- The password of the ISPConfig "admin" user is: howtoforge
- There is another shell user with the name "howtoforge" and password:howtoforge
Veuillez modifier les deux mots de passe lors de la première connexion.
- The IP address of the VM is 192.168.0.100
25 Links
- CentOS :http://www.centos.org/
- ISPConfig:http://www.ispconfig.org/