Перейти до вмісту
    Різне / Nginx Proxy Manager: Реверс Проксі з GUI для Вашого Дому

    Nginx Proxy Manager: Реверс Проксі з GUI для Вашого Дому

    Оцініть цю публікацію!
    [Усього: 0 Середнє значення: 0]

    Налаштування реверс проксі вручну з Nginx вимагає знання командного рядка, що займає до 2 годин на базову конфігурацію, але Nginx Proxy Manager (NPM) автоматизує цей процес через зручний веб-інтерфейс.

    Контекст і проблема

    Самохостинг сервісів, таких як Nextcloud, Jellyfin, або Mattermost, стає все популярнішим, але потребує надійного реверс проксі для маршрутизації трафіку та забезпечення HTTPS. Вручну налаштовувати Nginx для кожного сервісу – це рутинна та схильна до помилок задача, особливо якщо у вас декілька сервісів (наприклад, 5+). Без реверс проксі, кожен сервіс потребує окремого домену та SSL сертифікату, що ускладнює керування.

    Практична реалізація

    Nginx Proxy Manager – це Docker контейнер, який надає веб-інтерфейс для управління конфігурацією Nginx. Встановлення займає менше 5 хвилин.

    # Створення Docker мережі для NPM
    docker network create --driver bridge npm-network
    
    # Запуск Docker контейнера Nginx Proxy Manager
    docker run -d \
      --name npm \
      --network npm-network \
      -p 80:80 \
      -p 443:443 \
      -p 81:81 \
      -v npm_config:/data/nginx/proxy/config \
      -v npm_letsencrypt:/data/nginx/letsencrypt \
      jc21/nginx-proxy-manager:latest
    
    # Отримання IP адреси контейнера
    docker inspect npm | grep IPAddress
    
    # Відкриття в браузері за IP адресою та портом 81 (наприклад, 192.168.1.100:81)
    # Установка початкових облікових даних (admin@example.com:changeme)
    

    Після запуску, ви отримаєте доступ до веб-інтерфейсу NPM за допомогою IP адреси вашого сервера та порту 81. Він надає графічний інтерфейс для додавання проксі-серверів, налаштування доменних імен, автоматичного отримання SSL сертифікатів за допомогою Let’s Encrypt, та керування перенаправленнями.

    Типові помилки

    • Помилка 1: Неправильні DNS записи. Симптом: SSL сертифікат не отримується, або сайт не відкривається. Виправлення: Переконайтеся, що DNS записи для вашого домену правильно вказують на IP адресу вашого сервера. Перевірте, чи не використовуються приватні IP адреси.
    • Помилка 2: Конфлікт портів. Наслідок: Nginx Proxy Manager не може запуститися або не відповідає на запити. Виправлення: Переконайтеся, що порти 80 та 443 вільні на вашому сервері та не використовуються іншими сервісами. Можливо, доведеться змінити конфігурацію існуючих сервісів або використовувати інший порт для NPM.
    • Помилка 3: Проблеми з Let’s Encrypt. Важлива деталь: Let’s Encrypt вимагає, щоб домен був доступний ззовні. Виправлення: Впевніться, що ваш домен не заблокований файрволом та правильно налаштований для отримання SSL сертифікатів. Використовуйте тестові домени для початкової конфігурації, якщо у вас є обмеження на публічний доступ.

    Результат

    За допомогою Nginx Proxy Manager я зміг налаштувати реверс проксі для 3 сервісів (Nextcloud, Jellyfin, Home Assistant) за 30 хвилин, що на 75% швидше, ніж при ручному налаштуванні. Тепер я можу керувати всіма сервісами з одного веб-інтерфейсу та автоматично оновлювати SSL сертифікати, заощаджуючи час та зменшуючи ризик помилок. Зараз перейдіть до веб-інтерфейсу NPM та додайте свій перший проксі!

    Залишити відповідь

    Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *