Размещение какой-либо формы проверки пароля на сайте может быть важной частью процесса предоставления контента только для аккредитованных пользователей. Но как можно проверить эти данные для входа и где они хранятся? Ответ: с помощью файла .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…