跳到主要内容

密码 · API 密钥变更

Edge 的凭证在所有设备上的初始值相同。在现场调试时变更一次,之后就不再改动。

Edge 与其他产品的方式不同

Platform · AI · Studio 通过 bin/passwd.sh 这样的轮换工具来变更。Edge 没有这个工具。 Edge 的凭证都是 app.properties 中的配置键,与其他配置值完全相同——在界面上修改后重启即可。


初始值在哪里

安装完成后会生成一份出厂摘要文件。

sudo cat /etc/kopens/credentials.txt
项目说明
权限0600root:root — 仅 root 可读
生成时机install.sh 首次启动时生成一次
内容UI 登录 · REST API 密钥 · MQTT · OPC UA · TSE · keystore 密码
现场调试完成后请转移此文件

这是出厂前设计用来打印一份并随密封箱一起寄出的文件。不是要长期保存在设备上的。 凭证全部变更后,请将其转移到运营保管库(vault)中,并从设备上删除。

此文件不会跟踪已变更的值。 它保留的是安装时的初始值,如果密码变更后还依赖此文件,你会看到旧值。


需要变更什么

用途初始值
edge.admin_passwordUI 登录密码 (admin)admin123!
edge.rest.api.keyREST API 认证密钥 (X-API-Key / Bearer)固定默认值
mqtt.server.password内置 HiveMQ 代理 (Sparkplug B 发送)edge123!
opc.ua.server.passwordOPC UA 服务器(北向)edge123!
server.api_key平台联动令牌安装时注入
ai.api.keyAI 功能密钥为空
tse.server.password内置时序引擎(TSE)tse123!

前六个在环境设置界面中可见。tse.server.password 不在界面上显示,需要在配置文件中修改。

不需要变更用户名edge.admin_user · mqtt.server.user 等保持不变,基本运维做法是只变更密码。


方法 ① 通过界面(变更少量密钥时)

  1. https://<gateway-ip>/ui/main 登录
  2. 右上角齿轮图标(fa-cog) → 环境设置 (/ui/system/config)
  3. 在对应标签页中找到密钥,输入新值 — 上表中的密钥全部以密码输入框的形式呈现(edge.admin_password 没有眼睛图标,值在界面上不可见)
  4. 右上角保存(fa-save)
  5. 重启 — 仅保存还不够,需要重启才能生效
保存和生效是两回事

保存是指写入 app.properties 文件。运行中的进程仍然持有启动时的值,因此必须重启才能应用新值。 界面上的重启只会重新启动 Tomcat,不会关闭容器(耗时 30~90 秒)。

详见重启


方法 ② 命令行(现场调试 — 批量变更)

bin/config.sh 可以批量变更密钥。一次变更多个,最后只需重启一次,因此现场调试时这种方法更快。

cd /opt/kopens/install/bin

./config.sh --get edge.admin_password # 현재 값 확인
./config.sh --set edge.admin_password '<new-password>'
./config.sh --set edge.rest.api.key '<new-key>'
./config.sh --set mqtt.server.password '<new-password>'
./config.sh --diff # 직전 백업과 비교
./config.sh --restart # 마지막에 한 번만

无参数运行时会在编辑器中打开文件,保存后询问是否重启。

每次变更时,app.properties.bak.YYYYMMDD_HHMMSS 备份会自动保存。

仅在 2026.08-20260825 及以上版本使用

之前版本的 config.sh --set默默丢失值。 它用兼容符号链接代替原始文件到 sed -i,导致修改没有到达应用,重启时被覆盖。这就是"显示已变更但不生效"的症状原因。

检查设备运行的镜像标签 — IMAGE_TAG 是正式版本。

grep '^IMAGE_TAG=' /etc/kopens/version.env

如果是旧版本,请使用下面的方法③(直接编辑)或通过界面变更。


方法 ③ 直接编辑文件

配置文件的原本是一个实文件

sudo vi /etc/kopens/conf/app.properties
sudo systemctl restart plantpulse-edge.service
必须编辑 conf/ 内的实文件
路径说明
/etc/kopens/conf/app.properties原本实文件 — 应用通过 -Dpe.conf.dir 直接读取
/etc/kopens/app.properties符号链接 — 指向上述文件的便利别名

在编辑器中打开符号链接会修改实文件,所以 vi 两种方式都可以。但自定义的 sed -i 脚本会删除符号链接,在原位置创建新的普通文件。 这样修改的内容会保留在 /etc/kopens/app.properties 中,而应用读取的 conf/app.properties 仍是旧值,看起来保存成功但什么都没变。 (使用 sed -i --follow-symlinks 可以避免这个问题。)

修改后请确认内容已进入实文件。

grep '^edge.admin_password' /etc/kopens/conf/app.properties

验证

# 실파일에 새 값이 들어갔는지
sudo grep -E '^(edge.admin_password|edge.rest.api.key|mqtt.server.password)' \
/etc/kopens/conf/app.properties

# UI 로그인 — 새 비밀번호로 접속되는지
# REST API — 새 키로 통과하는지
curl -k -H "X-API-Key: <new-key>" https://<gateway-ip>/api/v1/system/status
边车容器保留初始值

/etc/kopens/env.sh.generated(0600)中保存有安装时确定的值,形式为 export ADMIN_PASS=...。重新安装或升级时,重建 app.properties 前会先读取现有 app.properties 的值进行保留,所以通过界面或文件变更的值不会因为升级而恢复到旧值。

但边车容器本身不会更新,该文件中的值也应视为初始值。


相关文档