2. Création d'un Serveur Web LAMP sur Ubuntu 22.04
Aujourd’hui nous verrons ensemble comment installer LAMP (Linux, Apache, MySQL/MariaDB, PHP) sur Ubuntu 22.04. Dans mon article, j’utiliserai la version Server d’Ubuntu, mais ça fonctionne également sans problème sur la version Desktop. Il est possible d’installer LAMP avec Docker, mais pour bien comprendre le fonctionnement de LAMP nous effectuerons ici une installation de A à Z, sans docker.
LAMP vous permettra ensuite de faire tourner de nombreux services web (Wordpress, Nextcloud…). Nous utiliserons ici Apache pour le serveur web, MariaDB pour le serveur de base de donnée et PHP pour la partie dev/web.
Les prérequis
Comme souvent, il est nécessaire d’avoir quelques prérequis pour suivre ce guide. Ici, il vous faudra une machine capable de faire tourner Ubuntu 22.04. Cela peut être un ordinateur, une machine virtuelle, un VPS ou encore un serveur dédié. À vous de voir en fonction de vos besoins.
Il est important d'activer le SSH lors de l'installation de Ubuntu serveur !
Dans ce tutoriel, on supposera donc que vous avez déjà un serveur avec Ubuntu 22.04 installé.
Mise à jour d’Ubuntu 22.04
Important : A partir d’ici, toutes les commandes seront exécutées en tant que root.
Activer le compte système (root) :
sudo passwd root
Configuration de l'heure :
sudo timedatectl set-timezone Europe/Paris
sudo hwclock -w
timedatectl status
Vous pouvez obtenir la liste des fuseaux horaire acceptés en utilisant la commande :
timedatectl list-timezones
Avant de commencer l’installation de LAMP, pensez à mettre à jour votre système. Exécutez les commandes suivantes sur votre machine Ubuntu 22.04
sudo apt -y update && sudo apt -y upgrade
1. Installation du serveur Apache
On passe maintenant à l’installation du serveur Web Apache. Lancer la commande suivante pour procéder à l’installation d’Apache :
sudo apt install -y apache2 apache2-utils
Une fois installé, Apache devrait être démarré automatiquement. Vérifiez son état avec la commande :
systemctl status apache2
Voici ce que vous devriez avoir :
Si ce n’est pas le cas, utilisez la commande suivante :
sudo systemctl start apache2
Utilisez la commande suivante pour démarrer Apache au démarrage système :
sudo systemctl enable apache2
Si besoin, vous pouvez vérifier la version d’Apache avec la commande suivante :
apache2 -v
La première étape est terminée puisque nous avons maintenant terminé l’installation d’Apache. Vous pouvez vérifier son fonctionnement en lançant un navigateur Web sur l’adresse ip du serveur. Si vous êtes sur Ubuntu Desktop, vous pouvez vérifier en utilisant localhost ou 127.0.0.1 comme adresse web.
Si la connexion est refusée ou bloquée, jeter un coup d’oeil au niveau du pare-feu de votre serveur (iptable ou UFW par exemple).
Maintenant que nous savons que notre serveur Apache est correctement installé, nous allons passer à la phase d’installation.
1.1 Configuration Apache
Maintenant, nous devons définir www-data
(utilisateur Apache) en tant que propriétaire de la racine du document (autrement appelé racine Web). Par défaut, il appartient à l’utilisateur root.
sudo chown www-data:www-data /var/www/html/ -R
Par défaut, Apache utilise le nom d’hôte du système comme son global ServerName
. Si le nom d’hôte du système ne peut pas être résolu via DNS, alors vous risquez d’avoir une erreur lors de l’utilisation de la commande suivante :
sudo apache2ctl -t
Pour résoudre ce problème, nous pouvons définir un global ServerName
dans Apache. Utilisez votre éditeur de texte préféré pour créer un nouveau fichier de configuration.
sudo nano /etc/apache2/conf-available/servername.conf
Ajoutez-y la ligne suivante :
ServerName localhost
CTRL O pour enregistrer, ENTRER pour valider, et CTRL X pour sortir.
Activer maintenant le fichier de configuration avec la commande suivante :
sudo a2enconf servername.conf
Relancer apache :
sudo systemctl reload apache2
Vous ne devriez plus avoir d’erreur lors de l’utilisation de la commande sudo apache2ctl -t.
2. Installation du serveur de base de données MariaDB
MariaDB est une alternative à MySQL. Il est développé par d’anciens membres de l’équipe MySQL qui craignent qu’Oracle ne transforme MySQL en produit fermé.
Entrez la commande suivante pour installer MariaDB sur Ubuntu 22.04 :
sudo apt install mariadb-server mariadb-client
Une fois installé, le serveur MariaDB devrait être démarré automatiquement. Utilisez systemctl pour vérifier son état.
systemctl status mariadb
Comme pour Apache, vous devriez avoir un retour de ce style :
Si MariaDB n’est pas up & running, vous pouvez le lancer via la commande suivante :
sudo systemctl start mariadb
Ici, comme pour Apache, on lance MariaDB au démarrage du système avec la commande suivante :
sudo systemctl enable mariadb
2.1 Installer la dernière version de MariaDB sur Ubuntu 22.04
Étape 1 : Mise à jour du système
Avant toute chose, il est recommandé de mettre à jour votre système pour s’assurer que tous les paquets existants sont à jour.
Ouvrez votre terminal et exécutez :
sudo apt update && sudo apt upgrade -y
Étape 2 : Ajout du dépôt MariaDB
MariaDB n’est pas inclus dans les dépôts par défaut d’Ubuntu 22.04 à sa dernière version. Pour installer la version la plus récente, vous devez ajouter le dépôt officiel de MariaDB à votre système.
-
Importez la clé GPG du dépôt MariaDB pour vérifier l’authenticité des paquets :
sudo apt install software-properties-common
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
-
Ajoutez le dépôt MariaDB à votre système :
sudo add-apt-repository 'deb [arch=amd64] https://mirror.mariadb.org/repo/10.6/ubuntu focal main'
Remplacez 10.6
par la version spécifique de MariaDB que vous souhaitez installer. Pour la version la plus récente, consultez le site officiel de MariaDB pour obtenir l’URL du dépôt correct.
Étape 3 : Installation de MariaDB
Après avoir ajouté le dépôt, installez MariaDB en exécutant :
sudo apt update
sudo apt install mariadb-server -y
Cette commande installera MariaDB ainsi que tous les paquets nécessaires.
Étape 4 : Sécurisation de MariaDB
Après l’installation, il est important de sécuriser votre installation MariaDB. MariaDB propose un script de sécurisation qui vous guide à travers quelques étapes de base pour sécuriser votre base de données.
Exécutez le script avec la commande :
sudo mysql_secure_installation
Vous serez invité à configurer les options de sécurité, telles que définir un mot de passe root, supprimer les utilisateurs anonymes, désactiver la connexion root à distance, et supprimer la base de données test.
Étape 5 : Vérification de l’installation
Pour vérifier que MariaDB est installé et fonctionne correctement, connectez-vous à la console MariaDB en utilisant :
sudo mariadb
Vous devriez voir le prompt de MariaDB, ce qui indique que le service fonctionne correctement.
Avec votre serveur MariaDB maintenant opérationnel, envisagez d’utiliser les services Cloud VPS de Shape.host pour héberger vos bases de données. Les solutions Linux SSD VPS de Shape.host offrent une performance et une fiabilité exceptionnelles, idéales pour les applications nécessitant une base de données robuste comme MariaDB. Que vous développiez des applications web, des systèmes de gestion de contenu, ou des applications d’entreprise, les Cloud VPS de Shape.host fournissent l’environnement parfait pour vos besoins en bases de données.
2.2 Configuration de MariaDB
Maintenant que MariaDB est installé, on lance le script de configuration:
sudo mysql_secure_installation
Votre installation est nouvelle, donc pour le moment le mot de passe SQL est vide. À la première étape, appuyer sur la touche entrée pour valider que le mot de passe actuel est vide.
Sélectionnez ensuite « Y » pour définir un nouveau mot de passe SQL, puis choisissez le bien. (Si besoin, vous pouvez utiliser un générateur de mots de passe).
Pour les questions suivantes, vous pouvez appuyer sur Entrée à chaque fois, ce qui vous permettra de supprimer l’utilisateur anonyme, désactiver la connexion root à distance et supprimer la base de données de test.
Par défaut, le package MariaDB sur Ubuntu utilise unix_socket
pour authentifier la connexion utilisateur, ce qui signifie que vous pouvez utiliser le nom d’utilisateur et le mot de passe du système d’exploitation pour vous connecter à la console MariaDB. Vous pouvez donc exécuter la commande suivante pour vous connecter sans fournir le mot de passe root MariaDB :
sudo mariadb -u root
Pour sortir, utilisez la commande :
quit
Vous pouvez vérifier la version de MariaDB installé avec la commande suivante :
mariadb -v
Ce qui devrait donner un résultat de ce type :
mariadb Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
3. Installation de PHP
Ajout d’un nouveau dépôt pour php8.3
La version 8.3 de php n’est pour le moment pas disponible dans le dépôt officiel de Debian 12 et Ubuntu 22.04.On ajoute donc un dépôt qui contient la version 8.3 :
sudo apt install -y software-properties-common
sudo add-apt-repository -y ppa:ondrej/php
sudo apt update -y