快速掌握如何在Node-RED中设置密码保护,防止未经授权的访问,确保数据安全。详细步骤解说,新手友好,立即学习!
你有没有这样的经历?Node-RED部署完成后,担心别人未经授权就能访问你的流配置?这不仅让人心慌,还可能导致敏感数据泄露。作为开发者或爱好者,我们需要为Node-RED添加密码保护,确保流配置和数据的安全。
别担心,这个设置过程并不复杂。今天,我会带你从零开始,用最简单的方法教你完成Node-RED密码设置,确保安全无忧。
Node-RED的配置文件是整个设置的关键,它决定了你的Node-RED实例的运行方式。
定位文件路径:
配置文件通常位于 ~/.node-red/settings.js
。如果你不确定路径,可以在终端中输入以下命令:
cd ~/.node-red
ls
小贴士:确保Node-RED已经安装并运行过,才能找到这个文件。
打开文件:
使用你喜欢的文本编辑器,比如:
nano settings.js
注意:编辑配置文件前,最好先备份。
Node-RED使用bcrypt加密存储密码,因此你需要先生成一个加密后的密码。
安装bcrypt工具:
打开终端,输入以下命令安装Node.js的bcrypt库:
npm install -g bcrypt
注意:确保你的Node.js版本是最新的,避免兼容性问题。
生成加密密码:
在终端中运行以下代码:
node -e "console.log(require('bcrypt').hashSync('你的密码', 10))"
将其中的 你的密码
替换为你希望设置的密码,比如 mysecurepassword
。
复制输出结果:
你会看到一串加密字符串,形如:
$2b$10$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
将其保存备用。
找到adminAuth
设置:
在 settings.js
文件中,搜索 adminAuth
,你会看到类似以下的代码:
// adminAuth: {
// type: "credentials",
// users: [{
// username: "admin",
// password: "$2b$10$examplehash",
// permissions: "*"
// }]
// },
取消注释并修改内容:
将代码修改为以下内容,并替换 password
的值为你生成的加密字符串:
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "$2b$10$xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
permissions: "*"
}]
},
小贴士:permissions
设置为 "*"
,表示拥有所有权限。
保存文件并退出:
按 Ctrl + O
保存,按 Ctrl + X
退出。
停止Node-RED:
如果Node-RED正在运行,先通过以下命令停止它:
node-red-stop
重新启动:
输入以下命令重新启动Node-RED:
node-red-start
验证配置是否生效:
打开浏览器访问Node-RED的地址(通常是 http://localhost:1880
),你会发现需要输入用户名和密码才能登录。
登录测试:
使用设置的用户名 admin
和密码尝试登录,确保一切正常。
优化安全性:
小贴士:如果你不小心忘记密码,可以重复以上步骤重新设置。
© 2024 sherlock.me. All rights reserved.