Sécuriser son panneau d’administration avec les .htaccess

Alexandre | 12 juillet 2011 | Commentaires (0)

Suite à mon tuto sur comment protéger son site avec les .htaccess sur Kommunauty. On m’a fait remarqué que la technique que je décrivais pour protéger son interface d’administration était loin d’être parfaite.

Petit rappel, dans le tuto j’expliquais qu’il était possible de restreindre l’accès à cette partie sensible par l’IP. C’est-à-dire  qu’uniquement votre IP est autorisée à accéder à l’interface d’administration. Le problème, c’est que lorsque vous avez une IP qui change souvent, c’est le bordel. Il faut modifier le .htaccess tout le temps et ça devient ingérable.

C’est là que j’ai eu une petite idée pour régler ce problème. Je vais donc vous expliquer comment restreindre l’accès à votre partie administration à coup sûr. Et cela toujours avec nos .htaccess chéris ;)

Pour bloquer l’accès nous allons utiliser deux choses :

un plugin Firefox qui permet de modifier son user-agent et une condition dans notre .htaccess.

L’user-agent c’est quoi ?

C’est une information qu’envoie votre navigateur au site web pour dire qui il est. Par exemple, si vous utilisez Firefox, ce dernier enverra au site web qu’il s’appelle Mozilla Firefox et qu’il est à la version 5.0. Le site web sait alors quel navigateur vous utilisez et sous quelle version.

Et le plugin il sert à quoi ?

Le plugin permet de modifier cette information envoyer au site web. Reprenons notre exemple, j’ai Firefox comme navigateur mais ce coup-ci avec le plugin d’installé. Je vais pouvoir faire croire que je ne suis pas sur Firefox mais sous Chrome ou Internet Explorer. Alors que c’est complètement faux. On peut alors mettre tout et n’importe quoi comme navigateur.

Pratiquons

Nous allons donc jouer là dessus. Le principe est simple. Nous allons mettre dans notre .htaccess une condition qui dit que si vous n’avez pas le bon navigateur vous ne pouvez pas accéder à la partie administration. Et grâce à notre plugin nous allons générer un nom de navigateur que vous seul connaîtrez. Ca sera une sorte de clef pour accéder au contenu.

Dans le tuto j’ai choisis comme nom pour mon navigateur « binaire-life/Administration » à vous ensuite de choisir le nom du votre ;) Un truc bien compliqué de préférence.

Commençons par la condition. Voila ce qu’il faut ajouter dans le .htaccess :

SetEnvIfNoCase user-Agent ^binaire-life/Administration bad Order Deny,Allow Deny from all Allow from env=bad

Traduction : Si votre navigateur ne s’appelle pas « binaire-life/Administration » vous n’avez pas le droit d’accéder à la page. Tout simplement :)

Maintenant que la règle est établie nous allons installer et configurer notre plugin.

Le plugin pour Firefox s’appelle User Agent Switcher

Une fois installé rendez-vous dans les options

Options User Agent Switcher

Ajoutez un nouveau user-agent en cliquant sur New

Add User Agent

Pour remplir les différents champs pas besoin de se compliquer la tâche, voila comment j’ai fais :

Edit User Agent

Enregistrez le tout. Il n’y a plus qu’a changer de nom de navigateur avec le plugin :

Change User Agent

Pour ceux qui chercherais, le petit icône se trouve en bas dans la barre des modules. Si vous n’avez pas cette barre faites un clique droit sur la barre en haut de Firefox et cochez « Barre des modules »

Vous pouvez bien sûr revenir à votre vrai Navigateur en cochant « Default User Agent »

Il vous suffit désormais d’activer/désactiver le plugin pour accéder à votre interface d’administration.