Безопасность
Если Вы установили Node Red на raspberry pi без пароля, то установить его можно следуя этой инструкции:
- Проинсталлируйте модуль “node-red-admin” при помощи команды
sudo npm install -g --unsafe-perm node-red-admin
2. Измените файл “settings.js”. Если Вы не изменяли путь по умолчанию, то он находится тут: “/home/(имя пользователя)/.node-red/settings.js”
3. Найдите строки
//adminAuth: {
// type: "credentials",
// users: [{
// username: "admin",
// password: "(какие-то символы)",
...
раскомментируйте эти строки до
//},
в строке
password: "(какие-то символы)",
вместо того, что написано в кавычках, надо вставить ХЕШИРОВАННЫЙ пароль. Чтобы его получить, в терминале напишите “node-red-admin hash-pw”. Выведется строка “Password: “. Тут введите свой пароль (не пугайтесь, если к строке “Password: » не будут появляться символы. Так и должно быть). В ответ Вы получите строку с хешированным паролем. Скопируйте его и вставьте в строку с паролем.
5. Установка пароля на dashboard. Раскомментируйте строку
//httpNodeAuth:{user:"user",pass:"(какие-то символы)"},
В этой строке вместо этих символов вставьте свой ХЕШИРОВАННЫЙ пароль. По умолчанию пользователь user, при необходимости его можно изменить.
Если Вы хотите показать свой проект друзьям, но не давая возможность им вносить изменения в работу, то скопируйте пользователя. Вот код:
{
username: "(имя пользователя)",
password: "(ХЕШИРОВАННЫЙ пароль)",
permissions: "read"
}
Блоки пользователей, ограничивающиеся фигурными скобами должны быть отделены запятыми. Если будут добавляться новые пользователи, то их тоже надо разделять запятыми.
Придумайте имя пользователя и просто впишите его. Скопируйте хешированный пароль и вставьте в соответствующее поле.
6. Перезапустите node-red с помощью команд:
node-red-stop
И потом напишите в консоль:
node-red-start
Первая команда выключает node-red, а вторая включает.
Теперь попробуйте зайти в node-red. У Вас попросят пароль. Также и с dashboard.
Я пишу эту статью потому, что во многих статьях по установке Node Red на raspberry pi опущена тема необходимости(!) установки пароля. Ведь, если пароля нет, то будут попытки несанкционированного изменения и управления Node Red