Installation de Debian Stretch, Apache, MariaDB et PHP

Posted by

Pour ce tutoriel nous partirons d’une installation de Debian 9 minimale. Nous installerons un serveur web apache couplé avec PHP ainsi qu’un serveur de base de données MariaDB. Afin d’éviter les attaques les plus basiques, nous ajouterons fail2ban.

Avant de commencer on met à jour le système, tout le tutoriel sera à effectuer en root.

apt update
apt upgrade -y

Apache & PHP

On installe les paquets et on active ssl

apt install apache2 php -y
a2enmod ssl
a2ensite default-ssl
service apache2 restart

Pour ajouter un site, on crée un fichier dans /etc/apache2/sites-available. Ce fichier est minimal est n’est absolument pas utilisable en production, il faudra ajouter la gestion des logs et différents éléments liés à la sécurité.

monsite.com.conf

‹VirtualHost *:80›
DocumentRoot /var/www/monsite.com
ServerName www.monsite.com
‹/VirtualHost›

Pour l’activer on fera un lien symbolique vers /etc/apache2/sites-enabled.

ln -s /etc/apache2/sites-available/monsite.com.conf /etc/apache2/sites-enabled/monsite.com.conf

On recharge Apache

service apache2 reload

MariaDB

Nous allons installer MariaDB, la librairie pour effectuer la liaison avec PHP et PHPMyAdmin pour effectuer les taches d’administration. Lors de la configuration automatique de PHPMyAdmin, choisir apache2 (touche espace pour cocher/décocher) et le mode de configuration automatique. Valider la configuration avec dbconfig-common. Laisser vide le choix du mot de passe.

apt install mariadb-server php-mysql phpmyadmin

Votre serveur est maintenant opérationnel, accessible par son IP. PHPMyadmin peut être utilisé à l’adresse https://ip/phpmyadmin.

Fail2ban

apt install fail2ban

Ouvrir le fichier /etc/fail2ban/jail.conf et modifier les différentes sections liées à apache

[apache-auth]
enabled = true

[apache-badbots]
enabled = true

[apache-noscript]
enabled = true

[apache-overflows]
enabled = true

[apache-nohome]
enabled = true

[apache-botsearch]
enabled = true

[apache-fakegooglebot]
enabled = true

[apache-modsecurity]
enabled = true

[apache-shellshock]
enabled = true

On redémarre fail2ban.

service fail2ban restart

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *