Créer son site avec WordPress #7 - Le .htaccess #2

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@zonguin·
0.000 HBD
Créer son site avec WordPress #7 - Le .htaccess #2
Vous voulez créer un site avec Wordpress mais vous ne savez pas comment vous y prendre ? Grâce à cette série de tutoriels vous allez apprendre pas à pas de façon complète comment créer un site, avec comme exemple le mien que je vais construire en même temps que vous.

> I show in this article how to secure wordpress with the help of. htaccess

### *Sommaire de la série :*
##### - [WordPress #1](https://steemit.com/fr/@zonguin/creer-son-site-avec-wordpress-1-installation) : Installation
##### - [WordPress #2](https://steemit.com/utopian-io/@zonguin/creer-son-site-avec-wordpress-2-premier-demarrage) : Premier démarrage
##### - [WordPress #3](https://steemit.com/utopian-io/@zonguin/creer-son-site-avec-wordpress-3-parametrage-et-procedure-de-mises-a-jour) : Paramétrage et mises à jour
##### - [WordPress #4](https://steemit.com/utopian-io/@zonguin/creer-son-site-avec-wordpress-4-tout-sur-les-articles) :  Les articles
##### - [WordPress #5](https://steemit.com/utopian-io/@zonguin/creer-son-site-avec-wordpress-5-personnalisation-les-themes) : Les thèmes
##### - [WordPress #6](https://steemit.com/fr/@zonguin/creer-son-site-avec-wordpress-6-le-htaccess) : Le .htaccess partie 1

-------

<center>![série6.png](https://res.cloudinary.com/hpiynhbhq/image/upload/v1515606787/kyul1v4oup8mriuekmcz.png)
</center>

Dans le tutoriel précédant, nous avions commencé à parler .htaccess, notamment au niveau de la sécurité. Aujourd'hui nous allons continuer.

## 1] Sécurité

### 1] Protéger wp-includes et wp-content

Le code que je vais vous présenter permet de bloquer l' utilisation directe des fichiers php. Veuillez donc créer des fichiers .htaccess dans ces deux dossier avec le code correspondant :

--------

**Pour wp-includes** :
<code>
	<Files wp-tinymce.php>
allow from all
</Files>
<FilesMatch "\.(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>
<Files wp-tinymce.php>
  Allow from all
</Files>
<Files ms-files.php>
  Allow from all
</Files>
</code>
------

**Pour wp-content** :
<code>
	<FilesMatch "\.(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>
</code>
-----

**Pour wp-content/uploads (créez un 3eme fichier .htaccess) :**

<code>
	<FilesMatch "\.(?i:php)$">
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
</FilesMatch>
</code>
------

> Note : Ce code est aussi fourni via le plugin Sucuri. Nous verrons ainsi comment l' installer dans un prochain tutoriel.

### 2] Protéger wp-admin

**wp-admin** est le menu de configuration de WordPress, et de bien d' autres choses... 
Il faut donc le sécuriser au même titre que le répertoire de base.

### 1] Double authentification

Pour pouvoir ajouter une double authentification à l' interface d' administration, faites ceci :

1. Allez sur http://www.htaccesstools.com/htpasswd-generator/,  rentrez les identifiants puis cliquez sur **Create .htpasswd file**. Copiez le contenu dans un fichier **.htpasswd** que vous créerez dans le /wp-admin.
2. Créez un fichier php.info dans /wp-admin avec comme contenu :
	<?php echo "Chemin à copier : " . realpath('.htaccess'); ?>
3. Accédez à ce fichier pour trouver le chemin d' accès du .htpasswd.
4. Créez le fichier .htaccess et ajoutez le code suivant :

---------
<code>
	AuthType Basic
AuthName "Protected page"
AuthUserFile /home/.htpasswd
</code>
<code>
	Require valid-user
<Files admin-ajax.php>
  Order allow,deny
  Allow from all
  Satisfy any
</Files>
</code>
<code>
	<Files admin-post.php>
  Order allow,deny
  Allow from all
  Satisfy any
</Files>
</code>
<code>
	<Files "\.(css|gif|png|js)$">
  Order allow,deny
  Allow from all
  Satisfy any
</Files>
</code>

------

5. Mettez le bon chemin (*AuthUserFile /home/.htpasswd* est à changer)

Et voilà, vous disposez maintenant d' une double authentification !

### 3] Limiter le hotlinking

Le hotlinkining, c'est quand quelqu' un prends votre image sur son site avec son lien. Le problème c'est que cela pome littéralement la bande passant. Pour éviter ça, ajoutez le code suivant :

----
<code>
	RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?monsite.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://fakeimg.pl/400x200/?text=Pas_touche_aux_images [NC,R,L]
</code>
-------
 Et pour l' autoriser sur certains sites, ajoutez ce code : 

<code>
	RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?steemit.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?busy.org [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?utopian.io [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ http://fakeimg.pl/400x200/?text=Pas_touche_aux_images [NC,R,L]
</code>

------

### 4] Désactiver les rapports d' erreur

Les rapports d' erreur sont facile à obtenir. Même complexes à décrypter, ils peuvent aider les pirates à trouver des failles, en donnant notamment le chemin de votre blog par rapport à votre hébergeur.

Ajoutez donc le code suivant :

------

<code>
	php_flag display_errors Off
</code>
-----

### 5] Protéger votre site des attaques URL

Le code suivant va protéger votre site des attaques URL en bloquant l' accès à certains fichiers qui ne sont pas censés s' ouvrir.

-----

<code>
	<files install.php>
Order allow,deny
Deny from all
</files>
<files error_log>
Order allow,deny
Deny from all
</files>
<files readme.html>
 Order Allow,Deny
 Deny from all
 Satisfy all
</Files>
RedirectMatch 403 \[
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /(([^/\ ]+/)*)/+([^\ ]*)
RewriteRule ^ /%1%3 [L,R=301]
</IfModule>
</code>

------


Et voilà ! Votre site est maintenant bien sécurisé, paré à résister aux attaques des pirates ! ;-)
Nous en avons fini avec la sécurité, mais pas avec le .htaccess ! ^^

A bientôt !



👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,