Des Trucs à Web

Des astuces, des ressources, des tutoriels pour votre site
Menu
  • Accueil
  • Langages
    • Html
    • Javascript
    • PHP
  • Serveurs
    • Apache
  • Bdd
    • Mysql
  • Matériel
    • Comment éviter les reflets sur l’ordinateur portable PC, Mac, la tablette en extérieur
  • Outils
    • Avis WordHero AI (offre lifetime 89$) outil GPT-3 d’aide à la rédaction
    • Avis Pabbly Connect l’outil d’automatisation de tâches (offre Lifetime 149$)
    • Rédiger des contenus grâce à l’intelligence artificielle
  • Systèmes
    • Windows
Home
Serveurs
Apache
Protéger l’accès d’un répertoire, d’une page par htaccess, htpasswd

Protéger l’accès d’un répertoire, d’une page par htaccess, htpasswd

 

Il est parfois nécessaire de protéger l’accès à une page, à un répertoire sur un serveur web (ex : répertoire d’administration, contenant des données sensibles) afin d’éviter que n’importe qui puisse y accéder.

Il y a différentes méthodes, ont peut avoir recourt à des langages comme le PHP, ASP, PERL …), mais la méthode la plus simple est d’utiliser le mécanisme de protection du serveur apache.

 

C’est-à-dire effectuer une protection à l’aide des fichiers .htaccess et .htpasswd. On estime ici que l’on n’a pas accès au fichier de configuration http.conf, ce qui est le cas chez un fournisseur d’accès.

Le fichier .htaccess est un fichier texte contenant des commandes Apache.

Voici un exemple :

AuthUserFile /home/login/admin/.htpasswd
AuthGroupFile /dev/null
AuthName "Veuillez vous identifier"
AuthType Basic

<Limit GET POST>
require valid-user
</Limit>

Quelques explications :

AuthUserFile : c’est le nom et le chemin d’accès du fichier qui contiendra les noms des utilisateurs et les mots de passe associés. Ce chemin doit partir de la racine du site.

Ici, les mots de passe seront dans /home/login/admin/.htpasswd.

On peut, et il est même conseillé de choisir un autre nom que .htpasswd pour le fichier qui contiendra le couple utilisateur/mot de passe.
Le point précédent le nom de fichier permettra de cacher (au sens Unix /linux du terme).
Il est également recommandé de mettre le fichier des mots de passe en dehors de l’arborescence du site si l’on en a la possibilité.

AuthGroupFile : permet de définir un droit d’accès à un groupe d’utilisateur.
Cette solution n’est que rarement utilisée pour un site Web.
Le reste du temps il pointe vers /dev/null. Il faut que cette ligne soit présente.

AuthName : c’est le texte qui apparaîtra dans la fenêtre demandant le mot de passe.

AuthType : L’authentification est en général « basic ». Les mots de passe sont alors envoyés en clair sur le réseau.

Pour sécuriser davantage l’accès, on peut utiliser la méthode d’authentification « digest » qui crypte les mots de passe en MD5 . Ce système n’est supporté que par certains navigateurs.

Limit : C’est ici qu’on va indiquer ce qui est autorisé et interdit dans le répertoire.
Les commandes GET et POST indiquent la récupération de pages web et la réponse à certains formulaires. POST est utilisé pour autoriser l’upload de fichiers sous le protocole http

Require valid-user : accepte tous les utilisateurs qui ont un login : mot de passe dans .htpasswd.

Require herve jacques : limite l’accès à un ou plusieurs utilisateurs précis, ici herve et jacques. A noter que les utilisateurs sont séparés par des espaces.

Une fois le fichier .htaccess créé, il faut le placer dans le répertoire à protéger. Maintenant il nous faut créer le fichier .htpasswd

Sous unix et inux il existe un l’utilitaire : htpasswd. Voici un exemple d’utilisation :

htpasswd -c .htpasswd herve

après validation Linux vous demande un mot de passe, puis une deuxième fois pour confirmation.

Si l’on édite le fichier .htpasswd obtient une ligne du style :

herve:x3l0HLu5v6mOF

ce qui correspond au nom d’utilisateur (login) et son mot de passe crypté. Il y aura une ligne pour chaque utilisateur.

Si l’on n’a pas accès à l’utilitaire htpasswd, on peut se rendre sur l’un des deux sites suivants proposant le cryptage d’un mot de passe.

http://home.golden.net/generator/ (il génère le couple login/password)

Le fichier .htpasswd étant terminé, il suffit de le mettre à ça place (celle définie dans le fichier .htaccess).

 

Prev Article

Related Articles

Liste des codes HTTP retournés par un serveur Web
Voici une liste des codes d’erreurs que peut renvoyer un …

Liste des codes HTTP retournés par un serveur Web






Des Trucs à Web

Des astuces, des ressources, des tutoriels pour votre site
  • Contact
  • Mentions légales
  • Plan du site
Copyright © 2023 Des Trucs à Web

Bloqueur de publicité détecté

Notre site Web est rendu possible en affichant des publicités en ligne à nos visiteurs. Veuillez envisager de nous soutenir en désactivant votre bloqueur de publicités.

Refresh
Nous utilisons des cookies sur notre site Web pour vous offrir l'expérience la plus pertinente en mémorisant vos préférences et vos visites répétées. En cliquant sur "Accepter tout", vous consentez à l'utilisation de TOUS les cookies. Cependant, vous pouvez visiter "Cookies Settings" pour fournir un consentement contrôlé.
Cookie SettingsTout accepter
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Toujours activé
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDuréeDescription
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
Enregistrer & appliquer