Protéger un répertoire sur le Net

Mots clefs:, ,

Sur Internet, il existe de nombreuses solutions pour protéger l’accès à un site, ou à un répertoire. Il faut alors mettre en place une protection, basée sur un identifiant associé à un (bon) mot de passe.

Pour mettre en œuvre de telles protections, le plus simple est d’utiliser les mécanismes du serveur : .htaccess et  .htpasswdQue vous cherchiez à préserver les accès à une interface d’administration, ou limiter la visibilité d’un site à un public restreint (la famille, les amis…), il n’est pas toujours utile de passer par de la programmation. Ce qui serait indispensable si vous aviez besoin de droits spécifiques à chaque utilisateur (typiquement certains pouvant ajouter des informations, d’autres les détruire, d’autre ne faire que les consulter).

La création de deux fichiers textes suffisent à cet effet.

.htaccess, pour mettre en place

Le premier fichier, nommé .htaccess va servir à d’une part mettre en place la protection, et d’autre part préciser le chemin qui pointe vers le fichier des mots de passe. Exemple :

AuthUserFile /home/htdocs/passwordfinder.fr/secret/.htpasswd
AuthGroupFile /dev/null
AuthName "ACCESS RESTRICTED"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>

Dans l’exemple la première ligne précise l’emplacement du fichier des mots de passe, en partant de la racine du serveur (cette indication est disponible via votre hébergeur). Les autres lignes sont  nécessaires, mais n’entrons pas dans le détail.

.htpasswd, les identifiants et mots de passe

A l’emplacement spécifié sur la ligne 1 du .htaccess se trouve le chemin qui mène au fichier des mots de passe. Celui ci est constitué de plusieurs lignes, une par individu ayant un accès. Pour chacun, il faut spécifier son nom d’utilisateur et son mot de passe, séparé par le symbole : comme dans les 2 exemples ci dessous.

richard:$apr1$ezYYfOJl$x2/3LWw4RVSEmTMWdmaq60
sophie:$apr1$dy/8Mk09$dPCkXOSL1Ob6ME6DBTqZb1

Vous constaterez que le mot de passe est crypté. Pour ce faire, il faut utiliser un logiciel spécifique, disponible sur le serveur, mais également en de nombreux endroits sur le Net. Et bien sûr sur Password Finder, un petit générateur htaccess est disponible.

A noter que de rares hébergeurs imposent que le mot de passe ne soit pas crypté. Chez d’autre il faut passer par leur interface d’administration pour créer le mot de passe. Dans tous les cas, un rapide coup d’oeil à la documentation de l’hébergeur peut vous faciliter la mise en place.

Attention, le nom du fichier .htaccess est important (aucun caractère avant le point). Pour l’autre, vous pouvez prendre des libertés, entre autre le mettre en dehors de l’arborescence du site, tant que le chemin spécifié mène au dit fichier.

Et bien sûr, choisissez votre mot de passe avec sagesse !

Richard Carlier ,
30 avril 2010

Réaction ? Question ?