Comment puis-je protéger l'accès a un répertoire web?

Un article de Assistance Oxyd.

Deux solutions s'offrent à vous :


1) Méthode "depuis le panel":

Dans la gestion de votre Pack hébergement, il faut aller dans le menu "Protection des répertoires".

- Il faut créer un utilisateur (ou des utilisateurs) dans ."Comptes".
- Il faut indiquer le ou les répertoires a protéger sous forme 'domaine.tld/repertoire/' (exemple: monsite.com/dossier)
- Ensuite il faut cliquer sur "Protection" puis associer un répertoire a un utilisateur. Pour choisir plusieurs utilisateurs
vous devez faire 'ctrl + clique' et choisir un a un les utilisateurs a autoriser.


2) Methode "htaccess"

Il s'git de créer un fichier .htaccess qui indiquera au serveur web ce qu'il faut protéger. Il protègera l'accès
au répertoire dans lequel il se trouve ainsi que tout les sous répertoires.

Exemple de fichier .htaccess:

AuthUserFile /users/userXXXXXX/.htpasswd
AuthName "Accès Protégé"
AuthType Basic
<Limit GET POST>
Require valid-user
</Limit>


Dans la première du ligne du .htaccess on indique le fichier ou se trouve la liste des utilisateurs ainsi que leur
mot de passe, je vous conseil donc de placer ce fichier en dehors de votre site web (au dessus de exemple.com).
On peut noter aussi que le chemin vers la racine de votre espace FTP est /user/userXXXXXX/ (userXXXXXX votre nom d'utilisateur)

Maintenant il faut créer le fichier .htpasswd, voici les différentes méthodes:
- Linux:
Pour créer le fichier il faut exécuter la commande htpasswd:

~$ htpasswd -c .htpasswd username

Pour ajouter un nouvel utilisateur

~$ htpasswd .htpasswd username


Il faudra bien entendu indiqué le mot de passe dans le terminal, il existe d'autre options pour créer le fichier
.htpasswd pour cela veuillez consulter le manuel de htpasswd ('man htpasswd').

- Windows:
Vous pouvez utilisé des sites web pour générer les mot de passe crypté pour .htpasswd comme par exemple:
http://aspirine.org/htpasswd.html