甲骨文AMD 1核1G内存安装Openclaw且使用公网IP访问

由于内存小,只能最精简安装,不使用tailscale域名访问(免Token)和自定义域名访问,
因为安装tailscale和nginx可能占用50-150M内存,虽然麻烦一点,但首要得扛得住。
由于openclaw的安全机制,公网IP访问只能自签证书,每次浏览器都会有安全提示,而且新设备登录需要在openclaw后台验证通过。

一、配置虚拟内存
由于内存太小,官方推荐2G,我们给它多配个2G的虚拟内存,防止爆内存。

1.建立并设置虚拟内存

sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

2.写入配置信息

别忘了写入 /etc/fstab 以便重启生效

在修改系统核心文件前,先备份是一个好习惯:

sudo cp /etc/fstab /etc/fstab.bak

你可以使用下面这条命令直接将配置追加到文件末尾:

echo ‘/swapfile none swap sw 0 0’ | sudo tee -a /etc/fstab

3.进阶优化:调整 Swappiness

由于甲骨文 1G 内存非常吃紧,建议调整 Swappiness 值。这个值决定了系统有多“积极”地使用 Swap。

默认值通常是 60。

建议值:对于 1G 内存的 VPS,建议设为 10(让系统优先使用物理内存,物理内存实在不够了再用 Swap,以保持响应速度)。

临时修改(立即生效):

sudo sysctl vm.swappiness=10
永久修改:
编辑 /etc/sysctl.conf 文件:

echo ‘vm.swappiness=10’ | sudo tee -a /etc/sysctl.conf

  1. 如何验证是否成功

重启 VPS
sudo reboot

运行以下命令:
free -h
如果在 Swap 那一行看到了 2.0Gi(或者你设置的大小)而不是 0,就说明配置已经永久生效了。

二、安装OpenClaw需要什么

Node.js — 推荐使用Node 24(也支持Node 22.14+)
来自模型提供商(Anthropic、OpenAI、Google等)的API密钥

三、开始安装OpenClaw

更新系统
sudo apt update
sudo apt upgrade

安装curl
sudo apt install curl -y
验证安装
curl –version
如果成功,你会看到类似 curl 7.81.0 (x86_64-pc-linux-gnu) 的输出

使用CURL安装openclaw
curl -fsSL https://openclaw.ai/install.sh | bash
会自动安装依赖nodejs和npm
按照官方文档,如果成功:

进入设置向导
openclaw onboard –install-daemon

确认网关是否运行
openclaw gateway status

打开仪表盘
openclaw dashboard

顺利的话到这里就是安装结束了。

但事实并没那么简单,安装完这两个后,在安装openclaw时却卡了,试了好几次都是如此。
不要慌,ctrl+C退出,退不出就直接关闭终端重连。

前面已经安装好了nodejs和npm,接着

npm install -g openclaw@latest

耐心等待。

四、进入设置向导

openclaw onboard –install-daemon

进入向导后不小心退出了,重进

openclaw onboard

  1. 风险提示
    快速安装命令运行结束后会有这个风险提示,选Yes即可。
  2. 向导模式选择
    安装向导选择QuickStart快速模式。
  3. 大模型选择
    这一步选择Skip for now,先跳过后面配置。
  4. 按大模型服务商筛选
    这一步,随便选一个,后面再配置。
  5. 选择频道
    就是选择与OpenClaw通讯的软件比如飞书、,这一步跳过,后面配置。
  6. 选择搜索服务商
    选择Skip for now,这一步先跳过。
  7. 设置skills
    选择No,后面再配置。
  8. 启用hook
    选择Skip for now,先跳过,后面再配置。

安装完后记录一下TOKEN,

默认是浏览器输入http://127.0.0.1:18789进入,但是甲骨文云不是可视化ubuntu,没有浏览器。

五、设置公网登录

1.甲骨云-虚拟云网络,进入你之前设置的云网络-安全-入站规则,添加规则
允许所有源CIDR(0.0.0.0/0)访问 18789端口,甲骨文只预开了22端口

2.回到终端,设置甲骨文的防火墙规则

设置默认策略为允许

sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

清空所有现有规则

sudo iptables -F

添加一条永久放行 18789 端口的规则:
sudo iptables -I INPUT -p tcp –dport 18789 -j ACCEPT

验证规则
sudo iptables -L -n
应该看到类似这样的输出(所有链都是 ACCEPT,且没有规则)

保存当前规则(刚才已设为 ACCEPT)
sudo netfilter-persistent save

重启
sudo reboot

如果你确定不想使用实例自带的防火墙,可以彻底卸载规则管理工具,看情况使用
sudo apt-get purge netfilter-persistent

3.设置OpenClaw访问规则
OpenClaw 的新版本不再支持直接填写 IP 地址(如 0.0.0.0),而是需要使用绑定模式(bind modes)。
默认loopback,也就是只允许本机访问。

改为允许外部访问
openclaw config set gateway.bind lan

lan – 监听在局域网 IP 上(相当于 0.0.0.0,允许外部访问)✅ 你应该用这个
loopback – 只允许本机访问(相当于 127.0.0.1)
custom – 自定义 IP
tailnet – 只通过 Tailscale 访问
auto – 自动选择

验证配置
grep ‘”bind”‘ ~/.openclaw/openclaw.json

应该显示:
json
“bind”: “lan”

重启服务

systemctl –user restart openclaw-gateway

验证端口监听

ss -tlnp | grep 18789
应该显示 0.0.0.0:18789 或 *:18789

测试连接
telnet 你的公网IP 18789

六、测试无法连接处理方法

检查服务状态:

systemctl –user status openclaw-gateway

确保状态是 active (running)。如果有报错,说明服务没启动成功。

检查端口监听:
确认 OpenClaw 确实在 18789 端口上监听了。

sudo ss -tlnp | grep 18789

命令参数解释:
-t:只显示 TCP 端口
-l:只显示正在监听的端口
-n:以数字形式显示端口号,不解析服务名称
-p:显示是哪个进程在使用这个端口

如果没有任何输出,说明服务没有正常启动或配置错误。
看到 0.0.0.0:18789 ✅
含义:正确监听在了所有网络接口上,外界可以访问。

检查配置文件:
OpenClaw 的配置文件位于 ~/.openclaw/openclaw.json。确保里面的 gateway.port 是 18789,且 gateway.bind 没有绑定到 127.0.0.1(如果只用 Tailscale 访问则没问题,但如果需要公网访问,需要改为 0.0.0.0)。

七、生成自签名证书
mkdir -p ~/.openclaw/certs

openssl req -x509 -newkey rsa:4096 \
-keyout ~/.openclaw/certs/key.pem \
-out ~/.openclaw/certs/cert.pem \
-days 365 -nodes \
-subj “/CN=公网IP”
修改 OpenClaw 配置启用 TLS
openclaw config set gateway.tls.enabled true
openclaw config set gateway.tls.certFile /home/ubuntu/.openclaw/certs/cert.pem
openclaw config set gateway.tls.keyFile /home/ubuntu/.openclaw/certs/key.pem

openclaw config set gateway.controlUi.allowedOrigins ‘[“https://公网IP”]’

重启服务:

openclaw gateway restart

保持 OpenClaw 监听 18789,用系统工具转发 443 → 18789
使用 iptables(Linux 内置):

添加端口转发规则(需要 root)
sudo iptables -t nat -A PREROUTING -p tcp –dport 443 -j REDIRECT –to-port 18789

保存规则(Ubuntu/Debian)

sudo apt install iptables-persistent
sudo netfilter-persistent save

八、验证新设备

OpenClaw 的安全机制要求你显式批准每一个新设备(包括你现在的浏览器)。
你看到“pairing required”,说明浏览器已经发出了配对请求,现在只需在服务器上批准它。
openclaw devices list
批准它,复制显示的 Request ID,然后执行:
openclaw devices approve
现在设备可以使用https://公网IP?token=你的openclaw生成的token

不知道token的可以在终端输入
openclaw dashboard
记录自己的token

好了,可以远程使用你的Openclaw了,但现在只是个壳,你还得接入聊天模型,才能跟它沟通。

九、接入deepseek大模型

登录deepseek开放平台,左侧面板API keys–创建API key–复制API key,
记得要充值才能使用,先充个5元也行,要不然KEY会验证不通过。

进入配置向导

openclaw configure

配置选项:
where will the Gateway run?—–Local
select sections to configure—-Model
Model/auth provider—Custom Provider
API Base URL—-https://api.deepseek.com/v1
How do you want to provide this API key?—-Paste API key now
API key—粘贴APIkey
Endpoint compatibility—OpenAI-compatible
Model ID—deepseek-chat
Endpoint ID—-随便,默认也行
Model alias—-就是添加这个模型的名称,随便取,就deepseek也可以。
接下来选continue

十、安装技能

1.现在有聊天助手了,你可以让它安装SKILL技能。
比如说,“请帮我从技能商店安装 TickDB Market Data”,
它会自动搜索步骤,在后台帮你安装好。
就可以让聊天助手帮我们监控黄金价格了。

2.命令行安装(相对麻烦)
如果你习惯用终端,可以手动执行安装命令:

npx clawhub@latest install TickDB-Market-Data
⚠️ 关键步骤:安装后记得配密钥
监控黄金价格通常需要 API 授权。安装完成后,你需要在配置文件中填入从数据商那里获取的 API Key,技能才能正常拉取数据:

编辑配置文件(路径一般是 ~/.openclaw/config.json)

nano ~/.openclaw/config.json

十一、接入飞书机器人
以后就不用打开openclaw网页端,与飞书机器人沟通就可以完成所有技能安装与使用。

第一步:创建飞书应用
访问开放平台:打开 飞书开放平台,使用你的飞书账号登录。

创建应用:点击“创建企业自建应用”,填写应用名称和描述,上传一个图标,然后点击“创建”。

🔑 第二步:获取 API 凭证
这是最关键的一步,获取的凭证就是你连接 OpenClaw 时需要填入的。

进入你刚创建的应用详情页。

在左侧菜单栏找到并点击 “凭证与基础信息”。

在页面上,你会看到 App ID 和 App Secret。请复制并妥善保存这两个信息,它们就是调用 API 的“账号”和“密码”。

⚙️ 第三步:配置权限与能力
为了让机器人能收发消息,需要给它开通相应的权限。

添加机器人能力:在左侧菜单栏点击“添加应用能力”,找到并添加 “机器人” 能力。这是让应用成为一个“聊天机器人”的关键步骤。

配置权限:

点击左侧的 “权限管理”。

在权限列表中,搜索并添加 im:message、im:message.p2p_msg:readonly、im:message:send_as_bot 等与消息收发相关的权限。

也可以点击“批量导入”,用 JSON 格式一次性导入全部所需权限,这会更高效。

配置事件订阅:

点击左侧的 “事件与回调”。

将“订阅方式”改为 “使用长连接接收事件”,这样就不需要为机器人配置公网地址了。

点击“添加事件”,搜索并勾选 im.message.receive_v1 事件,这是机器人能收到用户消息的前提。

🚀 第四步:发布应用
配置完成后,需要发布应用,配置才会生效。

点击左侧菜单栏的 “版本管理与发布”。

点击“创建版本”,填写版本号(如 1.0.0)和更新说明。

点击“申请线上发布”。作为自建应用的创建者,审核通常会很快自动通过。

第五步.进入应用获取凭证

在应用列表中,点击任意一个应用,进入它的详情页。

在左侧菜单栏找到并点击 “凭证与基础信息”。

在这个页面,你会看到:

App ID(应用ID)

App Secret(应用密钥)

页面顶部也会显示当前的 应用名称

第六步.在终端安装飞书技能与设置

openclaw config set channels.feishu.appId “cli_xxxx” (你的App ID)
openclaw config set channels.feishu.appSecret “JvvTRWTs………”(你的App Secret)
openclaw config set channels.feishu.enabled true
openclaw config set channels.feishu.connectionMode websocket
openclaw config set channels.feishu.dmPolicy pairing
openclaw config set channels.feishu.groupPolicy allowlist
openclaw config set channels.feishu.requireMention true

重启网关
openclaw gateway restart

第七步.飞书机器人与聊天助手匹配
让飞书成为聊天助手的一个分身

首选 ,在飞书搜索你建立的应用,也就是这个机器人,给随便发一个消息。
它会回复你一个匹配码。

openclaw pairing approve feishu 匹配码

这样就配对了。

十二、校准时间,默认服务器所在地时间
这样发布定时任务才能对得上时间

方法一:使用 timedatectl(推荐)
bash

设置时区为上海(北京时间)

sudo timedatectl set-timezone Asia/Shanghai

方法二:使用 dpkg-reconfigure(交互式)

sudo dpkg-reconfigure tzdata
然后依次选择:Asia → Shanghai

✅ 验证修改结果

timedatectl

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注