À la création d’un site web, il existe souvent une zone du site dont vous souhaitez restreindre l’accès, comme l’administration du site ou bien une page que vous ne désirez pas rendre publiques.

Grâce au fichier .htaccess, il est tout à fait possible de protéger par un identifiant et un mot de passe une zone limitée ou l’ensemble d’un site. Cette protection est possible à partir de deux fichiers qui sont les fichiers « .htaccess » et « .htpasswd ».

Le fichier « .htpasswd » contiendra des couples d’identifiants et de mots de passe autorisés à accéder à la zone limitée. Et le fichier « .htaccess » contiendra le chemin d’accès vers le fichier « .htpasswd » ainsi que quelques autres options à définir.

Découvrez dans la suite de cet article comment sécuriser une zone précise de votre site web à l’aide des fichiers « .htaccess » et « .htpasswd ».

 

Déposez gratuitement votre projet sur Codeur.com, recevez une quinzaine de devis et sélectionnez le développeur web idéal.

Trouver un développeur web

Créer le fichier .htpasswd

La première action à réaliser est de créer le fichier « .htpasswd », à savoir le fichier qui contiendra les combinaisons d’identifiants et de mots de passe.

Pour cela, créez sur votre ordinateur ou directement sur l’hébergement de votre site, un fichier que vous nommerez « .htpasswd » tout simplement.

Vous pouvez accéder aux fichiers de votre site à partir d’un client FTP ou d’une interface fournie par votre hébergeur.

Si vous créez le fichier sur votre ordinateur, il vous faudra tout de même avoir accès aux fichiers de votre site, via FTP ou une interface dédiée, pour télécharger ensuite le fichier « .htpasswd » sur votre hébergement.

L’emplacement où vous déposerez ou créerez le fichier « .htpasswd » sur votre serveur est important. Il ne devra pas être dans un dossier public auquel tout le monde aura accès, car celui-ci contient les mots de passe de la zone à protéger.

Évitez donc les dossiers publics comme « www » et ses sous-dossiers, où les fichiers des sites se trouvent généralement. Favorisez plutôt le répertoire d’accueil qui est inaccessible par internet. Le chemin de ce répertoire ressemblera souvent à cela « /usr/home/nom_utilisateur »

N’hésitez pas à contacter votre hébergeur, un responsable technique ou un freelance en postant votre projet sur Codeur.com si vous n’êtes pas certains de l’emplacement du fichier « .htpasswd »

Trouvez le meilleur développeur web sur Codeur.com

Vos premiers devis en 15 minutes

Gratuit et sans obligation

Déjà plus de 75 000 clients

Trouver un freelance

Créer ou générer un mot de passe chiffré

Comme vous l’avons vu depuis le début de cet article, le fichier « .htpasswd » sert à stocker des identifiants et des mots de passe.

Bien que vous ne mettiez pas ce fichier dans un dossier public de votre hébergement web, il n’est pas sans risque que quelqu’un arrive à accéder au fichier « .htpasswd ».

Dans ce cas, si les mots de passe ne sont pas chiffrés dans le fichier cela engendrera un gros risque pour votre site web puisque des pirates pourraient accéder aux zones protégées de votre site web.

Il est donc essentiel de chiffrer les mots de passe écrits dans le fichier « .htpasswd » pour augmenter la sécurité de votre site si ce fichier venait à « fuiter ».

Vous pouvez crypter un mot de passe manuellement grâce à certaines fonctions dans divers langages de programmation tel que la fonction « crypt » en PHP ». Néanmoins il est plus simple pour les non-initiés d’utiliser un site permettant de générer des mots de passe chiffrés pour votre fichier « .htpasswd ».

Pour générer un mot de passe chiffré, vous pouvez utiliser le site « Alterlinks ». Sur le site Alterlinks, il vous sera demandé de renseigner un nom d’utilisateur et un mot de passe pour générer un couple d’un identifiant et d’un mot de passe chiffré.

Renseignez donc le nom d’utilisateur (1) et le mot de passe associé (2) à l’utilisateur en question, saisissez ensuite de nouveau le mot de passe (3), puis sélectionner la méthode de cryptage « CRYPT » (4) avant de cliquer sur le bouton « Générer / Annuler » (5) pour générer la combinaison chiffrée.

Copiez la combinaison « identifiant:mot-de-passe-chiffré » (6) générée dans l’encadré situé en dessous de la phrase « Copiez-collez ceci dans votre fichier .htpasswd : » et collez-la dans le fichier « .htpasswd » précédemment créé.

Protéger site internet mot de passe .htaccess

Recommencez cette opération pour chaque compte d’utilisateur à créer qui aura l’accès à la zone protégée de votre site en ajoutant chaque nouvelle combinaison d’un identifiant et d’un mot de passe sur une nouvelle ligne du fichier « .htpasswd ».

Lorsque vous aurez créé tous les comptes d’utilisateurs et les aurez ajoutés au fichier « .htpasswd », n’oubliez pas de sauvegarder le fichier qui devrait ressembler à quelque chose comme cela :

Protéger site internet mot de passe .htaccess

Puis, si vous aviez le fichier en local sur votre ordinateur, téléchargez-le dans un dossier non public sur votre hébergement web à l’aide d’un client FTP ou d’une interface fournie par votre hébergeur.

 

Créer le fichier .htaccess

La seconde étape pour protéger votre site web ou une partie seulement est de créer le fichier « .htaccess ».

Comme pour le fichier précédent « .htpasswd », vous allez devoir créer un fichier que vous renommerez seulement « .htaccess » et rien de plus.

Si vous créez ce fichier en local sur votre ordinateur vous devrez par la suite le télécharger sur votre hébergement web avec l’aide d’une interface dédiée de votre hébergeur ou un client FTP.

Dans tous les cas, que vous décidiez de créer le fichier en local ou directement sur votre hébergement web, l’emplacement du fichier a une grande importance. En effet, c’est l’endroit où se trouve le fichier « .htaccess » qui déterminera à partir de quel dossier, parmi les fichiers de votre site, que la protection sera active.

Par exemple, si vous mettez le fichier « .htaccess » dans le dossier « administration » de votre site ayant pour chemin « /www/sites/www.monsite.fr/administration/ », alors lorsque vous essayerez d’accéder à la page «  www.monsite.fr/administration  »vous serez bloqué par un message qui vous demandera de vous identifier pour aller plus loin.

Une fois le fichier « .htaccess » créé, ouvrez-le et écrivez les lignes de code suivantes :

AuthType Basic
AuthName "Accès protégé"
AuthUserFile /usr/home/votre_nom_d_utilisateur/www/.htpasswd
require valid-user

Et remplacez les deux valeurs de « AuthName » et « AuthUserFile ».

  • AuthName est le texte qui sera affiché à l’utilisateur lorsqu’il essayera d’accéder à la zone protégée. Modifiez le texte entre guillemets par le texte que vous souhaitez afficher.
  • AuthUserFile est le chemin absolu vers le fichier « .htpasswd » que vous avez créé précédemment. Vous devrez remonter l’arborescence de votre hébergement à partir de l’emplacement du fichier « .htpasswd » pour assembler le chemin absolu si celui-ci ne vous est pas directement donné.

Lorsque vous aurez terminé d’éditer le fichier « .htaccess », sauvegardez-le et si vous l’aviez édité en local, n’oubliez pas de le télécharger sur votre hébergement web à l’emplacement de votre site où l’accès devra être limité.

 

Tester la protection

La dernière étape pour protéger votre site internet est de vérifier que cette protection est bien active et qu’il vous est bien demandé un identifiant ainsi qu’un mot de passe pour accéder à la zone protégée de votre site web.

Pour cela, rendez-vous dans la zone de votre site ou la page que vous souhaitiez protéger et si vous vous retrouvez bloqué par un message d’authentification, essayez de vous connecter avec l’un des comptes utilisateurs renseignés dans le fichier « .htpasswd » avec le mot de passe non crypté.

Si vous arrivez à passer l’authentification et donc vous connecter, essayez de nouveau d’accéder à la page, mais cette fois-ci avec un mot de passe erroné. Si dans ce second cas, vous vous retrouvez bloqué alors c’est que le système est fonctionnel et que vous avez réussi à protéger votre site web !

 

Conclusion

Protéger une certaine zone de son site par un mot de passe est utile pour préserver certaines données ou fonctionnalités sensibles de votre site internet.

La mise en place d’une protection de votre site est rapide à effectuer cependant cela demande de toucher aux fichiers de votre site web ce qui peut créer quelques problèmes si vous ne vous y prenez pas correctement.

N’hésitez donc pas à poster une annonce gratuite sur Codeur.com pour trouver rapidement un freelance qui saura protéger votre site internet par un mot de passe grâce aux fichiers .htaccess et .htpasswd.