Установите безопасный удаленный доступ к серверу Home Assistant с помощью бесплатного дополнения Lets Encrypt
Доступное для систем Windows, macOS и Linux (включая Raspberry Pi), программное обеспечение Home Assistant с открытым исходным кодом выступает в качестве центрального узла для управления всеми вашими умными устройствами для всех ваших потребностей в домашней автоматизации
Если вы хотите получить удаленный доступ к вашему серверу Home Assistant, будь то с помощью DDNS или Cloudflare Tunnel, вы должны зашифровать источник с помощью SSL/TLS сертификата. К счастью, вы можете использовать бесплатное дополнение Lets Encrypt для генерации и настройки SSL/TLS сертификата на Home Assistant и добавления его на ваш сервер
Методы установки SSL/TLS сертификата на Home Assistant
Let’s Encrypt – это популярный способ установки бесплатного SSL/TLS на веб-сайты. Мы также можем использовать Let’s Encrypt для защиты нашего сервера Home Assistant, следуя одному из следующих методов:
Кроме того, метод HTTP-вызова намного длиннее и сложнее. Метод вызова DNS с использованием безопасного туннеля Cloudflare проще в применении и развертывании
Итак, в этом руководстве мы будем использовать Cloudflare и Let ;s Encrypt для защиты нашего экземпляра Home Assistant и удаленного доступа к нему через HTTPS-соединение. Однако, если вы все еще хотите использовать метод DDNS, следуйте официальному руководству по Home Assistant
Необходимые условия для генерации SSL
Для настройки и установки SSL-сертификата на Home Assistant с использованием метода DNS-запроса для защищенного доступа вам понадобится следующее:
После регистрации домена добавьте его в учетную запись Cloudflare и включите опцию HTTPS в настройках SSL/TLS в Cloudflare
На данный момент выберите Flexible. Как только вы развернете SSL-сертификат на сервере Home Assistant с помощью Let ;s Encrypt, вы сможете включить опцию Full для сквозного шифрования
После включения опции HTTPS продолжайте выполнять следующие шаги для установки Let ;s Encrypt и развертывания SSL-сертификата на сервере
Развертывание туннеля Cloudflare
Развернув Cloudflare Tunnel, вы сможете получить удаленный доступ к серверу Home Assistant по HTTPS. Кроме того, это поможет выполнить DNS-запрос для установки SSL-сертификатов на наш сервер Home Assistant. Шаги следующие:
- Перейдите по ссылке дополнения Cloudflared и нажмите Open Link.
- Нажмите Добавить, чтобы добавить хранилище Cloudflared на сервер Home Assistant.
- Теперь найдите и щелкните дополнение Cloudflared.
- Нажмите Установить. Дождитесь завершения установки.
- После установки дополнения Cloudflared перейдите на вкладку Конфигурация.
- Нажмите на три точки в правом верхнем углу и вставьте следующий код.
additional_hosts:
hostnameYourDomainName.com
service: http://HomeAssistantIPAddress:8123
external_hostnameYourDomainName.com - Нажмите кнопку Сохранить.
- Также добавьте следующий код в файл configuration.yaml.
http:
use_x_forwarded_for: true - Сохраните и перезапустите сервер Home Assistant Server.
- После перезапуска запустите дополнение Cloudflared и включите опцию Start on boot для этого дополнения.
- Откройте вкладку Журнал на странице дополнения Cloudflared и скопируйте отображаемый веб-адрес в веб-браузер. Откроется страница Cloudflare.
- Войдите в Cloudflare, используя зарегистрированную учетную запись электронной почты, а затем выберите доменное имя.
- Нажмите кнопку Авторизация.
- Вернитесь в раздел Журнал дополнения Home Assistant Cloudflared и проверьте, успешно ли прошла авторизация. Если да, то будет создан безопасный туннель, чтобы открыть ваш сервер Home Assistant в Интернете через HTTPS. Однако он еще не зашифрован из конца в конец.
Получение API-ключа Cloudflare
API Cloudflare нужен для выполнения DNS-запроса, необходимого для развертывания SSL/TLS-сертификата на сервере Home Assistant. Шаги следующие:
- Войдите в свою учетную запись Cloudflare и перейдите на страницу https://dash.cloudflare.com/profile.
- Нажмите API Tokens.
- Нажмите Создать API-токен, а затем нажмите кнопку Использовать шаблон рядом с опцией Редактировать DNS зоны.
- Выберите опцию Specific Zone и затем выберите имя вашего домена из выпадающего списка в разделе Zone Resources.
- Нажмите Continue to summary и затем нажмите Create Token.
- Скопируйте сгенерированный токен API и сохраните его. Он понадобится вам во время настройки Let ;s Encrypt.
Установите дополнение Let ;s Encrypt
На сервере Home Assistant выполните следующие шаги для установки дополнения Let ;s Encrypt
- Перейдите в раздел Настройки > Дополнения.
- Нажмите кнопку ADD-ON STORE.
- Найдите и нажмите на letsencrypt.
- Нажмите на кнопку INSTALL.
- Пока не запускайте дополнение.
Настройка Let ;s Encrypt
Для установки сертификата на сервер необходимо добавить данные нашего домена и Cloudflare API в конфигурационный файл Let ;s Encrypt. Для этого выполните следующие шаги:
- На странице конфигурации Let ;s Encrypt перейдите на вкладку Configuration.
- Нажмите на три точки в правом верхнем углу и выберите Изменить в YAML.
- В поле Параметры вставьте следующий код. Обязательно замените YourDomainName.com на ваше доменное имя. Также отредактируйте идентификатор электронной почты, электронную почту Cloudflare и API-токен (вы создали их на предыдущих шагах, поэтому вставьте их сюда).
domains: -
'*.YourDomainName.com'
emailYour.Email@gmail.com
keyfileprivkey.pem
certfilefullchain.pem - Нажмите кнопку Сохранить.
Генерирование SSL/TLS-сертификата
После сохранения информации перейдите на вкладку Информация в дополнении Let ;s Encrypt на сервере Home Assistant и нажмите кнопку Начать
Это запустит дополнение Let ;s Encrypt, которое будет использовать информацию, предоставленную вами в конфигурационном файле, для завершения DNS-запроса и установки необходимого SSL/TLS-сертификата на ваш сервер Home Assistant
Это займет некоторое время. Мы настоятельно рекомендуем вам перейти на вкладку Журнал и следить за журналами (постоянно обновлять). Если возникнет какая-либо ошибка, например, неверный API или учетные данные, вы можете исправить ее и снова запустить дополнение Let ;s Encrypt, чтобы завершить установку SSL/TLS-сертификата на сервере Home Assistant
Если все прошло успешно, сертификаты будут сгенерированы и установлены. Бесплатный сертификат будет действителен в течение трех месяцев. По истечении трех месяцев или непосредственно перед окончанием третьего месяца вы можете снова запустить дополнение Let ;s Encrypt, чтобы обновить сертификаты
На этом этапе вы можете войти в свою учетную запись Cloudflare и включить полный режим в разделе SSL/TLS для сквозного шифрования
Поздравляем! Вы успешно сгенерировали и установили сертификат SSL/TLS на ваш сервер Home Assistant
Бесплатный SSL и удаленный доступ
С помощью этого подробного руководства по настройке SSL/TLS-сертификатов на сервере Home Assistant каждый сможет быстро настроить и установить сертификаты и защитить свой экземпляр сервера Home Assistant. С помощью Cloudflare Tunnel ваш экземпляр Home Assistant также будет зашифрован из конца в конец. Это также позволяет получить доступ к серверу Home Assistant и всем вашим устройствам и локальным серверам из любой точки мира
Комментировать