Идем в папку с конфигами HA и копируем компонент:

cd /volume1/@appdata/homeassistant/config

wget https://raw.githubusercontent.com/danielperna84/hass-configurator/master/configurator.py

выставляем права для скаченного файла

chmod 755 configurator.py

Запускаем Hass Configurator для проверки работоспособности:

./configurator.py

Открываем браузер по адресу:

http://ip:3218

Если все ок, то видим следующий интерфейс:

Настраиваем автозапуск конфигуратора

Создадим файл hass-configurator.service:

nano /etc/systemd/system/hass-configurator.service

Вставляем туда следующее и сохраняем:

[Unit]
Description=HASS-Configurator
After=network.target
[Service]
Type=simple
WorkingDirectory=/volume1/@appdata/homeassistant/config
ExecStart=/usr/bin/python /volume1/@appdata/homeassistant/config/configurator.py
Restart=always
[Install]
WantedBy=multi-user.target

Если файл configurator.py вы изначально положили в другое место, то значения «WorkingDirectory» и «ExecStart» необходимо заменить на ваш путь.

Проверяем статус созданного сервиса:

systemctl status hass-configurator.service

Активируем наш сервис и снова проверяем статус:

sudo systemctl --system daemon-reload

sudo systemctl enable hass-configurator.service

sudo systemctl start hass-configurator.service

systemctl status hass-configurator.service

Настроим удобный доступ из меню HA

Теперь добавим для быстрого доступа к компоненту ссылку на левую панель HA и сделаем это сразу в Конфигураторе, не зря же мы его ставили =). Снова идем в браузер:

http://ip малинки:3218

Слева вверху кликаем на иконку папки и кликаем на файл configuration.yaml:

Добавляем в конфиг следующее:

panel_iframe:
configurator:
title: Configurator
icon: mdi:square-edit-outline
url: http://ip:3218


Сохраняем (Кликаем на красную дискетку в правом верхнем углу), идем в HA — Настройки — Общие, кликаем по кнопке «Проверить конфигурацию» и, если ошибок нет, перезагружаем HA (на этой же странице внизу Управление сервером — Перезагрузить). После перезагрузки кликаем на новый пункт «Configurator«.

Настроим безопасность

Для начала укажем пароль для api Home Assistant (Он добавит дополнительных функций конфигуратуру). Идем в файл configuration.yaml, добавляем и сохраняем:

http: api_password: !secret http_api_password

Придумываем пароль, указываем его в файле secrets.yaml и сохраняем: 

#http: http_api_password: пароль

Идем в файл configurator.py, правим следующие строки и сохраняем:

BASEPATH = "/volume1/@appdata/homeassistant/config"
HASS_API = "http://ip:8123/api/"
HASS_API_PASSWORD = "Указываем ранее придуманный пароль для API"
USERNAME = "Придумываем логин для входа в конфигуратор"
PASSWORD = "Придумываем пароль для входа в конфигуратор"

Если вы положили файл configurator.py в другую директорию, то в «BASEPATH» указываем ее. 

Теперь перезагружаем малину чтобы проверить, что все работает корректно, идем в терминал и указываем команду на перезагрузку:

sudo reboot

После перезагрузки снова кликаем в HA по пункту Configurator и видим предложение ввести наш логин и пароль.

Вводим и попадаем в конфигуратор. Теперь можно править конфиги HA не выходя из интерфейса Home Assistant.

Маленький бонус

Т.к. ранее мы создали и указали api пароль, то теперь мы можем перезагружать, например, автоматизации или сам HA прямо из интерфейса HASS Configurator. Для этого кликаем на шестеренку в правом верхнем углу и кликаем на соответствующий пункт:

Что еще можно настроить по безопасности

На самом деле настройки в файле configurator.py позволяют сделать более тонкую, с точки зрения безопасности, настройку. Рассмотрим еще парочку наиболее важных параметров:

ENFORCE_BASEPATH — Позволяет зафиксировать директорию для показа, чтобы при помощи HASS Configurator нельзя было попасть в другие папки директории малины. Например, если мы не хотим чтобы была возможность посмотреть файлы вне директории конфигов HA, то прописываем следующее значение вместо «False»:

ENFORCE_BASEPATH = «/volume1/@appdata/homeassistant/config«

IGNORE_PATTERN — Позволяет скрыть из интерфейса HASS Configurator файлы (как по названию с расширением так и маской по расширению) и папки. Например, если мы не хотим чтобы была возможность посмотреть файлы с расширениями.log (Спрячем логи),.py (Скроем в том числе и configurator.py чтобы нельзя было поправить настройки и посмотреть логины/пароли без нашего ведома), файл secrets.yaml (по той же причине) и папку tts (просто для примера), то прописываем следующее вместо пустого значения «[]»:

IGNORE_PATTERN = [«*.log», «*.py», «secrets.yaml», «tts»]

Важно! Для применения внесенных изменений необходима перезагрузка.


0 комментариев

Добавить комментарий

Заполнитель аватара

Ваш адрес email не будет опубликован. Обязательные поля помечены *