Защита каталога паролей на веб-сервере

    47

    Безопасность каталога
    Защита каталогов, каталоги паролей.

    Чтобы защитить данный каталог паролем, мы помещаем в него два файла:

    • .htaccess: инструкция по авторизации
    • .htpasswd: информация о пользователях и их зашифрованных паролях

    .htaccess / .htpasswd – это простые ASCII-файлы, которые мы можем создать с помощью текстового редактора, такого как простой блокнот или расширенный редактор программирования. Стоит отметить, что это расширения файлов, а не имена.

    Эти файлы должны быть отправлены в режиме ASCII, а не BINARY. Мы даем им CHMOD 644 (файл, используемый сервером, но запрещающий его чтение браузерами)

    Сначала создайте файл .htpasswd, который лучше всего размещать вне общедоступной области.
    Мы можем создать зашифрованный пароль в онлайн-генераторах:
    https://www.htaccesstools.com/htpasswd-generator/
    https://aspirine.org/htpasswd_en.html/
    https://www.narzedzia.cprojekt.pl/htpasswd

    Пример содержимого файла .htpasswd должен выглядеть следующим образом:

    uzytkownik:zdSVMujsXokkE

    Вы можете создать несколько логинов и паролей. Однако помните, что каждая запись должна начинаться с новой строки. Например:

    uzytkownik1:jf05LdXAvmanY
    uzytkownik2:5z0GcRGJ.CitM
    uzytkownik3:rhGPWeaHukQb

    Имея файл с паролем, самое время создать файл .htaccess. Для защиты каталогов введите следующий синтаксис:

    AuthType Basic
    AuthName "My Protected Area"
    AuthUserFile /path/to/.htpasswd
    Require valid-user
    lub
    Require user janek franek iza

    AuthType – тип аутентификации
    AuthName – имя области (имя будет отображаться в окне при вводе логина и пароля)
    AuthUserFile – полный путь сервера к файлу .htpasswd (это не URL, это путь к серверу)
    Требуется – пользователи, авторизованные для просмотра ресурса. Вместо того, чтобы перечислять пользователя отдельно, мы можем использовать параметр valid-user – тогда все пользователи с соответствующими записями в .htpasswd смогут войти в систему.

    Если мы не знаем путь к серверу, мы можем запустить скрипт через веб-браузер в этом каталоге, который отображает путь к каталогу, из которого он запущен.

    Вы также можете использовать очень интересный скрипт, который вы запускаете из каталога, который хотите защитить. После ввода имени пользователя и пароля скрипт автоматически сохранит файлы .htaccess / .htpasswd.

    Полезные сайты с генераторами:
    https://htaccess.lapti.pl/index.php#dol
    https://taat.pl/narzedzia/htpasswd/index.php

    Если вы попытаетесь получить доступ к защищенному каталогу, появится окно авторизации с запросом вашего имени пользователя и пароля:

    Защита файлов
    Вы также можете защитить доступ к файлам извне. После ввода адреса в файл, в браузере отобразится сообщение об отсутствии доступа (запрещено).
    Все, что вам нужно сделать, это создать файл .htaccess, который гласит:

    order allow,deny
    deny from all
    

    Таким образом, вы можете защитить сам файл .htaccess, поместив в него такую ​​запись. Вместо .php файла введите имя файла, который нужно заблокировать.

    # protect the htaccess file
    order allow,deny
    deny from all
    # protect wpconfig.php
    order allow,deny
    deny from all
    

    Вы также можете защитить файл с помощью пароля, как каталоги. Здесь вам понадобятся оба файла, а файл .htaccess имеет синтаксис (возможность защиты нескольких файлов):

    AuthType Basic
    AuthName "My Protected Area"
    AuthUserFile /path/to/.htpasswd
    require valid-user
    require valid-user
    

    Пример защиты файла, отвечающего за вход в WordPress:

    RewriteEngine On
    AuthName "OBSZAR CHRONIONY"
    AuthType Basic
    AuthUserFile /home/xxx/domains/www.pl/.htpasswd/public_html/.htpasswd
    Require valid-user
    ErrorDocument 401 "Unauthorized Access"
    ErrorDocument 403 "Forbidden"