>_ IzzyLab

Практическое задание

Закрой /admin базовой авторизацией

средне

Админка на http://localhost/admin/ открыта всему миру. Закрой её HTTP basic auth: пользователь admin, пароль izzylab. Остальной сайт должен остаться публичным.

Что потренируешь:
  • nginx
  • http basic auth
  • htpasswd
  • location
  • 401

Разбор темы

HTTP Basic Auth — простейший механизм: сервер отвечает 401, пока клиент не пришлёт логин и пароль в заголовке. Пароли хранятся не в открытом виде, а в htpasswd-файле как логин плюс хеш, который создаёт одноимённая утилита. В nginx защита вешается точечно на конкретный блок location через директивы auth_basic и auth_basic_user_file, поэтому можно закрыть только один путь, оставив остальной сайт публичным.

Что проверяется

  1. /admin/ требует пароль
  2. креды admin/izzylab открывают /admin/
  3. публичная страница доступна без пароля

Как это выглядит