Installation de WordPress dans une machine virtuelle Debian 13 sous VirtualBox

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

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].

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.

L’éditeur Nano sous Linux

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

Changer le nom de domaine d’un site WordPress

Documentation Apache sous Debian 13 (Trixie)

Retour en haut