Installation d’un serveur LAMP
L:Linux / A:Apache / M:MariaDB / P:PHP
Installation et configuration du serveur Apache
Installation d’Apache
sudo apt-get update & upgrade sudo apt-get install apache2 // Installer le démarrage automatique d'apache : sudo systemctl enable apache2 sudo systemctl status apache2 // Vérifier l'état du service sudo apache2ctl -v // pour connaitre la version d'apache systemctl restart apache2
On obtient le retour suivant :

Configuration d’Apache
On active 4 modules sur le serveur Apache :
// Le mode rewrite permet la réécriture d url, c est-à-dire de voir sur les liens // en français constitutifs de la page sudo a2enmod rewrite // Pour avoir un site en https qui va pouvoir gérer les certificats sudo a2enmod ssl // Pour la compression et la mise en cache du site internet (accélération du chargement des pages) sudo a2enmod deflate // Va permettre d interagir avec les entêtes http sudo a2enmod headers sudo systemctl restart apache2
Pour masquer l’affichage de la version d’Apache sur les pages d’erreurs :
Editer le fichier « apache2.conf » et ajouter la ligne suivante à la fin du fichier :
sudo nano /etc/apache2/apache2.conf // et à la fin du fichier : ServerTokens Prod

Exécuter un navigateur et entrer l’adresse IP du serveur dans la barre d’adresse pour vérifier que le serveur Apache est installé et opérationnel.

Installation de PHP
sudo apt-get install -y php
Installation de quelques paquets supplémentaires pour compléter l’installation de PHP sur notre serveur. Par exemple, pour permettre les interactions entre PHP et notre instance MariaDB.
sudo apt-get install -y php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath php-imagick php-intl php-json php -v

Pour vérifier que l’installation de la version de php est valide, on créé un fichier phpinfo.php :
sudo nano /var/www/html/phpinfo.php // dont le contenu est le suivant…vérification ci-dessous <?php phpinfo(); ?>

Cette page est utile uniquement pour vérification, donc on la supprime.
sudo rm /var/www/html/phpinfo.php
Installation de mariadb
sudo apt-get install -y mariadb-server sudo mariadb -v

Suite à l’installation, exécuter le script « mariadb-secure-installation » afin de sécuriser un minimum l’installation de MariaDB.
sudo mariadb-secure-installation
En résumé, on va pouvoir définir un mot de passe pour le compte « root » de MariaDB, empêcher les connexions distantes sur notre instance à l’aide du compte « root », empêcher les connexions anonymes et supprimer la base de test.


- On a pas encore configuré MariaDB donc on valide [Entrer]
- Et on ne bascule pas sur l’authentification unix_socket à [n]
- Enfin on indique que l’on veut changer le mot de passe root à [Y]
Entrer le mot de passe (puis confirmer) - Remove anonymous users ? [Y]
- Disallow root login remotely ? [Y]
- Remove test database and access to it ? [Y]
- Reload priviledge tables now ? [Y] (recharge de l’ensemble des privilèges)
On a terminé l’installation minimaliste de notre instance MariaDB. Pour vérifier que l’on a bien accès à notre instance de MariaDB on saisi :
sudo mysql -u root -p
… puis on entre le mot de passe root.

Et on vérifie que l’on a bien accès à la base de données :
show databases;
On voit affiché la liste les bases de données par défaut de MariaDB
On entre…
exit
… pour quitter la console et on termine par …
systemctl restart mariadb
