即使配置了正确的公网 IP 和端口映射,使用 http://你的IP:18789http://你的域名:18789 访问仍然失败,而其他人可能可以直接通过 HTTP 公网访问。
在这里插入图片描述

解决方案(在配置中禁用了设备身份验证检查)

方法一:命令行快速配置(推荐)

在服务器终端执行以下命令

# 1. 允许非安全认证(解决跨域问题)
openclaw config set gateway.controlUi.allowInsecureAuth true
# 2. 关键步骤:禁用设备身份验证(允许 HTTP 访问)
openclaw config set gateway.controlUi.dangerouslyDisableDeviceAuth true
# 3. 重启网关服务使配置生效
openclaw gateway restart

方法二:手动编辑配置文件

如果你习惯修改配置文件,可以直接编辑 ~/.openclaw/openclaw.json:

"gateway": {
  "port": 18789,
  "bind": "lan",  // 确保绑定到 LAN 或 0.0.0.0
  "controlUi": {
    "allowInsecureAuth": true,
    "dangerouslyDisableDeviceAuth": true,  // 核心配置项
    "allowedOrigins": [
      "http://你的域名或IP:18789"
    ]
  },
  "auth": {
    "mode": "token",
    "token": "你的复杂Token"
  },
  "http": {
      "endpoints": {
        "chatCompletions": {
          "enabled": true
        }
      }
    },
  // ... 其他配置
}

修改后同样需要重启服务:openclaw gateway restart

常见问题

Q1: 设置后 Token 还需要吗?
需要。设置 dangerouslyDisableDeviceAuth: true 只绕过设备身份验证,Token 认证仍然有效。你必须提供正确的 Token 才能登录。

Q2: 这样做安全吗?
存在风险。禁用设备身份验证会削弱安全防护,建议:

  • 配置 IP 白名单限制访问来源
  • 尽快配置 HTTPS(推荐使用 Nginx 反向代理 + Let’s Encrypt 免费 SSL 证书)
    Q3: 如何恢复默认安全设置?
openclaw config set gateway.controlUi.dangerouslyDisableDeviceAuth false
openclaw gateway restart

Q4: 生产环境应该怎么做?
对于生产环境,强烈推荐以下方案:

  • 使用 Nginx 反向代理:配置 HTTPS 并转发到本地 OpenClaw 端口
  • 配置域名 SSL 证书:申请域名并配置SSL证书
  • 保持默认安全设置:不推荐禁用设备身份验证
Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐