Nginx Proxy Manager (NPM) — это веб-интерфейс поверх NGINX, разработанный для упрощения и доступности настройки обратного прокси. Он идеально подходит как для новичков, так и для опытных пользователей, которые хотят управлять веб-сервисами, SSL-сертификатами и маршрутизацией без необходимости погружаться в сложные конфигурационные файлы Nginx.

Для чего нужен Nginx Proxy Manager?

Когда вы запускаете несколько веб-приложений или сервисов на одном сервере (или на разных машинах), легко запутаться в портах и поддоменах. Nginx Proxy Manager (NPM) решает эту проблему, выступая в роли обратного прокси — он перенаправляет трафик туда, куда нужно, при этом предоставляя безопасный и удобный интерфейс.

Примеры использования:

  • Проксирование таких сервисов, как Home Assistant, Nextcloud, Jellyfin, WordPress и других
  • Автоматическое управление SSL-сертификатами
  • Маршрутизация трафика по домену, поддомену или порту
  • Предоставление HTTPS-доступа к локальным или внутренним сервисам
  • Ограничение доступа к сервисам с помощью HTTP-аутентификации

Ключевые возможности:

  • Интуитивно понятный веб-интерфейс — управляйте всеми прокси, сертификатами и настройками через панель без необходимости править конфигурации NGINX вручную
  • Интеграция с Let’s Encrypt — автоматическое и бесплатное получение и продление SSL-сертификатов
  • Поддержка Wildcard SSL (через DNS challenge)
  • Управление прокси-хостами — легко перенаправляйте трафик на другие порты или серверы
  • Перенаправление HTTP и TCP-потоки — простое создание правил для HTTP и TCP
  • HTTP Basic Auth — защита маршрутов или сервисов логином и паролем
  • Журналы доступа и ошибок — просматривайте логи прямо через панель управления

Как легко установить Nginx Proxy Manager

Примечание: для примера будем использовать VPS с предустановленными Docker и Docker Compose.

Создайте каталог и поместите в него файл конфигурации:

mkdir npm
cd npm
nano docker-compose.yml

Вставьте следующий код и сохраните файл:

version: '3'
services:
 app:
   image: 'jc21/nginx-proxy-manager:latest'
   restart: unless-stopped
   ports:
     - '80:80'
     - '81:81'
     - '443:443'
   volumes:
     - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Запустите контейнер с помощью команды:

docker-compose up -d

После запуска контейнера панель управления Nginx Proxy Manager будет доступна:
Перейдите по адресу: http://IP-вашего-сервера:81

Войдите в админ-панель с начальными учётными данными:
Email: admin@example.com
Пароль: changeme

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

Интерфейс Nginx Proxy Manager:

Как установить NPM через Portainer и получить к нему доступ

При заказе услуги вы можете выбрать вариант с предустановленным Portainer — это значительно упростит управление и запуск Docker-контейнеров.

Если Portainer ещё не установлен, следуйте нашему руководству со скриптом установки Unihost. Этот скрипт не только развёртывает Portainer, но и добавляет набор готовых шаблонов от нашей команды, включая NPM (Nginx Proxy Manager).

Чтобы установить NPM, просто выберите соответствующую конфигурацию из списка и следуйте инструкциям.

Откройте Portainer:

На главном экране нажмите “Local”.

В левом меню выберите «Templates».
Найдите шаблон «Nginx Proxy Manager» и нажмите на него.

Заполните форму.
Нажмите «Deploy the stack» и дождитесь завершения установки.

В Portainer откройте «Stacks» — появится ваш стек NPM.

Перейдите к:

http://<your-server-IP>:81

Вы получите доступ к NPM.

Войдите в систему, используя имя пользователя и пароль, заданные вами при развертывании.

Заключение

Nginx Proxy Manager — это аналог NGINX для тех, кто не хочет возиться с конфигурационными файлами NGINX. Он упрощает настройку обратных прокси-серверов, SSL и маршрутизации — и всё это с помощью удобного интерфейса.

Он не заменит самописный NGINX для корпоративного использования, но для 90% пользователей его более чем достаточно.