Установка пароля на веб-интерфейс контроллера Wiren Board (Debian Stretch)
This is the approved revision of this page, as well as being the most recent.
Описание
Эта инструкция для пользователей контроллеров Wiren Board 5...7, работающих под Debian Stretch — это все релизы ПО до wb-2207 включительно. Подробнее про релизы.
Веб-интерфейс не поддерживает авторизацию пользователя, но вы можете настроить http-авторизацию сервера nginx. После окончания настройки при подключении будет появляться окно с запросом логина и пароля.
Установка пароля
Чтобы установить пароль, настройте mosquitto и nginx:
- Закройте доступ к
websocket-и mqtt-порту снаружи. Для этого откройте файл/etc/mosquitto/conf.d/listeners.conf:nano /etc/mosquitto/conf.d/listeners.conf- и приведите его к виду:
#change 0.0.0.0 to limit listener to localhost listener 1883 127.0.0.1 # example: #listener 1883 0.0.0.0 #change 0.0.0.0 to 127.0.0.1 to limit listener to localhost listener 18883 127.0.0.1 protocol websockets
- Перезагрузите
mosquitto:systemctl restart mosquitto
- Теперь перейдите в веб-интерфейс и обновите страницу клавишами
Ctrl+Shift+R— это сбросит кэш страницы. - На ошибки соединения пока не обращайте внимания и перейдите в раздел Настройки → Веб-интерфейс, укажите в поле Порт новое число
80. Далее нажмите Применить. В правом верхнем углу должна появиться зелёная надписьПодключено. Теперь проверьте, что всё работает: перейдите в раздел Конфигурации и проверьте, что конфигурации доступны для просмотра и редактирования.
Далее нужно установить пароль на nginx.
- Включите глобальную аутентификацию:
ln -s /etc/nginx/sites-available/global_auth /etc/nginx/sites-enabled systemctl restart nginx
- После этого при подключении к веб-интерфейсу будет запрошен логин и пароль. По умолчанию: логин root, пароль wirenboard.
- Чтобы поменять пароль, выполните команду ниже:
printf "root:`openssl passwd -apr1`\n" > /etc/nginx/passwd
- здесь вместо root можно придумать любое другое имя пользователя.
- После выполнения команды появится запрос на ввод пароля — введите новый пароль, нажмите
Enter, повторите ввод нового пароля и снова нажмитеEnter.
- Вернитесь в веб-интерфейс, обновите страницу клавишами
Ctrl+Shift+Rи при запросе логина и пароля введите их.
Совет: Чтобы не вводить логин и пароль каждый раз при подключении к контроллеру, добавьте закладку с адресом контроллера в формате:
http://login:password@host/
Снятие пароля
Чтобы снять пароль с веб-интерфейса, верните конфигурацию mosquitto и nginx к состоянию по умолчанию.
- Отключите глобальную аутентификацию командой:
rm /etc/nginx/sites-enabled/global_auth
- Перезагрузите nginx:
systemctl restart nginx
- Откройте файл etc/mosquitto/conf.d/listeners.conf:
nano /etc/mosquitto/conf.d/listeners.conf- И приведите его к виду:
#change 0.0.0.0 to limit listener to localhost listener 1883 0.0.0.0 # example: #listener 1883 0.0.0.0 #change 0.0.0.0 to 127.0.0.1 to limit listener to localhost listener 18883 0.0.0.0 protocol websockets
- Перезагрузите mosquitto:
systemctl restart mosquitto
- Перейдите в веб-интерфейс и обновите страницу клавишами Ctrl+Shift+R — это сбросит кэш страницы.
- Перейдите в раздел Настройки — Веб-интерфейс, укажите в поле Порт значение 18883. Нажмите Применить. В правом верхнем углу должна появиться зеленая надпись
Подключено. - Нажмите еще раз Ctrl+Shift+R и убедитесь, что при входе в веб-интерфейс пароль не запрашивается.