🔒 Безопасность

Создание SSL-сертификата

Полное руководство по созданию и настройке SSL сертификата для HomeAssistant. Защитите свой умный дом с безопасным соединением HTTPS.

⚠️ Критически важно для безопасности!

SSL сертификат шифрует все данные между вашим устройством и HomeAssistant. Без SSL ваши пароли, данные и управление передаются открытым текстом! Это делает ваш умный дом уязвимым для перехвата данных.

🎯 Зачем нужен SSL?

SSL (Secure Sockets Layer) — это технология безопасности, которая создаёт зашифрованное соединение между браузером и сервером. Это особенно важно для HomeAssistant, так как вы управляете своим умным домом.

Без SSL (HTTP) С SSL (HTTPS)
❌ Данные передаются открыто ✅ Все данные зашифрованы
❌ Пароли видны в сети ✅ Пароли защищены
❌ Возможен перехват данных ✅ Защита от Man-in-the-middle
❌ Браузер предупреждает ✅ Зелёный замок в адресной строке
❌ Нет удалённого доступа ✅ Безопасный доступ из интернета

📋 Методы получения SSL

Существует несколько способов получить SSL сертификат для HomeAssistant. Выберите тот, который лучше подходит для ваших нужд:

  • Let's Encrypt + DuckDNS — бесплатно, автообновление (рекомендуется для удалённого доступа)
  • Nabu Casa — платно ($6.5/мес), без настройки (официальное облачное решение)
  • Самоподписанный сертификат — для локальной сети (бесплатно)
  • Cloudflare Tunnel — бесплатно, через туннель (альернатива DuckDNS)

🔧 Самоподписанный SSL сертификат

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

⚠️ Только для локальной сети!

Самоподписанные сертификаты подходят только для доступа внутри домашней сети. Для безопасного удалённого доступа используйте Let's Encrypt + DuckDNS или Nabu Casa.

Шаги создания сертификата:

Установите Terminal & SSH

Если дополнение ещё не установлено:

  1. Откройте HomeAssistant
  2. Перейдите в Настройки → Дополнения → Магазин дополнений
  3. Найдите Terminal & SSH
  4. Нажмите Установить
  5. После установки нажмите Запустить
  6. Откройте терминал, нажав Открыть веб-интерфейс

Сгенерируйте сертификат

В терминале выполните следующую команду:

cd /ssl
openssl req -x509 -newkey rsa:4096 -keyout privkey.pem -out fullchain.pem -days 365 -nodes

После выполнения команды вам нужно будет заполнить информацию:

  • Country Name (2 letter code): RU
  • State or Province Name: ваш регион (можно пропустить — Enter)
  • Locality Name: ваш город (можно пропустить)
  • Organization Name: HomeAssistant (можно пропустить)
  • Common Name (CN): homeassistant.local или IP-адрес вашего HA
  • Остальные поля можно пропустить (нажмите Enter)

Настройте configuration.yaml

Откройте файл configuration.yaml через File Editor или Samba share:

http:
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem

Сохраните файл и перезапустите HomeAssistant:

  • Через интерфейс: Настройки → Система → Перезагрузить
  • Или через терминал: hassio restart

Добавьте исключение в браузере

При первом открытии https://IP:8123 браузер покажет предупреждение о безопасности:

  • В Chrome: нажмите "Дополнительно" → "Перейти на сайт (небезопасно)"
  • В Firefox: "Дополнительно" → "Примите риск и продолжите"
  • В Safari: "Показать подробности" → "Посетить этот сайт"

Это нормально для самоподписанных сертификатов! Предупреждение появляется, потому что сертификат не подтверждён центром сертификации.

✅ Готово!

Теперь HomeAssistant доступен по HTTPS с зелёным замком (после добавления исключения). Все данные шифруются при передаче.

🌟 Метод 2: Let's Encrypt + DuckDNS (Рекомендуется)

Для безопасного удалённого доступа рекомендуется использовать бесплатные доверенные сертификаты от Let's Encrypt через DuckDNS.

✅ Преимущества:

  • Полностью бесплатно
  • Автоматическое обновление
  • Доверенный сертификат (без предупреждений браузера)
  • Работает везде

Что понадобится:

  • Аккаунт на DuckDNS.org (бесплатно)
  • Открытый порт 443 на роутере
  • Статический или динамический IP

Быстрый старт:

  1. Зарегистрируйтесь на DuckDNS — создайте субдомен (например, myhome.duckdns.org)
  2. Установите дополнение DuckDNS — в HomeAssistant: Настройки → Дополнения → DuckDNS
  3. Настройте DuckDNS — добавьте токен и домен в конфигурацию
  4. Пробросьте порт 443 — в настройках роутера откройте порт 443 на IP HomeAssistant
  5. Готово! — доступ по адресу https://myhome.duckdns.org

Подробная инструкция по настройке Let's Encrypt + DuckDNS доступна в отдельном руководстве.

💰 Метод 3: Nabu Casa Cloud

Официальный платный сервис от создателей Home Assistant. Стоимость: $6.50/месяц или $65/год.

ℹ️ Home Assistant Cloud (Nabu Casa)

Идеальное решение для тех, кто не хочет настраивать сетевое оборудование. Всё работает из коробки.

Преимущества:

  • ✅ Нулевая настройка — всё автоматически
  • ✅ Не нужен проброс портов
  • ✅ Работает за любым роутером/файрволом
  • ✅ Включает интеграцию с Alexa и Google Assistant
  • ✅ Поддерживает разработку Home Assistant

Как подключить:

  1. Откройте Настройки → Home Assistant Cloud
  2. Нажмите Начать
  3. Создайте аккаунт
  4. Активируйте подписку (пробный период 30 дней)
  5. Готово! Доступ по адресу https://ваш-id.ui.nabu.casa

📊 Сравнение методов

Метод Стоимость Сложность Удалённый доступ Лучше для
Самоподписанный Бесплатно Лёгкая ❌ Нет Локальная сеть
Let's Encrypt + DuckDNS Бесплатно Средняя ✅ Да Удалённый доступ
Nabu Casa $6.5/мес Лёгкая ✅ Да Максимальное удобство
Cloudflare Tunnel Бесплатно Средняя ✅ Да Продвинутые пользователи

🔍 Проверка SSL

Убедитесь, что SSL работает правильно:

  • Зелёный замок 🔒 в адресной строке браузера
  • https:// в адресе (не http://)
  • Нет предупреждений о безопасности (для Let's Encrypt и Nabu Casa)
  • Срок действия — проверьте в свойствах сертификата

Тест SSL сертификата:

Откройте SSL Labs и проверьте ваш домен для получения детального отчёта о безопасности.

🔧 Решение проблем

Браузер показывает ошибку сертификата

Причины:

  • Сертификат не доверенный (самоподписанный) — нормально для локальной сети
  • Домен не совпадает с сертификатом — проверьте конфигурацию
  • Срок действия истек — обновите сертификат
  • Неправильные пути к файлам — проверьте configuration.yaml

DuckDNS не работает

Проверьте:

  • Правильность токена
  • Дополнение запущено
  • Логи на наличие ошибок
  • Домен правильно настроен

Не открывается снаружи

Проверьте:

  • Порт 443 открыт на роутере
  • Проброс портов настроен правильно
  • Файервол не блокирует
  • DuckDNS обновляет IP корректно

🎯 Лучшие практики безопасности

✅ Рекомендации по безопасности:

  • Используйте SSL везде — даже в локальной сети
  • Никогда не открывайте HTTP — только HTTPS (порт 443)
  • Сильные пароли — для всех учётных записей
  • Двухфакторная аутентификация — включите в настройках Home Assistant
  • Следите за обновлениями — сертификат обновляется автоматически (Let's Encrypt)
  • Ограничьте доступ — используйте fail2ban для защиты от брутфорса

🎉 Поздравляем!

Теперь ваш HomeAssistant защищён SSL сертификатом. Все данные передаются в зашифрованном виде, и вы можете безопасно получать доступ к системе из любой точки мира!