Сама настройка модуля Yandex Home прекрасно описана в базе знаний MajorDoMo, а также на GitHub разработчика majordomo-yandexhome.
Но, данные статьи подразумевают, что необходимо выставить интерфейс управления УД наружу и не затрагивают тему безопасности открытия внешнего доступа. Если "покурить" форум то можно найти решение, как прикрутить базовую авторизацию по логину и паролю для внешних сетей (ссылка на форуме). Но такое решение не лишено недостатков, так как периодически находятся дырки в безопасности MajorDoMo, поэтому как вариант можно выставить наружу не весь интерфейс управления УД, а только необходимый url для авторизации Yandex диалога.
Примечание: тут НЕ рассмотрена настройка ssl сертификатов, пример настройки: Let’s Encrypt на Apache, либо читайте статейку по настройке Nginx Proxy Manager. Рассматривается только вопрос проброса порта для авторизации Yandex диалога
Имеем кнопку Xiaomi WXKG01LM
Задача: в зависимости от количества нажатий отрабатывать различные действия
Реализуем это на примере модуля ZigbeeDev.
Некоторые устройства работающие по mqtt имеют разные топики для получения статуса устройства и управления им, например прошивки Tasmota.
и чтобы в Majordomo можно было получать статус устройства и управлять им, необходимо в модуле MQTT прописать не только топик со статусом, но и топик для управления.
Для этого переходим к настройке нужного топика и в поле Путь: (*) прописываем топик для получения статуса.
А в поле Путь (write): (не обязательно) прописываем топик для управления устройством
Пример:
Обновляем пакеты командой:
opkg update
Устанавливаем пакеты:
opkg install ppp-mod-pptp kmod-nf-nathelper-extra
Добавляем следующий параметр в sysctl:
echo net.netfilter.nf_conntrack_helper=1 >> /etc/sysctl.d/10-default.conf
без него у меня не заработало.
Перезепускаем службу sysctl:
/etc/init.d/sysctl restart
Далее настраиваем через luci
Когда возникла необходимость публиковать несколько разных вебсервисов из локальной сети, искал решение, которое бы позволяло это делать, через простой и удобный интерфейс. В итоге нашел "Nginx Proxy Manager" - web ui для управления хостами в Nginx, а также позволяющий получать/обновлять сертификаты Let's Encrypt.
Ссылка на офсайт: https://nginxproxymanager.com/
Установка может быть произведена несколькими способами:
установка в docker описана неплохо на офсайте, по умолчанию ставится вместе с MYSQL, но можно вместо него использовать Sqlite.
По умолчанию нажатие клавиши "стрелка вверх" в bash выводит последнюю команду вне зависимости от того, что было введено на данный момент. Но более удобно перемещаться по истории команд используя частично набранную команду.
Для этого нужно в файл ~/.inputrc добавить следующие команды
"\e[A": history-search-backward
"\e[B": history-search-forward
или в файл ~/.bashrc
if [[ $- == *i* ]] then bind '"\e[A": history-search-backward' bind '"\e[B": history-search-forward' fi
Для подсветки строки приглашения под пользователем root (например выделить красным цветом пользователя) нужно заменить строку в файле /etc/bash.bashrc
if ! [ -n "${SUDO_USER}" -a -n "${SUDO_PS1}" ]; then
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
на
if ! [ -n "${SUDO_USER}" -a -n "${SUDO_PS1}" ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\e[0;31m\]\u\[\e[m\]@\h:\w\$ '
fi