跳到主要内容

密码·API密钥变更

Edge 的凭据在所有设备上初始值都相同。在调试期间更改一次即可完成。

Edge 与其他产品的方法不同

Platform · AI · Studio 使用 bin/passwd.sh 这个轮换工具进行更改。Edge 没有这个工具。 Edge 的凭据全部是 app.properties 中的配置密钥,因此与其他配置值一样, 在界面上修改后重新启动即可。


初始值在哪里​

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

sudo cat /etc/kopens/credentials.txt
项目值
权限0600、root: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 发送)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/opc # 200
curl -k -H "X-API-Key: 틀린키" https://<gateway-ip>/api/v1/opc # 401
通过 /api/v1/system/* 无法验证密钥

/api/v1/system/health、/ready、/version 和 /api/health 是无需认证即可访问的 路径(REST API)。即使密钥填入任意值也会返回 200, 因此无法确认"密钥已更改"。必须像上述那样使用错误密钥确认返回 401, 才算验证完成。

Sidecar 持有初始值

/etc/kopens/env.sh.generated(0600)中保存了安装时确定的值,以 export ADMIN_PASS=... 形式存在。重新安装或升级会重新生成 app.properties 时,会先读取现有 app.properties 的值并保留,因此在界面或文件中更改的值不会因升级而被还原。

但 Sidecar 本身不会刷新,因此该文件中的值也应视为初始值。


相关文档​