Размещение какой-либо формы проверки пароля на сайте может быть важной частью процесса предоставления контента только для аккредитованных пользователей. Но как можно проверить эти данные для входа и где они хранятся? Ответ: с помощью файла .htpasswd. А что такое .htpasswd?
Именно этому вы научитесь в этой статье, особенно если дочитаете её до конца.
Что такое .htpasswd?
Файл .htpasswd обычно используется для защиты папки, файла или даже всего сайта с помощью пароля через аутентификацию по протоколу HTTP. Обычно это реализуется с помощью настроек в файле .htaccess.
Данные пользователей часто хранятся в отдельных строках, каждая из которых содержит имя пользователя и пароль, разделённые двоеточием (:). Имена пользователей обычно хранятся в открытом виде, а пароли в зашифрованном виде, используя хэш.
Чаще всего для шифрования применяется MD5; в Linux, однако, оно может базироваться на функции crypt(). Имя файла паролей можно выбрать любое, но эксперты советуют этого избегать. Дело в том, что Apache по умолчанию настроен использовать только .htpasswd, а файлы, начинающиеся с точки (т. н. “dot-файлы”), обычно являются скрытыми.
Как создать файл .htpasswd?
Файл .htpasswd можно создать несколькими способами, в зависимости от вашей платформы. Самый простой способ воспользоваться любым из множества сайтов для создания .htpasswd и следовать всем инструкциям для генерации необходимых записей в файле .htpasswd.
Особенно рекомендуется использовать генератор .htpasswd на сайте htaccesstools.com, так как он простой и точный. Посмотрите генератор Htpasswd.
Когда вы заходите на сайт htaccesstools.com, убедитесь, что у вас уже есть выбранное имя пользователя. Например, вы выбираете имя пользователя: steve123.
Далее вам нужно будет войти на ваш сервер через SSH. Как это сделать, будет рассмотрено в следующем разделе, хотя этот шаг можно пропустить, если вы уже знакомы с процессом.
И, наконец, выполните команду ниже (вам потребуется использовать sudo, если вы выполняете команду не от имени root-пользователя):
htpasswd –c /home/usernamehere/.htpasswd steve123
После этого вас попросят ввести пароль для этого пользователя и подтвердить его.
Но что если вы хотите добавить больше пользователей? Вы можете сделать это с помощью следующей команды:
Если проверить содержимое файла .htpasswd, вы увидите что-то вроде:
Имея это в виду, никто не запретит вам создать скрипт, который автоматически добавляет авторизации или учетные данные пользователя в файл .htpasswd сразу после его создания или утверждения.
Как подключиться к серверу через SSH
Если вы не знакомы с тем, как подключаться к вашему Dedicated, Cloud или VPS серверу через SSH, этот раздел покажет вам, как это сделать. Краткое руководство будет разделено на две части: первая для пользователей Windows, вторая для пользователей Mac и Linux.
Для Windows
Шаг 1: Установите SSH-клиент на ваш компьютер. Для Windows используйте PuTTY, для Mac и Linux встроенный Terminal.
Шаг 2: Проверьте вашу электронную почту на наличие «приветственного» письма, в котором также будет указан ваш dedicated IP. Введите этот IP в поле Host Name. Если ваш сервер уже связан с доменом, можно использовать и его.
Шаг 3: Убедитесь, что порт установлен на ваш SSH-порт, по умолчанию это 22. Но порт может отличаться, если вы меняли его вручную.
Шаг 4: Как только все необходимые данные введены в соответствующие поля, нажмите кнопку Open, чтобы начать SSH-сессию.
Откроется новое окно, которое запросит ваше имя пользователя и пароль. Обратите внимание: поле для пароля не будет показывать вводимые символы это важная мера безопасности.
Нажмите Enter для аутентификации после ввода пароля.
Обратите внимание: если вы сохранили приватный SSH-ключ на вашем компьютере и ещё не настроили его через Cloud Control, чтобы он добавлялся автоматически при подключении к новой инстанции, тогда потребуется загрузить созданную сессию:
- Перейдите в SSH > Auth > Обзор и укажите путь к вашему приватному ключу на компьютере.
- Затем вернитесь в Session и сохраните настройки, чтобы ключ загружался автоматически.
И всё! Теперь вы подключены к серверу через SSH.
Подключение с Linux и Mac
Если вы хотите подключиться к серверу через SSH с компьютера под управлением Linux или Mac, откройте терминал на вашем устройстве и используйте следующую команду:
Например:
Это откроет SSH-соединение, после чего вам будет предложено ввести пароль. Конечно, если у вас возникнут сложности, вы можете обратиться за помощью к специалисту по IT.
Как заблокировать Google bot для noindex
Вы пытаетесь помешать Google bot индексировать поддомен или конкретную веб-страницу в результатах поиска? Знаете ли вы, что с помощью .htpasswd можно заблокировать Google bot для noindex? Если вы не знали, то сейчас вы узнаете, как это сделать.
Что такое «noindex»
«Noindex» это директива, которая сообщает поисковым роботам, таким как Googlebot, не включать определённую веб-страницу в результаты поиска.
Индексация это процесс, с помощью которого Google сканирует интернет в поисках нового и релевантного контента. Найденный контент добавляется в библиотеку поисковой системы, чтобы пользователи могли его просматривать.
Обратите внимание: существует большая разница между «noindex» и «nofollow»:
- Noindex обычно применяется на уровне страницы и сообщает поисковому роботу не индексировать страницу и не показывать её в результатах поиска.
- Nofollow применяется на уровне ссылки или страницы и сообщает поисковому роботу не переходить по ссылкам и не обнаруживать их.
Проще говоря, тег «noindex» удаляет страницу из поискового индекса, а атрибут «nofollow» удаляет ссылку из графа ссылок поисковой системы.
Теперь, когда вы знаете разницу между «noindex» и «nofollow», следующим шагом будет изучение того, как заблокировать Google bot для noindex.
Существует несколько способов предотвратить индексацию поддоменов Google, включая:
- добавление пароля с помощью файла .htpasswd
- запрет для роботов через файл robots.txt
- добавление директивы noindex на каждую страницу поддомена
Сосредоточимся на первом методе: добавление пароля с помощью файла .htpasswd.
Если ваши поддомены используются только для целей разработки, оптимальным вариантом будет добавить файл .htpasswd в корневую директорию поддомена. Стена авторизации не позволит роботам индексировать контент на поддомене, а также защитит от несанкционированного доступа пользователей.
Примеры таких поддоменов:
- staging.domain.com
- qa.domain.com
- testing.domain.com и др.
Настройка аутентификации с паролем для сайта не должна быть слишком сложной.
Теперь, когда вы знаете ответ на вопрос «Что такое .htpasswd?», вы сможете использовать его правильно.
Вы также можете прочитать: Как технологии развивались во время Covid-19…
