Месяц SEO-оптимизации и технической поддержки в подарок

Настройка HTTP Basic Auth в трех словах

Настройка HTTP Basic Auth в трех словах

Базовая авторизация HTTP  - один из самых простых методов закрытия доступа к вашему веб-сайту. Все что вам нужно - это возможность внести изменения в .htaccess вашего сайта, либо напрямую в настройки Apache.


вы кто такие.jpg


Что это такое и как работает?

HTTP авторизация - это механизм защиты данных на вашем сервере. При данном методе авторизации только пользователи имеющие логин и пароль смогут получить доступ к информации, хранящейся на вашем сайте. Доступов можно создать бесконечно множество, а по логам сервера (если такие настроены), можно будет понять кто и когда заходил на ваш сайт (чтобы в случае чего выяснить, кто именно начал барагозить ( https://otvet.mail.ru/question/40434419)).

Базовая аутентификация (basic access authentication) - при использовании данного вида аутентификации имя пользователя и пароль включаются в состав веб-запроса.


Механизм авторизации довольно простой: логин и пароль передаются в заголовке запроса, который отправляет браузер (или который вы формируете руками), либо вы можете его вписать прямо в адресную строку по следующему правилу: http://#ЛОГИН#:#ПАРОЛЬ#@adressayta.ru/. Ниже представлено окно авторизации сайта, закрытого базовой авторизацией . 


auth.png


Когда может понадобиться Basic Auth?

Использовать Basic авторизацию можно в том случае, если доступ к серверу сайту или определенному разделу сайта необходимо скрыть от любознательных глаз. Один из таких случаев: закрытие тестового сервера или сервера разработки. Закрыв тестовый сайт вы предотвратите появление сайта в поисковой выдаче (ведь роботы не смогут индексировать сайт) исключив ошибки дублей и склеивание зеркал, а так же исключите возможность конкурентов подсмотреть за тем, что же такого интересного вы делаете на своем сайте, какие новые фишки вы добавляете, повышая удобство для ваших пользователей. 

Данные с доступами пользователей хранятся на сайте в специальном файле .htpasswd (файлы начинающиеся с точки - скрытые файлы в большинстве файловых систем Unix), который расположен на сервере и заполняется администратором сайта/сервера или вами самим (при использовании файла .htaccess). 

За технической поддержкой веб-сайта, доработками сайта как в дизайне/юзабилити, так и в технических показателях (скорость загрузки, стабильность работы) вы можете обратиться к нам! Ознакомиться с тарифами на техническую поддержку вы можете по ссылке (https://bewave.ru/services/tekhnicheskaya-podderzhka/)! 


Как настроить базовую авторизацию на сайте?

Как уже говорилось выше, закрыть доступ можно не только к какому-то отдельному сайту, но и к его целому серверу или же наоборот, только к одному каталогу. Рассмотрим варианта настроек для серверов с BitrixENV (данные настройки подойдут для большинства серверов, работающих с Apache, то есть исключением будет в большем случае только Microsoft Windows Server). 


Настройка для сайта

Наиболее простым путем закрытия сайта базовой авторизацией будет использование файла .htaccess (если использование данного файла разрешено настройками самого NGINX). 

Для этого нам необходимо выполнить следующие шаги.


  • Шаг 1.Создать файл .htpasswd с доступами пользователей
    Для этого существует множество онлайн сервисов. Мы будем использовать сервис по ссылке ( https://hostingcanada.org/htpasswd-generator/).
    Введите логин пользователя (для примера admin) и пароль в соответствующие поля и нажмите «Create .htpasswd file»
    Сгенерированная строка появится выше - скопируйте ее.
    Создайте файл .htpasswd в корне вашего сайта и вставьте туда полученную в сервисе строку, чтобы получилось что-то вроде следующего. Каждые новые доступы должны начинаться с новой строки!


    данные_аккредитации.png


    Сохраните файл и запомните полный путь до него (можно узнать из консоли с помощью команды pwd). 

  • Шаг 2. Добавьте в файл .htaccess (создайте его в корне сайте, если его еще нет) специальные директивы

    AuthType Basic
    AuthName "Restricted Content"
    AuthUserFile #ПУТЬ ДО ФАЙЛА .htpasswd#
    Require valid-user



    Сохраните изменения.
  • Шаг 3. Готово! Ваш сайт закрыт от индексации и доступ к нему можно получить только по логину и паролю, который вы создали в первом шаге!


Настройка для адреса/каталога

Если же вы не хотите закрывать доступ ко всему сайта, а только к отдельному его каталогу - вы можете создать и разместить файл .htaccess именно в том каталоге, который вы хотите скрыть от посторонних глаз. Все очень просто! 


Настройка для сервера

Рассмотрим вариант закрытия доступа ко всем сайтам расположенным на сервере с помощью изменения настроек APACHE. 

Для того, чтобы закрыть все сайта сервера необходимо выполнить следующие шаги. 


  • Шаг 1. Сгенерировать файл .htpasswd с доступами пользователей, разместить его на сервере и запомнить полный путь до него (например: /home/bitrix/ext_www/.htpasswd).
  • Шаг 2. Добавить в параметры APACHE директиву, закрывающую доступ к директории с сайтами сервера. 

    <Directory /home/bitrix/ext_www/>
    AuthType Basic
    AuthName "Private zone. Only for administrator!"
    AuthUserFile  /home/bitrix/ext_www/.htpasswd
    require valid-user
    </Directory>
  • Шаг 3. Перезагрузите Apache и готово! Все ваши сайты размещенные внутри папки /home/bitrix/ext_www/ будут закрыты базовой авторизацией.


Если вы используете Bitrix (BitrixENV или BitrixVM) и хотите закрыть весь сервер авторизацией (допустим, сервер с тестовыми сайтами), то необходимо учесть, что настройки Apache необходимо производить в специальном файле для кастомизации настроек расположенному по пути /etc/httpd/bx/custom/z_bx_custom.conf (подробнее можете прочитать тут).


Как открыть от авторизации один сайта или каталог?

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


Satisfy Any
Allow from all


Минусы базовой авторизации

Недостаток базовой авторизации - ее простота. Данные запроса передаются на сайт напрямую в заголовке, в открытом виде не проходя шифрование, то есть их можно перехватить. Отсюда вывод - для сохранения действительно важной информации базовой авторизации недостаточно! 


Вывод

С помощью описанных выше, довольно простых манипуляций , вы можете настроить базовую авторизацию, ограничив круг лиц имеющих доступ к вашему сайту или его разделу. Закрыть тестовый сервер базовой авторизацией - 5 минут, решать проблемы с утечкой информации или индексацией сайта - можно бесконечно!

Если же вы не уверены, что сможете внести данные настройки самостоятельно, то пишите нам! Наши технические специалисты вам помогут! 




Более подробно о HTTP авторизации вы можете прочитать по ссылке ( https://developer.mozilla.org/ru/docs/Web/HTTP/Authentication).

photo created by wirestock

Наши мессенджеры

Мы на связи

Звоните по телефону

+7 (4832) 32-07-01

Пишите на почту

info@bewave.ru

Мессенджеры

Немного о нас

Работаем на рынке услуг разработки и продвижения веб-сайтов с 2015 года, имеем большой опыт работы.

Десятки реализованных проектов, а что самое главное — довольных клиентов

Офис