Frod

05.10.2026

nginx home assistant ssl proxy

Frod — свобода без границ

Настройка nginx для Home Assistant с SSL-прокси: безопасность и удобство

Если вы пользуетесь умным домом на базе Home Assistant, то наверняка хотите обеспечить его безопасность и доступность по HTTPS. Один из популярных способов — настроить nginx в качестве SSL-прокси. В этой статье я расскажу, как правильно настроить nginx для Home Assistant с SSL, чтобы обеспечить надежную защиту и удобный доступ.

Почему именно nginx и SSL-прокси для Home Assistant?

Home Assistant — мощная платформа для автоматизации умного дома, но по умолчанию она работает по HTTP, что небезопасно в сети. Использование SSL-прокси через nginx позволяет:

  • Защитить ваши данные шифрованием
  • Обеспечить доступ по HTTPS
  • Настроить обратный прокси для удаленного доступа
  • Повысить безопасность за счет сертификатов

Что нужно для начала?

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

  • Рабочий сервер с установленным nginx
  • Домашний сервер с Home Assistant
  • Доменное имя (например, home.yourdomain.ru)
  • SSL-сертификат (можно получить бесплатно через Let's Encrypt)

Шаг 1: Установка nginx

На большинстве Linux-систем установка nginx происходит командой:

sudo apt update
sudo apt install nginx

Проверьте, что nginx работает:

systemctl status nginx

Шаг 2: Получение SSL-сертификата

Рекомендуется использовать Let's Encrypt. Для этого удобно установить certbot:

sudo apt install certbot python3-certbot-nginx

Затем получите сертификат:

sudo certbot --nginx -d home.yourdomain.ru

Следуйте инструкциям и убедитесь, что сертификат успешно установлен.

Шаг 3: Настройка nginx как SSL-прокси

Создайте новый конфигурационный файл для вашего домена, например, /etc/nginx/sites-available/home_assistant:

server {
 listen 80;
 server_name home.yourdomain.ru;

 # Перенаправление на HTTPS
 return 301 https://$host$request_uri;
}

server {
 listen 443 ssl;
 server_name home.yourdomain.ru;

 ssl_certificate /etc/letsencrypt/live/home.yourdomain.ru/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/home.yourdomain.ru/privkey.pem;

 ssl_protocols TLSv1.2 TLSv1.3;
 ssl_prefer_server_ciphers on;
 ssl_ciphers HIGH:!aNULL:!MD5;

 location / {
 proxy_pass http://localhost:8123/; # порт Home Assistant
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;

 # Обеспечить правильную работу WebSocket
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection "upgrade";
 }
}

Активируйте конфигурацию:

sudo ln -s /etc/nginx/sites-available/home_assistant /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Шаг 4: Настройка Home Assistant

В файле configuration.yaml добавьте:

http:
 base_url: https://home.yourdomain.ru
 use_x_forwarded_for: true
 use_http_for_notifications: false
 ssl_certificate: /etc/letsencrypt/live/home.yourdomain.ru/fullchain.pem
 ssl_key: /etc/letsencrypt/live/home.yourdomain.ru/privkey.pem

Перезапустите Home Assistant:

sudo systemctl restart home-assistant@youruser

Итог

Теперь ваш Home Assistant доступен по защищенному протоколу HTTPS через nginx, который выступает в роли SSL-прокси. Этот подход не только повышает безопасность, но и создает удобную точку входа для удаленного управления умным домом.