Dans une machine virtuelle Debian 13 sous VirtualBox
Image ISO utilisée :
debian-13.4.0-amd64-DVD-1.iso
VirtualBox
Pour une installation sous VirtualBox, la carte réseau est configurée en accès par pont pour être sur mon réseau local.
On installe :
- serveur web
- serveur SSH
- utilistaires usuels du système
Configuration de Debian 13
- Modification de la variable d’environnement PATH pour pouvoir utiliser les commandes du Shell
- Modification du fichier sources.list sous Debian 11
- Exemple de paramétrages en IP fixe sous debian 11
- Configurer les serveurs DNS sous Debian 13
- Changer le port pour SSH
1 – Installation des paquets requis pour WordPress sous Debian 13
Le serveur SSH est installé, on peut utiliser PuTTY sous Windows ou un accès SSH depuis le terminal Linux.
Voir : Utilisation de PuTTY depuis le réseau local ou à distance
Apache
Apache est un logiciel de serveur web gratuit et open-source.
Apache 2 est déjà installé avec la mise en place de ma machine virtuelle sous Debian 13.
Vous pouvez le vérifier avec la commande :
dpkg -l apache2
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=att>
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom Version Architecture Description
+++-==============-================-============-==============================>
ii apache2 2.4.66-1~deb13u2 amd64 Apache HTTP Server
Quittez avec [Q]
Vérifier qu’il n’y a pas de messages d’erreur pour le serveur WEB Apache (sous Debian 12) :
journalctl -u apache2.service
Vous pouvez déjà tester l’accès à votre serveur WEB Apache depuis le réseau local :
http://IP_de_mon_serveur/
MariaDB
MariaDB est un système de gestion de base de données. Il s’agit d’un fork communautaire de MySQL
apt install mariadb-server
Confirmez l’installation avec [O].
Vous pouvez vérifier l’installation du paquet avec la commande suivante :
dpkg -l mariadb-server
Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder
| État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=att>
|/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais)
||/ Nom Version Architecture Description
+++-==============-==================-============-============================>
ii mariadb-server 1:11.8.6-0+deb13u1 amd64 MariaDB database server bina>
lines 1-6/6 (END)
[Q] pour quitter
Sécuriser l’installation de MariaDB sous Debian 13
L’installation de MariaDB n’est pas sécurisée pour le moment. Le script mysql_secure_installation va nous permettre de remédier à cela.
On démarre l’exécution du script en administrateur root (su) :
cd /usr/bin
mariadb-secure-installation
1 – Le script demande le mot de passe root de MariaDB. Il n’y en a pas pour le moment, on fait juste
[Return].
Enter current password for root (enter for none):
2 – Commencez par réponse Y à la question Switch to unix_socket authentication. Cela authorisera
uniquement les connexions sur la base de données MariaDB depuis votre serveur lui-même.
Switch to unix_socket authentification [Y/n] Y
3 – On définit le mot de passe pour le compte root de MariaDB. Choisissez le robuste et notez-le !
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!
4 – Dans notre cas, nous allons supprimer le compte anonyme.
Remove anonymous users? [Y/n] Y
5 – On peut restreindre l’accès via le compte root aux clients qui se connectent depuis le serveur
uniquement. Cela empêche la prise de contrôle à distance de votre base de données.
Disallow root login remotely? [Y/n] Y
6 – je choisis de supprimer le schéma test qui est créé par défaut.
Remove test database and access to it? [Y/n] Y
7 – Fin de l’opération, on recharge la table des privilèges pour qu’ils soient pris en compte.
L’installation
est sécurisée.
Reload privilege tables now? [Y/n] Y
… Success!
Cleaning up…
All done! If you’ve completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Vous pouvez retrouver des informations ici :
PHP
PHP est un langage de programmation libre, principalement utilisé pour produire des pages Web dynamiques via un serveur HTTP. WordPress est écrit en PHP.
apt install php8.4 php8.4-mysql php8.4-gd php8.4-curl php8.4-xml php8.4-mbstring php8.4-zip php8.4-opcache
Confirmez l’installation avec [O].
Vous pouvez vérifier que les paquets sont bien installés avec la commande suivante :
dpkg -l php8.4 php8.4-mysql php8.4-gd php8.4-curl php8.4-xml php8.4-mbstring php8.4-zip php8.4-opcache
[Q] pour quitter
Explications :
php8.4-mysql: Pour la connexion à MySQL/MariaDB.php8.4-gd: Pour le traitement des images (miniatures, etc.).php8.4-curl: Pour les requêtes HTTP (mises à jour, API REST, etc.).php8.4-xml: Pour les flux RSS et les fonctionnalités XML.php8.4-mbstring: Pour la gestion des encodages (UTF-8).php8.4-zip: Pour la gestion des archives (mises à jour, plugins).php8.4-opcache: Pour améliorer les performances (cache PHP).
Dans mon cas, c’est la version 8.4 de PHP qui est installée.
On redémarre le serveur WEB Apache :
systemctl restart apache2
Pour consulter le log pour Apache sous Debian 13 :
journalctl -u apache2.service
[Q] pour quitter
2 – Création de la base de données pour WordPress
Création de la base de données MariaDB pour WordPress. Les paramètres, nom de la base de données (wpdatabase), identifiant (wpuser), mot de passe (dbpassword), seront utilisés par la suite pour finaliser l’installation de WordPress depuis un navigateur WEB. Vous pouvez personnaliser ces paramètres.
mysql -u root -p
Saisir le mot de passe du compte root de MariaDB défini précédemment.
CREATE DATABASE wpdatabase;
CREATE USER wpuser@localhost;
SET PASSWORD FOR wpuser@localhost= PASSWORD("dbpassword");
GRANT ALL PRIVILEGES ON wpdatabase.* TO wpuser@localhost IDENTIFIED BY 'dbpassword';
FLUSH PRIVILEGES;
exit
3 – Téléchargement de WordPress
Sur mon PC depuis le site :

Cliquez sur [Télécharger WordPress…]
J’ai téléchargé le fichier wordpress-6.9.4-fr_FR.zip
Installation des paquets zip et unzip dans la machine virtuelle sous Debian 13.
en administrateur root :
apt install zip unzip
Vous pouvez vérifier l’installation du paquet avec la commande suivante :
dpkg -l zip unzip
[Q] pour quitter
4 – Transfert de l’archive WordPress sur votre machine virtuelle avec FileZilla
FileZilla doit être installé sur votre PC.
Je me connecte en utilisant FileZilla depuis mon PC avec les paramètres suivants :
- Hôte : sftp://Adresse_IP L’adresse IP de votre machine virtuelle sur votre réseau local.
- Nom d’utilisateur : dominique À remplacer par le nom de votre utilisateur.
- Mot de passe : Le mot de passe de mon utilisateur.
- Port 22 (Par défaut ou le port que vous avez configuré).
Je clique ensuite sur [Connexion rapide].
Je transfère ensuite le fichier .zip depuis mon PC vers le dossier de mon utilisateur (dominique dans mon cas) dans ma machine virtuelle.
Plus d’informations sur FileZilla et le transfert de fichiers :
Utilisation de FileZilla depuis le réseau local ou à distance
5 – Installation de WordPress
Décompression de l’archive avec unzip depuis le dossier de mon utilisateur (cd /home/dominique dans mon cas). Pas besoin d’être connecté en administrateur root sous Linux.
unzip wordpress-6.9.4-fr_FR.zip
Si on avait téléchargé l’archive au format tar.gz la commande serait :
tar -xzvf wordpress-6.9.4-fr_FR.tar.gz
J’ai maintenant un dossier wordpress.
En administrateur (commande su si nécessaire). Le paquet rsync était déjà installé.
rsync -avP /home/dominique/wordpress/ /var/www/html
Le logiciel rsync permet ici de synchroniser les deux dossiers, on obtient dans html une copie du contenu de wordpress.
-a : archive
-v : verbeux
-P : Est l’abréviation de –partial –progress. –partial indique à rsync de conserver les fichiers partiellement transférés (et à la reprise, rsync utilisera toujours les fichiers partiellement transférés après avoir effectué la somme de contrôle en toute sécurité).
Je me positionne dans le dossier html.
cd /var/www/html
On donne les droits à l’utilisateur et au groupe d’Apache (www-data) sur les répertoires concernés.
chown -R www-data:www-data /var/www/html/*
find . -type d -exec chmod 0755 {} \;
find . -type f -exec chmod 0644 {} \;
Pour vérifier le résultat.
ls -ls
Je renomme le fichier index.html présent par défaut pour pouvoir accéder à l’accueil WordPress :
mv index.html index.html.sav
On utilise le site par défaut (HTTP) qui correspond au fichier : /etc/apache2/sites-available/000-default.conf avec le dossier /var/www/html/.
6 – Finalisation de l’installation de WordPress
Depuis votre PC avec votre navigateur WEB : http://Adresse_IP/ (L’adresse IP de votre machine virtuelle sur votre réseau local).

Cliquez sur [C’est parti !].

On retrouve les paramètres définis lors de la création de la base de données. On clique sur [Envoyer].

Attention !
Au cours de la procédure de finalisation de l’installation, on doit éventuellement créer le fichier wp-config.php (copier/coller du contenu). On peut l’éditer avec la commande suivante en administrateur root :
nano /var/www/html/wp-config.php
Je me connecte en SSH avec PuTTY sous Windows ou avec un terminal Linux depuis mon PC pour réaliser cette opération.
Après modifications :
CRTL + X pour quitter l’éditeur nano.
O pour confirmer l’enregistrement des modifications.
Entrée pour confirmer le nom du fichier.
Après avoir créé le fichier wp-config.php je clique sur [Lancer l’installation].

On saisit les paramètres puis on clique sur [Installer WordPress].

On clique sur [Se connecter] (avec votre identifiant et votre mot de passe).
7 – Gestion de votre site WordPress de test
Pour se connecter au tableau de bord, l’administration de votre site WordPress. Depuis votre PC avec votre navigateur WEB :
http://Adresse_IP/wp-admin (L’adresse IP de votre machine virtuelle sur votre réseau local).
Pour se connecter au site :
http://Adresse_IP/
Voir également
Installer un thème WordPress via un fichier zip téléchargé
Installation de phpMyAdmin sur un serveur sous Debian 13