Pugofka Logo

Pugofka / Tools / Генераторы

Генератор htpasswd: закрыть сайт паролем за минуту

Создайте .htpasswd и готовые настройки Basic Auth для nginx или Apache. Пароль обрабатывается только в браузере.

Пароль обрабатывается только в браузере. Перед добавлением строки сохраните его в менеджере паролей.

Формат хеша

Как закрыть сайт паролем в nginx

Введите логин и пароль, добавьте строку и скачайте файл .htpasswd. Перенесите его на сервер в каталог, который не раздаётся посетителям. В готовом сниппете замените путь /etc/nginx/.htpasswd на фактический абсолютный путь к файлу.

Директивы auth_basic и auth_basic_user_file поместите в нужный блок server или location. Так можно закрыть весь тестовый сайт или только отдельный раздел. Проверьте конфигурацию командой nginx -t, затем примените её без остановки сервера. Откройте защищённый URL в приватном окне: браузер должен запросить учётные данные.

Для nginx в разных системах доступна разная реализация crypt(). APR1 обычно работает сразу; поддержку bcrypt лучше подтвердить на своём сервере до замены действующего файла.

Как закрыть сайт паролем в Apache (.htaccess)

Скопируйте блок для Apache в .htaccess каталога, который нужно защитить. Укажите в AuthUserFile абсолютный путь к созданному .htpasswd. Файл с хешами держите вне каталога, открытого из браузера. Директива Require valid-user разрешит вход любому пользователю из файла.

Правила из .htaccess действуют только если сервер разрешает их через AllowOverride. Если настройка запрещена, перенесите тот же блок в конфигурацию виртуального хоста и перезагрузите Apache после проверки конфигурации. При добавлении второго пользователя не заменяйте файл одной строкой: скачайте полный файл с обеими строками.

Какой формат хеша выбрать

ФорматApacheNginx
APR1-MD5ПоддерживаетсяПоддерживается из коробки
bcrypt, cost 10Apache 2.4+Зависит от системной libcrypt

APR1 использует MD5 и тысячи повторений, но по современным меркам этот алгоритм устарел. Он выбран по умолчанию из-за совместимости: для кратковременной защиты тестового окружения это практичный вариант, если пароль уникален и доступ идёт только через HTTPS. Для долгоживущего доступа лучше bcrypt, когда обе стороны его поддерживают.

Хеш в файле не заменяет HTTPS. При Basic Auth браузер отправляет логин и пароль в заголовке Authorization, закодированные в Base64. Это кодирование можно обратить; транспорт должен быть защищён TLS.

Безопасно ли генерировать htpasswd онлайн

У многих онлайн-генераторов пароль отправляется на сервер для вычисления хеша. Здесь APR1 и bcrypt выполняются в вашем браузере, файл создаётся там же. Пароль и хеш не отправляются в API Pugofka; это можно проверить во вкладке Network инструментов разработчика. В события Метрики передаётся только название инструмента.

Скачанный файл и скопированный пароль остаются под вашим контролем. Сохраните пароль в менеджере паролей, проверьте права доступа к .htpasswd на сервере и не кладите его в публичную папку или репозиторий. После окончания тестирования удалите временные учётные записи.

Частые вопросы

Что такое Basic Auth?
Простой механизм HTTP-аутентификации: сервер запрашивает логин и пароль перед выдачей защищённой страницы.
Защищает ли Basic Auth без HTTPS?
Нет. Данные передаются в Base64, которое легко декодировать. Используйте Basic Auth только поверх HTTPS.
Как добавить второго пользователя?
Введите второй логин и пароль и нажмите «Добавить строку». Скачайте обновлённый файл: он содержит обе записи.
Можно ли использовать один файл для nginx и Apache?
Да, если выбранный формат хеша поддерживается обоими серверами. APR1 подходит для самого широкого набора конфигураций.
Почему нет старого формата DES crypt?
У него низкая стойкость и ограничения по длине пароля. Генератор предлагает APR1 для совместимости и bcrypt при подтверждённой поддержке сервера.
Отправляется ли пароль на Pugofka?
Нет. Хеширование, копирование и скачивание выполняются в браузере; в Метрику уходит только слаг инструмента.

Нужна помощь с сайтом?

Поможем разобраться с технической задачей и оценить её решение.