Comment protéger par mot de passe un site Web Apache à l'aide de .htaccess

Si vous utilisez votre site Web avec Apache,Sécuriser le site avec un mot de passe est un processus simple. J'ai récemment parcouru le processus sur une machine Windows (la majorité des photos ci-dessous), mais les étapes sont quasiment les mêmes pour les sites Windows ou Linux Apache.

Étape 1: Configurez votre fichier .htaccess

Tout le travail sera fait en utilisant votre fichier .htaccess. Vous pouvez trouver ce fichier à la racine de la plupart des sites Web Apache.

La capture d'écran a été prise à partir d'une installation vanilla de WordPress s'exécutant sur Windows 2003 Server:

image

Le fichier .htaccess est vérifié par Apache avant d’afficher les pages Web. Il est généralement utilisé pour ReWrites ou ReDirect, mais vous pouvez également l’utiliser pour tirer parti des fonctionnalités de sécurité intégrées d’Apache.

La première étape consiste donc à ajouter quelques paramètres au fichier. Vous trouverez ci-dessous un exemple de fichier .htaccess. (CONSEIL: j'utilise notepad ++ pour éditer la plupart des fichiers PHP et les fichiers associés)

AuthUserFile c:apachesecurity.htpasswd
AuthName "Please Enter User & PW"
AuthType Basic
require valid-user

Quelques explications:

AuthUserFile: APACHE a besoin de l'emplacement de l'utilisateur / mot de passefichier. Entrez simplement le chemin d'accès complet à votre fichier de base de données de mots de passe, comme indiqué ci-dessus. L'exemple ci-dessus est tiré de ma boîte Windows. Si vous utilisez Linux, ce serait quelque chose comme: AuthUserFile /full/path/to/.htpasswd

AuthName: Ce champ définit le titre et le texte de la boîte contextuelle qui demandera le nom d'utilisateur et le nom d'utilisateur. Vous pouvez faire ce que vous voulez. Voici un exemple sur ma boîte de test:

image

AuthType: Ce champ indique à Apache le type d'authentification utilisé. Dans presque tous les cas, «Basic» convient parfaitement (et le plus courant).

Demander un utilisateur valide: Cette dernière commande indique à Apache que l’OMS est autorisée. En utilisant "utilisateur valide“, vous dites à Apache que TOUT LE MONDE est autorisé à s'authentifier s'il possède un nom d'utilisateur et un mot de passe valides.

Si vous préférez être plus exact (e), vous pouvez spécifier un utilisateur ou des utilisateurs spécifiques. Cette commande ressemblerait à ceci:

Require user mrgroove groovyguest

Dans ce cas, seuls les utilisateurs mrgroove etgroovyguest serait autorisé à entrer dans la page / le répertoire que vous protégez (après avoir fourni le nom d'utilisateur et le mot de passe correct, bien sûr). Tous les autres utilisateurs (y compris les utilisateurs valides) se verront refuser l'accès. Si vous souhaitez autoriser plus d'utilisateurs, séparez-les simplement par des espaces.

Donc, maintenant que tous les paramètres de configuration sont définis, voici à quoi devrait ressembler votre fichier .htaccess terminé:

La capture est prise à partir d’une boîte Windows 2003 Server exécutant WordPress:

groovyPost .htaccess

Étape 2: Créez le fichier .htpasswd

La création du fichier .htpasswd est un processus simple. Le fichier n'est rien d'autre qu'un fichier texte contenant une liste d'utilisateurs et leurs mots de passe cryptés. Chaque chaîne utilisateur doit être séparée sur sa ligne. Personnellement, je viens d'utiliser Notepad ++ ou Windows Notepad pour créer le fichier.

Ci-dessous, un exemple de fichier .htpasswd avec deux utilisateurs:

image

Bien qu'Apache ne vous "oblige" pas à chiffrer les mots de passe, il s'agit d'un processus simple pour les systèmes Windows et Linux.

les fenêtres

Accédez à votre dossier Apache BIN (généralement trouvédans C: Program FilesApache GroupApache2bin) et exécutez l’outil htpasswd.exe pour générer une chaîne de nom d’utilisateur / mot de passe chiffré MD5. Vous pouvez également utiliser cet outil pour créer le fichier .htpasswd pour vous (tout ce qui fonctionne ...). Pour tous les détails, exécutez simplement le commutateur d’aide à partir de la ligne de commande (htpasswd.exe /?)

Cependant, dans presque tous les cas, exécutez simplement la commande suivante:

htpasswd -nb username password

Une fois la commande exécutée, l’outil htpasswd.exe générera la chaîne User avec le mot de passe crypté.

La capture d'écran ci-dessous est un exemple d'exécution de l'outil htpasswd.exe sur Windows 2003 Server.

image

Une fois que vous avez la chaîne utilisateur, copiez-la dans votre fichier .htpasswd.

Linux:

Goto: http://railpix.railfan.net/pwdonly.html pour créer vos chaînes d’utilisateur avec des mots de passe cryptés. Processus très simple.

Étape 3: Vérifiez qu'Apache est configuré correctement * facultatif

Par défaut, Apache a activé les modules appropriés. Cela dit, il n’est jamais mauvais d’être un peu proactif et c’est un «contrôle» rapide.

Ouvrez votre fichier Apache httpd.conf et vérifiez que le module AUTH est activé:

image

Si vous trouvez que le module n’est pas activé, corrigez-le comme indiqué ci-dessus. Ne pas oublier; vous devez redémarrer Apache pour que les modifications apportées à votre httpd.conf prennent effet.

Cela devrai prendre soin de ça. Terminé.

Mots clés: apache, cryptage, htaccess, sécurité, windows

0

Articles similaires

laissez un commentaire