---
title: 'Настройка аутентификации паролем с .htpasswd и Nginx  | Zomro'
description: 'Веб-приложения иногда требуют дополнительный уровень защиты на уровне веб-сервера. Настройке аутентификации паролем через веб-сервер Nginx, используя .htpasswd.'
image: 'https://dx86q6oq7ry0e.cloudfront.net/uploads/blog/a48%40server-panel.net/2023/12/15/auth_nginx_q50.jpg'
---

![opened image]()

  * [Zomro](https://zomro.com/rus/)
  * [FAQ](https://zomro.com/rus/blog/faq/)
  * Настройка Аутентификации Паролем с .htpasswd и Nginx 



# Настройка Аутентификации Паролем с .htpasswd и Nginx

15-12-2023

![Настройка Аутентификации Паролем с .htpasswd и Nginx - 1](https://dx86q6oq7ry0e.cloudfront.net/uploads/blog/a48%40server-panel.net/2023/12/15/auth_nginx_q50.jpg)

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

  
Прежде чем приступить, убедитесь, что у вас есть:

  * Виртуальный сервер (Ubuntu 22.04 предпочтительно) с правами пользователя sudo.
  * Предустановленный веб-сервер Nginx.



## Создание файла с помощью OpenSSL

## 

**Подготовка OpenSSL:**

Убедитесь, что OpenSSL установлен на вашем сервере. Если нет, установите его с помощью команды:
    
    
    sudo apt install openssl

Создание файла**.htpasswd** :

Создайте файл .**htpasswd** в директории **/etc/nginx** , используя команду:  

    
    
    sudo touch /etc/nginx/.htpasswd

**Добавление пользователей:**

Для добавления пользователя используйте команду:
    
    
    sudo sh -c "echo -n 'username:' >> /etc/nginx/.htpasswd"

Замените **'username'** на желаемое имя пользователя.

  
Затем, для добавления зашифрованного пароля, выполните:
    
    
    sudo sh -c "openssl passwd -apr1 >> /etc/nginx/.htpasswd"

Введите пароль при появлении соответствующего запроса.

**Проверка содержимого файла:**

Для просмотра добавленных учетных записей используйте **cat /etc/nginx/.htpasswd**.
    
    
    cat /etc/nginx/.htpasswd

## **Использование apache2-utils**

## 

**Установка apache2-utils:**

Выполните команды:
    
    
    sudo apt update && sudo apt install apache2-utils

**Создание файла .htpasswd:**

Создайте файл, выполнив команду:
    
    
    sudo htpasswd -c /etc/nginx/.htpasswd username

Замените**'username'** на имя пользователя. Флаг**-c** используется только при создании нового файла.

## Добавление дополнительных пользователей:

Для добавления новых пользователей в существующий файл:
    
    
    sudo htpasswd /etc/nginx/.htpasswd new_username

Замените **'new_username'** на новое имя пользователя.

**Просмотр файла:**

Используйте **cat /etc/nginx/.htpasswd** , чтобы увидеть список пользователей и их зашифрованные пароли.
    
    
    cat /etc/nginx/.htpasswd

##  Настройка Аутентификации в Nginx

**Редактирование конфигурационного файла Nginx:**

Откройте файл настроек сервера командой:
    
    
    sudo nano /etc/nginx/sites-enabled/default

Можно выбрать, будет ли аутентификация применяться ко всему серверу или только к определенному местоположению (блок **location**).

**Добавление Директив Аутентификации:**

В разделе, где требуется аутентификация, добавьте следующие строки:
    
    
    auth_basic "Restricted Content";
    auth_basic_user_file /etc/nginx/.htpasswd;

"**Restricted Content** " - это сообщение, которое будет отображаться пользователю при запросе учетных данных.

**Применение Настроек:**

Сохраните изменения и закройте файл.  
Выполните команду **systemctl restart nginx** , чтобы применить изменения в конфигурации.
    
    
    sudo systemctl restart nginx

  


##   
Тестирование и Верификация

## 

**Проверка работы аутентификации:**

Попытка доступа к защищенной части сайта через веб-браузер.  
Ввод учетных данных пользователя.  
Ожидание успешного доступа или сообщения об ошибке при неверных данных.

##   
Заключение

  
Настройка аутентификации паролем на вашем веб-сайте с использованием Nginx и .htpasswd – важный шаг в обеспечении безопасности. Рекомендуется использовать шифрование TLS для дополнительной защиты учетных данных. Это руководство предоставляет подробные инструкции для настройки такой системы, обеспечивая надежную защиту ваших веб-ресурсов.

Похожие статьи

[Как подключить OpenClaw к Telegram-боту](https://zomro.com/rus/blog/faq/697-how-to-connect-openclaw-to-telegram-bot) [Файловый менеджер Midnight Commander](https://zomro.com/rus/blog/faq/207-fajlovyj-menedzher-midnight-commander) [Использование команды host в Linux](https://zomro.com/rus/blog/faq/396-using-the-host-command-in-linux) [HestiaCP: Как выдать SSL сертификат для домена, и установить Wordpress](https://zomro.com/rus/blog/faq/252-hestiacp-kak-vydat-ssl-sertifikat-dlja-domena-i-ustanovit-wordpress) [Сброс пароля в VMware ESXi 6](https://zomro.com/rus/blog/faq/344-reset-password-in-vmware-esxi-6)

[ Premium Cloud VPS от €7.95/мес ](/rus/premium-vps)
