Reverse Proxy Home Assistant на Synology (DSM 7)
Настраиваем безопасный доступ к Home Assistant через домен и HTTPS на Synology NAS: reverse proxy, WebSocket и доверенные прокси в configuration.yaml.
В этой инструкции показано, как настроить Reverse Proxy на Synology DSM для Home Assistant, чтобы получить доступ по доменному имени и HTTPS (без порта 8123 в адресе) и при этом сохранить корректную работу WebSocket.
Сценарий из практики: Home Assistant установлен как VM (Generic x86-64) на Synology NAS (DSM 7), но шаги аналогичны и для контейнера/другой установки — главное, чтобы Synology могла достучаться до http://IP_HA:8123.
Требования (до настройки)
- Белый внешний IP или нормальный DDNS.
- Домен и A‑запись на ваш внешний IP.
- Проброс портов на роутере на Synology:
- TCP/80 (для Let’s Encrypt и/или редиректа)
- TCP/443 (для доступа по HTTPS)
- Home Assistant доступен из локальной сети по
http://IP_HA:8123.
Шаг 1. Создать правило Reverse Proxy в Synology DSM
Откройте:
Панель управления → Портал для входа → Дополнительно → Обратный прокси.
Нажмите Создать и добавьте правило (пример через поддомен).
Вариант A (рекомендую): только HTTPS (без отдельного HTTP правила)
Source (вход):
- Protocol:
HTTPS - Hostname:
ha.example.ru(ваш поддомен) - Port:
443
Destination (куда проксируем):
- Protocol:
HTTP - Hostname:
IP_HA(IP виртуалки/контейнера HA в LAN) - Port:
8123
Почему так лучше: наружу отдаём только HTTPS, а внутрь ходим по HTTP в локалке.
Вариант B (если хотите ещё и HTTP): отдельное правило HTTP→HA
Можно добавить отдельное правило HTTP на 80, но безопаснее делать редирект на HTTPS (если ваша схема это поддерживает), либо вообще не публиковать HTTP наружу.


Шаг 2. Включить WebSocket (обязательно)
В созданном правиле откройте вкладку Пользовательский заголовок и добавьте WebSocket-заголовки через “Create → WebSocket”.
Это критично для интерфейса Home Assistant, потому что часть функций и “живые” обновления идут через WebSocket.

Дополнительные настройки оставляете без изменений.
Шаг 3. Получить сертификат Let’s Encrypt и привязать к домену
Откройте:
Панель управления → Безопасность → Сертификат.
- Нажмите Добавить → Получить сертификат в Let’s Encrypt.
- Укажите ваш домен (например
ha.example.ru). - Дождитесь выпуска сертификата.
Далее нажмите Настройки (сопоставление служб и сертификатов) и назначьте сертификат на ваш домен/поддомен, который используется в Reverse Proxy.
Шаг 4. Настройка Home Assistant (trusted_proxies)
Чтобы Home Assistant корректно принимал запросы за reverse proxy, добавьте в configuration.yaml блок http:.
Файл обычно: /config/configuration.yaml
Пример (минимально рабочий):
http:
use_x_forwarded_for: true
trusted_proxies:
- 192.168.88.10 # IP вашей Synology (лучше конкретный IP)
ip_ban_enabled: true
login_attempts_threshold: 5
Примечания:
- Можно указать всю подсеть (например
192.168.88.0/24), но безопаснее — только IP Synology, чтобы не “доверять” всем хостам LAN. ip_ban_enabledиlogin_attempts_thresholdзащищают от перебора паролей.
Перезапустите Home Assistant после изменения конфигурации.
Шаг 5. Проверка
- Откройте в браузере:
https://ha.example.ru - Убедитесь, что:
- страница открывается без порта
8123, - авторизация работает,
- интерфейс не “отваливается” и нет проблем с “живыми” обновлениями (это косвенный признак, что WebSocket работает).
Рекомендации по безопасности (очень желательно)
- Включите 2FA для пользователей Home Assistant перед публикацией в интернет.
- Не открывайте наружу порт 8123 напрямую, используйте только Reverse Proxy.
- Следите за обновлениями DSM и Home Assistant.
FAQ
Нужно ли делать два правила (HTTP и HTTPS)?
Нет. В большинстве случаев достаточно одного HTTPS правила. HTTP имеет смысл только для редиректа или специфичных сценариев.
Что писать в trusted_proxies?
Минимально — IP Synology NAS, которая является reverse proxy. Если у вас впереди ещё один прокси (например, отдельный nginx), тогда доверяйте только его, а не всей подсети.