Для чего это нужно

К примеру, Вы хотите разместить статический билд клиентского Web приложения на некоем ресурсе и хотите закрыть доступ к этой странице всем, кроме тех кто введет логин и пароль. Такой инстанс можно назвать Staging и он явно должен быть не для всех.

Шаг 1. Конфигурация

cd /etc/nginx/conf.d/
sudo nano 50-pravosleva.pro.conf

Изменение части конфигурации

location /dist.project-1 {
  index index.html;
  root /root/projects; # NOTE: В моем случае, это директория с билдами проектов
  autoindex on;

  auth_basic "Administrator’s Area";
  auth_basic_user_file /var/www/html/.htpasswd;
}

Подробнее о настройке инфраструктуры, которую я использую для простого примера

Шаг 2. Файл-хранилище хэшей паролей

В моем случае потребовалось это:

apt install apache2-utils

Как проверить:

htpasswd -v

Где-нибудь в каталоге создаем файл-хранилище

cd /var/www/html
htpasswd -c ./.htpasswd tester

Далее программа спросит пароль и его подтверждение

Шаг 3. Перезапуск Web сервера NGINX

sudo systemctl reload nginx