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

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

    Si vous utilisez votre site Web avec Apache, la sécurisation du site avec un mot de passe est un processus simple. J'ai récemment effectué 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:

    Le fichier .htaccess est vérifié par Apache avant d’afficher les pages Web. Généralement, il est 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. Voici 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 "Veuillez saisir l'utilisateur et le mot de passe" AuthType Basic nécessite un utilisateur valide.

    Quelques explications:

    AuthUserFile: APACHE a besoin de l'emplacement du fichier utilisateur / mot de passe. 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:

    AuthType: Ce champ indique à Apache le type d'authentification utilisé. Dans presque tous les cas, “Basic” est correct (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:

    Requiert l'utilisateur mrgroove groovyguest

    Dans ce cas, seuls les utilisateurs mrgroove et groovyguest seraient autorisés à 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 machine Windows 2003 Server exécutant WordPress:

    É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, j'utilise simplement Notepad ++ ou Windows Notepad pour créer le fichier..

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

    Bien qu'Apache n'exige pas que vous chiffriez 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 situé dans C: \ Program Files \ Apache Group \ Apache2bin) et exécutez l'outil htpasswd.exe pour générer une chaîne Nom d'utilisateur / Mot de passe chiffré MD5. Vous pouvez également utiliser l'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 nom d'utilisateur mot de passe

    Une fois la commande exécutée, l'outil htpasswd.exe générera la chaîne utilisateur 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.

    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 étant 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é:

    Si vous trouvez que le module n'est pas activé, corrigez-le comme indiqué ci-dessus. N'oublie pas 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