Votre VPS est en ligne et sécurisé en HTTPS — il est maintenant temps de le rendre pleinement opérationnel pour un projet PHP. Dans cet article, on installe MariaDB pour la base de données, PhpMyAdmin pour l'administrer depuis le navigateur, et Composer pour gérer les dépendances PHP. À la fin, vous aurez un environnement de développement complet, prêt pour la production.
Cet article est le troisième volet de la série Installer et configurer un VPS pour des projets web. Il suppose que vous avez suivi les articles 1 — SSH & Apache et 2 — SSL Let's Encrypt, et que votre VPS tourne sous Ubuntu avec Apache et PHP installés.
Apache répond, le HTTPS est en place — mais un projet PHP sans base de données reste limité. Dans cet article, on complète l'environnement avec trois outils essentiels :
- MariaDB : le serveur de base de données (alternative open source à MySQL, plus performante et activement maintenue)
- PhpMyAdmin : l'interface web pour administrer vos bases de données sans ligne de commande
- Composer : le gestionnaire de dépendances PHP, indispensable pour tout projet moderne
Pour la suite, on considère que votre utilisateur est
johndoeet que votre domaine estacme.test.
1. Installer et sécuriser MariaDB
1.1. Installation
sudo apt install mariadb-server -y
Vérifiez que le service tourne correctement :
sudo systemctl status mariadb
1.2. Sécurisation de l'installation
MariaDB est livré avec des paramètres par défaut peu sécurisés (utilisateur root sans mot de passe, bases de test accessibles…). Le script mariadb-secure-installation règle tout ça en quelques étapes :
cd /usr/bin
sudo mariadb-secure-installation
Le script vous pose une série de questions. Voici les réponses recommandées :
| Question | Réponse recommandée |
|---|---|
| Switch to unix_socket authentication | N |
| Change the root password | Y — choisissez un mot de passe fort |
| Remove anonymous users | Y |
| Disallow root login remotely | Y |
| Remove test database | Y |
| Reload privilege tables | Y |
1.3. Créer un utilisateur dédié
Il est déconseillé d'utiliser le compte root pour vos projets. Créez un utilisateur avec les droits limités à vos bases :
sudo mariadb -u root -p
Une fois connecté au prompt MariaDB, exécutez :
CREATE USER 'johndoe'@'localhost' IDENTIFIED BY 'votre_mot_de_passe';
CREATE DATABASE mon_projet;
GRANT ALL PRIVILEGES ON mon_projet.* TO 'johndoe'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Bonne pratique : créez un utilisateur et une base de données distincts par projet. Cela limite les dégâts en cas de compromission d'un compte.
2. Installer et configurer PhpMyAdmin
PhpMyAdmin est une interface web qui permet d'administrer vos bases de données MariaDB depuis votre navigateur : créer des tables, importer/exporter des données, exécuter des requêtes SQL, etc.
2.1. Installation
sudo apt install phpmyadmin -y
Pendant l'installation, un prompt interactif vous pose deux questions :
- Quel serveur web ? → Sélectionnez
apache2avec la barre espace, puis validez avec Entrée - Configurer dbconfig-common ? → Sélectionnez
Ouiet définissez un mot de passe pour l'utilisateur PhpMyAdmin
2.2. Configurer Apache pour PhpMyAdmin
Copiez la configuration Apache fournie par PhpMyAdmin dans le dossier des configurations disponibles :
sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
Éditez ensuite ce fichier :
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Repérez la ligne suivante :
Alias /phpmyadmin /usr/share/phpmyadmin
Remplacez /phpmyadmin par un alias personnalisé et difficile à deviner :
Alias /mon-acces-secret /usr/share/phpmyadmin
Pourquoi changer l'alias ? L'URL
/phpmyadminest la première cible des bots qui scannent internet à la recherche d'interfaces d'administration exposées. Un alias personnalisé réduit considérablement ce risque.
2.3. Activer la configuration et recharger Apache
sudo a2enconf phpmyadmin
sudo systemctl reload apache2
Vous pouvez maintenant accéder à PhpMyAdmin depuis votre navigateur :
https://acme.test/mon-acces-secret
Connectez-vous avec l'utilisateur johndoe et le mot de passe défini à l'étape 1.3.
3. Installer Composer
Composer est le gestionnaire de dépendances standard de l'écosystème PHP. Il permet d'installer et de gérer les bibliothèques tierces de vos projets (frameworks, SDKs, utilitaires…).
3.1. Télécharger et vérifier l'installeur
cd ~
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Vérifiez l'intégrité du fichier téléchargé en comparant son hash avec celui publié sur la page officielle de Composer :
php -r "if (hash_file('sha384', 'composer-setup.php') === 'HASH_OFFICIEL') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); exit(1); }"
Important : le hash change à chaque nouvelle version de Composer. Copiez toujours le hash depuis getcomposer.org/download au moment de l'installation — n'utilisez jamais un hash copié depuis un tuto.
3.2. Installer Composer
php composer-setup.php
php -r "unlink('composer-setup.php');"
Composer est installé sous forme de fichier composer.phar dans votre répertoire courant.
3.3. Créer un alias global
Pour utiliser Composer avec la commande composer depuis n'importe quel répertoire, ajoutez un alias dans votre fichier ~/.bashrc :
echo "alias composer='php ~/composer.phar'" >> ~/.bashrc
source ~/.bashrc
Vérifiez que tout fonctionne :
composer --version
Vous devriez voir quelque chose comme :
Composer version 2.x.x
4. Récapitulatif de l'environnement
Voici l'arborescence type de votre VPS à ce stade :
/home/johndoe/
├── acmephp.phar # Client Let's Encrypt (article 2)
├── composer.phar # Gestionnaire de dépendances PHP
├── projects/
│ ├── default/ # Projet par défaut (article 1)
│ │ └── index.html
│ └── mon-projet/ # Vos futurs projets PHP
│ ├── composer.json
│ └── vendor/
└── logs/
├── default-access.log
└── default-errors.log
Récapitulatif
Votre environnement PHP est maintenant complet et prêt pour la production :
- ✅ MariaDB installé et sécurisé
- ✅ Utilisateur et base de données dédiés créés
- ✅ PhpMyAdmin accessible via un alias sécurisé
- ✅ Composer installé et disponible globalement
Checklist finale — VPS prêt pour la production
En combinant les trois articles de cette série, voici ce que vous avez mis en place :
| Étape | Statut |
|---|---|
| VPS Ubuntu configuré | ✅ |
| Accès SSH avec paire de clés | ✅ |
| Apache + PHP installés | ✅ |
| Nom de domaine configuré (DNS + Virtual Host) | ✅ |
| Certificat SSL Let's Encrypt | ✅ |
| Renouvellement automatique du certificat | ✅ |
| MariaDB sécurisé | ✅ |
| PhpMyAdmin avec alias personnalisé | ✅ |
| Composer installé | ✅ |
Votre VPS est opérationnel. Il ne vous reste plus qu'à déposer votre projet PHP dans ~/projects/ et à configurer un nouveau Virtual Host Apache pour le servir.
Ressources :
Article précédent Article suivant
Français
English
Ajouter un commentaire