💡 Objectif : déployer un site WordPress performant et sécurisé sur un VPS Debian/Ubuntu, sans utiliser cPanel ou autre panneau graphique.
📌 Sommaire
- 🔍 Pourquoi s’auto-héberger sans cPanel ?
- 🧱 Prérequis : VPS, domaine et SSH
- 👤 Création d’un utilisateur sécurisé
- ⚙️ Installation de la stack LEMP (NGINX, MariaDB, PHP)
- 🔒 Sécurisation du VPS avec UFW et Fail2Ban
- 📝 Installation de WordPress
- 🔐 HTTPS avec Let’s Encrypt
- 🛡️ Sécuriser WordPress
- 💾 Sauvegardes automatiques
- 📊 Monitoring du serveur
- ✅ Conclusion & ressources utiles
🔍 Pourquoi s’auto-héberger sans cPanel ?
Utiliser cPanel ou Plesk, c’est pratique, mais cela :
- Consomme plus de ressources
- Limite vos options de configuration
- Coûte des licences supplémentaires
- Ne vous apprend rien sur l’admin système
🎯 En auto-hébergement sans panneau, vous obtenez plus de sécurité, de performance, et une vraie maîtrise technique.
👉 Lire aussi : Pourquoi éviter cPanel – Cloudflare
🧱 Prérequis
Vous avez besoin de :
- Un VPS Debian 11/12 ou Ubuntu 22.04+
- Un nom de domaine pointant vers l’IP publique (chez Gandi, OVH, etc.)
- Un accès SSH root ou utilisateur
sudo
👤 Création d’un utilisateur dédié
Créez un utilisateur non-root :
adduser wpuser
usermod -aG sudo wpuser
Désactivez l’accès root SSH :
sudo nano /etc/ssh/sshd_config
Modifiez :
PermitRootLogin no
AllowUsers wpuser
Redémarrez SSH :
sudo systemctl restart ssh
⚙️ Installation de la stack LEMP
1. Installez NGINX
sudo apt update && sudo apt install nginx
2. Installez MariaDB
sudo apt install mariadb-server
sudo mysql_secure_installation
Créez la base de données :
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp'@'localhost' IDENTIFIED BY 'motdepassefort';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp'@'localhost';
FLUSH PRIVILEGES;
3. Installez PHP
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-imagick
🔒 Sécurisation du VPS
Pare-feu avec UFW
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enable
Blocage d’attaques avec Fail2Ban
sudo apt install fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo systemctl enable fail2ban
📝 Installation de WordPress
Téléchargez et installez WordPress :
cd /var/www/
sudo wget https://wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz
sudo mv wordpress monsite
sudo chown -R wpuser:www-data monsite
Configurez NGINX :
sudo nano /etc/nginx/sites-available/monsite
Exemple de bloc serveur :
server {
listen 80;
server_name monsite.fr www.monsite.fr;
root /var/www/monsite;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}
Activez le site :
sudo ln -s /etc/nginx/sites-available/monsite /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
🔐 HTTPS avec Let’s Encrypt
Installez Certbot :
sudo apt install certbot python3-certbot-nginx
Générez votre certificat :
sudo certbot --nginx -d monsite.fr -d www.monsite.fr
Activez le renouvellement auto :
sudo systemctl enable certbot.timer
🛡️ Sécuriser WordPress
- Supprimez les extensions et thèmes inutilisés
- Modifiez le préfixe
wp_
à l’installation - Déplacez
wp-config.php
au-dessus depublic_html
- Appliquez des permissions strictes :
find /var/www/monsite/ -type d -exec chmod 755 {} \;
find /var/www/monsite/ -type f -exec chmod 644 {} \;
🔐 Plugin conseillé :
👉 Limit Login Attempts Reloaded
💾 Sauvegardes automatiques
Sauvegarde base de données
Créez le script :
nano /home/wpuser/scripts/backup_db.sh
Contenu :
#!/bin/bash
DATE=$(date +%F)
mysqldump -u wp -p'MOTDEPASSE' wordpress > /home/wpuser/backups/db-$DATE.sql
Ajoutez à crontab -e
:
0 3 * * * /home/wpuser/scripts/backup_db.sh
Sauvegarde des fichiers WordPress
tar -czf /home/wpuser/backups/files-$(date +%F).tar.gz /var/www/monsite
📤 Pour un envoi distant : utilisez rclone
📊 Monitoring du serveur
Quelques outils utiles :
- Netdata : monitoring en temps réel
- Monit : redémarre vos services en cas de crash
- Glances : monitoring en ligne de commande
htop
: visualisation CPU/RAM simplifiée
✅ Conclusion
Vous avez maintenant un site WordPress :
- Hébergé sur votre propre VPS
- Sécurisé, performant et sans surcouche commerciale
- Facilement maintenable avec des scripts simples
✨ Ce type d’installation convient aux développeurs, freelances, agences ou curieux voulant s’affranchir des hébergeurs grand public.
📎 Ressources complémentaires
- WordPress – Site officiel
- LEMP Stack sur Ubuntu – DigitalOcean
- Guide de sécurité WordPress – WPScan
- Let’s Encrypt – Tutoriels