Installer WordPress manuellement peut sembler technique, mais c’est le seul moyen d’avoir la maîtrise complète de votre site et d’en assurer la sécurité dès le départ. Contrairement aux installations automatiques, cette méthode vous permet de choisir vos paramètres, d’éviter les failles les plus courantes et de poser une base propre pour un site plus stable et durable.
Voici, étape par étape, comment procéder à une installation manuelle professionnelle et sécurisée.
1. Pourquoi éviter l’installation automatique
Les installateurs en un clic (Softaculous, Installatron, etc.) facilitent la vie, mais ils présentent plusieurs inconvénients :
- ils créent des comptes administrateurs génériques ;
- ils conservent le préfixe de tables par défaut (
wp_), connu des robots malveillants ; - ils laissent parfois des fichiers inutiles à la racine du site (readme.html, license.txt, etc.).
Pour un site professionnel, il est préférable d’installer WordPress manuellement afin de maîtriser chaque étape et de renforcer la sécurité dès la base.
2. Téléchargement et préparation
Téléchargez la dernière version de WordPress sur : https://fr.wordpress.org/download/
Décompressez le dossier localement, puis renommez-le selon votre projet, par exemple :
wordpress → siteclient
Transférez-le ensuite via SFTP (de préférence) dans le répertoire racine de votre hébergement (public_html ou /www).
3. Création de la base de données
Depuis votre interface d’hébergement (cPanel, phpMyAdmin ou autre), créez :
- une base de données (ex.
nom_bdd), - un utilisateur (ex.
nom_user), - un mot de passe fort (caractères spéciaux, majuscules, minuscules, chiffres).
Attribuez à cet utilisateur uniquement les privilèges nécessaires (tous sauf GRANT OPTION).
Le privilège GRANT OPTION permet à un utilisateur MySQL d’accorder des droits à d’autres utilisateurs.
Autrement dit, il lui donne un pouvoir d’administrateur sur le serveur MySQL.
Exemple :
Si un pirate parvient à exécuter du code SQL via une faille d’un plugin, et que votre utilisateur MySQL dispose de GRANT OPTION, il pourrait :
- créer un autre utilisateur MySQL avec tous les droits,
- exporter ou effacer entièrement la base,
- injecter du code malveillant à travers d’autres bases du même serveur.
C’est donc une porte d’entrée majeure à éviter absolument.
4. Configuration du fichier wp-config.php
Renommez le fichier wp-config-sample.php en wp-config.php et éditez-le.
a. Paramètres de connexion
define( 'DB_NAME', 'nom_bdd' );
define( 'DB_USER', 'nom_user' );
define( 'DB_PASSWORD', 'motdepassefort' );
define( 'DB_HOST', 'localhost' );
b. Modifier le préfixe des tables
Exemple dans wp-config.php :
$table_prefix = 'glk23_';
Évitez le préfixe wp_ par défaut : il est souvent ciblé par les attaques automatisées.
c. Clés de sécurité
Générez des clés uniques sur : https://api.wordpress.org/secret-key/1.1/salt/
Copiez les huit lignes obtenues dans le fichier wp-config.php.
d. Forcer l’accès sécurisé (optionnel)
Toujours dans wp-config.php
define( 'FORCE_SSL_ADMIN', true );
e. Activer les mises à jour automatiques mineures
WordPress installe par défaut certaines mises à jour de sécurité, mais il est préférable de forcer leur activation explicite pour s’assurer que les correctifs mineurs soient appliqués automatiquement.
Ajoutez cette ligne dans le fichier wp-config.php, avant la ligne suivante :
/* That's all, stop editing! Happy publishing. */
Ainsi :
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
/* That's all, stop editing! Happy publishing. */
Cela permet à WordPress d’installer automatiquement les mises à jour mineures et de sécurité (par exemple de la version 6.6.1 à 6.6.2), sans intervention manuelle.
Les mises à jour majeures (6.x → 7.x) resteront manuelles, pour conserver le contrôle sur la compatibilité de vos thèmes et extensions.
5. Lancer l’installation
Accédez à l’adresse :
https://votresite.fr/wp-admin/install.php
Choisissez un nom d’utilisateur solide (évitez “admin” ou votre prénom) et un mot de passe fort.
Utilisez une adresse e-mail de récupération fiable, différente de celle du site si possible.
6. Supprimer le premier compte administrateur
Dès l’installation terminée :
- Créez un nouvel utilisateur avec le rôle Administrateur (ex.
admin_glkougestion2025). - Connectez-vous avec ce nouvel identifiant.
- Supprimez le compte administrateur initial et attribuez-lui le contenu existant.
Cette étape empêche les pirates de cibler le premier identifiant créé (souvent l’utilisateur n°1 dans la base de données).
7. Nettoyer et durcir l’installation
a. Supprimer les fichiers inutiles
Dans le dossier racine :
readme.html
license.txt
wp-config-sample.php
b. Protéger le fichier wp-config.php
Dans le fichier .htaccess :
<Files wp-config.php>
order allow,deny
deny from all
</Files>
c. Empêcher la navigation dans les dossiers
Toujours dans .htaccess :
Options -Indexes
d. Masquer la version de WordPress
Dans le fichier functions.php du thème enfant :
// Nettoyage des balises sensibles dans le <head>
function glk_cleanup_wp_head() {
// Supprimer la balise <meta name="generator">
remove_action('wp_head', 'wp_generator');
}
add_action('init', 'glk_cleanup_wp_head');
8. Bonnes pratiques de sécurité supplémentaires
- Modifier l’URL de connexion (par exemple avec le plugin WPS Hide Login).
- Limiter les tentatives de connexion (ex. Limit Login Attempts Reloaded ou Wordfence).
- Désactiver XML-RPC si vous n’utilisez pas l’application mobile ni Jetpack ajoutez dans .htaccess :
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>
9. Sécuriser davantage votre configuration (niveau expert)
a. Désactiver l’éditeur de fichiers intégré
Empêche toute modification directe des fichiers PHP depuis le tableau de bord.
À ajouter dans wp-config.php :
define('DISALLOW_FILE_EDIT', true);
b. Personnaliser les cookies d’authentification (optionnel)
À ajouter dans wp-config.php :
define('USER_COOKIE', 'glk_user');
define('PASS_COOKIE', 'glk_pass');
define('AUTH_COOKIE', 'glk_auth');
c. Limiter les révisions et les sauvegardes automatiques
À ajouter dans wp-config.php :
define('WP_POST_REVISIONS', 5);
define('AUTOSAVE_INTERVAL', 180);
d. Restreindre l’accès à /wp-admin par IP (facultatif)
À ajouter dans .htaccess :
<Limit GET POST>
order deny,allow
deny from all
allow from 192.168.0.25
</Limit>
e. Mettre en place des sauvegardes automatiques
Utilisez un plugin comme UpdraftPlus ou Akeeba Backup, ou un outil intégré à votre hébergement (o2switch, JetBackup…).
f. Scanner régulièrement le site
Installez un plugin de vérification de fichiers, tel que :
- Wordfence Security (version gratuite efficace)
- Sucuri Security (détection d’intégrité et logs)
g. Désactiver les émojis et les embeds inutiles
À ajouter dans functions.php du thème enfant :
// Nettoyage des balises inutiles dans le <head>
function glk_cleanup_wp_head() {
// Désactiver les émojis
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');
// Supprimer les liens oEmbed et DNS Prefetch
remove_action('wp_head', 'wp_oembed_add_discovery_links');
remove_action('wp_head', 'wp_resource_hints', 2);
}
add_action('init', 'glk_cleanup_wp_head');
10. Et après l’installation : pensez aux Security Headers
Même si votre installation WordPress est propre et bien configurée, votre site reste exposé à certaines attaques côté navigateur.
C’est là qu’interviennent les Security Headers HTTP, configurés au niveau du serveur (dans .htaccess ou via votre panneau d’hébergement).
Ces en-têtes complètent la protection de WordPress en contrôlant la façon dont les navigateurs chargent et exécutent le contenu du site. Ils permettent notamment de :
- Empêcher l’intégration non autorisée de votre site dans un iframe (X-Frame-Options ou Frame-ancestors) ;
- Bloquer l’exécution de scripts externes non approuvés (Content-Security-Policy) ;
- Renforcer la confidentialité des connexions HTTPS (Strict-Transport-Security) ;
- Réduire les risques liés au MIME sniffing (X-Content-Type-Options) ;
- Masquer des informations de version du serveur ou du CMS (Referrer-Policy, Permissions-Policy).
Mettre en place ces en-têtes permet de réduire considérablement la surface d’attaque côté client et d’améliorer la note de sécurité globale de votre site (notamment sur securityheaders.com).
Exemple simple à ajouter dans .htaccess :
# Sécurité minimale recommandée
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy "strict-origin-when-cross-origin"
Header always set Permissions-Policy "geolocation=(), microphone=(), camera=()"
Vous pouvez ensuite aller plus loin avec une Content-Security-Policy (CSP) personnalisée, adaptée à vos scripts, polices et CDN.
Quelques plugins gratuits
- Headers Security Advanced & HSTS WP : installe automatiquement de nombreuses entêtes (HSTS, CSP, X-Frame-Options, etc.). WordPress.org
- HTTP Headers : offre un contrôle fin sur les entêtes HTTP, y compris CSP, Referrer-Policy, X-Frame-Options, etc. WordPress.org
- GD Security Headers : permet d’ajouter diverses entêtes de sécurité, CSP avec rapport, Feature/Permissions Policy, etc. WordPress.org
11. Créer un compte dédié à la rédaction
Même si vous êtes la seule personne à gérer votre site, il est recommandé de ne pas publier vos pages et articles avec le compte administrateur.
Pourquoi ?
Le rôle Administrateur dispose de tous les privilèges : gestion des thèmes, extensions, utilisateurs, réglages, etc.
Si ce compte est compromis (mot de passe faible, cookie volé, ordinateur infecté…), un pirate pourrait :
- installer une extension malveillante,
- modifier le thème ou le fichier
functions.php, - injecter du code dans la base de données.
En revanche, un compte au rôle Auteur ou Éditeur limite l’accès uniquement à la création et la modification de contenus, sans possibilité de modifier le système.
Étapes recommandées
- Créez un nouvel utilisateur :
- Allez dans Utilisateurs → Ajouter.
- Donnez-lui un identifiant clair, par exemple
redacteuroucontenu_glk. - Choisissez un mot de passe fort.
- Sélectionnez le rôle Auteur (ou Éditeur si vous devez pouvoir modifier les pages d’autres utilisateurs).
- Connectez-vous avec ce compte pour créer vos articles et pages.
Cela permet de séparer les actions de contenu de celles d’administration. - Conservez le compte administrateur uniquement pour :
- la gestion du thème et des extensions,
- les mises à jour,
- les sauvegardes ou interventions techniques.
Astuce supplémentaire
Si vous utilisez plusieurs personnes pour gérer le site :
- Donnez le rôle Auteur à ceux qui publient leurs propres articles.
- Donnez le rôle Éditeur à ceux qui doivent relire, corriger et publier les contenus des autres.
- Réservez le rôle Administrateur exclusivement à vous-même.
12. Conclusion
Un site WordPress solide ne dépend pas d’un clic, mais d’une installation réfléchie. En configurant manuellement votre CMS, vous gardez le contrôle sur sa sécurité, sa performance et son évolution. C’est la différence entre un site qui fonctionne… et un site qui dure.






