华为云ECS云服务器从零搭建OpenClaw龙虾:一键安装脚本+安全组放行完整实操指南
最近AI圈子里最火的话题莫过于“养龙虾”了。这只龙虾可不是餐桌上的海鲜,而是一款名为OpenClaw的开源AI智能体。从2025年底诞生至今,OpenClaw在短短几个月内斩获了超过25万GitHub星标,日均代码提交高达127次。有人用它自动写文章发公众号,有人用它管理财务催款,甚至还有地方政府用它来处理海量民生诉求。那么问题来了:普通用户怎么才能拥有属于自己的这只AI龙虾?本文将以华为云ECS云服务器为基础,从零开始,手把手带你完成OpenClaw的完整部署,包含一键安装脚本与安全组放行的全流程实操。
需要先登录华为云控制台,点击:华为云控制台,还没有账号,点击:注册并关联,已有账号点击:登录后关联
一、OpenClaw是什么?为什么它值得你“养”
在动手之前,先花两分钟搞清楚我们到底在部署什么。OpenClaw是一款由奥地利资深开发者Peter Steinberger打造的开源AI智能体,前身名为Clawdbot和Moltbot,2026年1月正式定名为OpenClaw。名字中的“Open”代表开源免费,“Claw”则象征其高效抓取和执行任务的能力。
与传统的大语言模型不同,OpenClaw不是只能聊天的被动工具,而是一个“能干会做”的主动执行助手。用户只需用自然语言下达指令,OpenClaw就能自主完成任务的拆解、规划和执行——比如自动打开浏览器、操作软件、读写文件、发送消息等。它支持接入50多个消息平台,社区贡献了超过5700个技能模块。更关键的是,OpenClaw会在每次交互中积累记忆,逐渐成长为一个更懂你的专属AI助手。
简单来说,普通AI是“纸上谈兵”的顾问,OpenClaw则是能直接替你“动手干活”的数字员工。
二、华为云ECS实例创建与配置选型
部署OpenClaw需要一台具有公网IP的云服务器。华为云ECS(弹性云服务器)提供了灵活、可扩展的计算资源,是运行OpenClaw的理想选择。
2.1 登录华为云控制台
访问华为云官网并登录账号。如果还没有账号,需要先完成注册和实名认证。
2.2 进入ECS购买页面
在控制台搜索“弹性云服务器ECS”,点击“购买弹性云服务器”进入配置页面。
2.3 基础配置
- 计费模式:长期使用推荐“包年/包月”,短期测试可选“按需计费”。
- 区域:选择靠近你的地域以降低网络延迟。
- 规格:推荐2核4GB或更高配置。OpenClaw运行需要一定的内存和CPU资源,规格过低可能导致响应缓慢。
- 镜像:选择Ubuntu 22.04 LTS 64bit。Ubuntu 22.04是当前最稳定且广泛支持的LTS版本,软件包兼容性好。
- 系统盘:建议40GB及以上。
2.4 网络与安全组配置
- VPC:使用默认VPC即可。
- 弹性公网IP:必须购买并绑定,这是外部访问服务器的前提。
- 安全组:这是本文的重点之一。安全组相当于云服务器的防火墙,默认拒绝所有来自外部的请求。我们需要放行必要的端口才能远程管理和访问OpenClaw。
2.5 登录方式
推荐使用“密钥对”登录,比密码更安全。在购买页面选择“密钥对”方式,可以新建或导入已有的密钥对。私钥文件请妥善保存在本地。
2.6 确认购买
核对所有配置后勾选协议,点击“立即购买”。等待几分钟,ECS实例即可创建完成。
三、安全组放行:为OpenClaw打开必要的网络通道
安全组是华为云ECS的第一道网络防线。创建ECS时如果没有放行正确端口,后续所有操作都无法进行。以下是OpenClaw部署需要放行的端口清单。
3.1 必须放行的端口
| 端口 | 协议 | 用途 | 建议来源IP |
|---|---|---|---|
| 22 | TCP | SSH远程登录 | 你的本地IP或0.0.0.0/0(谨慎) |
| 18789 | TCP | OpenClaw Web UI | 127.0.0.1(仅本地转发)或特定IP |
3.2 操作步骤:添加安全组入方向规则
登录华为云控制台 → 弹性云服务器ECS → 找到你的实例 → 点击“安全组” → 点击安全组名称进入规则管理页面。
放行SSH端口(22):
- 点击“入方向规则” → “添加规则”
- 协议端口:TCP 22
- 源地址:建议填写你本地电脑的公网IP(如113.xxx.xxx.xxx/32),或暂时设置为0.0.0.0/0
- 策略:允许
放行OpenClaw Web UI端口(18789):
- 点击“入方向规则” → “添加规则”
- 协议端口:TCP 18789
- 源地址:建议设置为127.0.0.1/32(仅允许本机访问)或你的本地IP
- 策略:允许
安全组规则生效说明:在安全组中放行端口后,还需要确保ECS实例内部的操作系统防火墙(如ufw)也放行了对应端口,规则才会生效。
3.3 安全最佳实践
- 不要盲目放行0.0.0.0/0到18789端口,这会将Web UI暴露给全网,存在安全隐患。
- 推荐使用SSH本地端口转发的方式访问Web UI(详见下文),这样18789端口无需对外公开。
- 定期审查安全组规则,删除不再使用的放行策略。
四、SSH连接ECS服务器
安全组配置完成后,就可以通过SSH连接到ECS了。
4.1 使用密钥登录(推荐)
在本地终端执行以下命令:
ssh -i /path/to/your-private-key.pem root@你的弹性公网IP
将/path/to/your-private-key.pem替换为你的私钥文件路径,将“你的弹性公网IP”替换为ECS的实际公网IP。
4.2 使用密码登录
如果购买时选择了密码登录方式:
ssh root@你的弹性公网IP
然后输入root密码即可。
4.3 使用华为云CloudShell
华为云控制台提供了CloudShell在线终端,无需安装SSH客户端即可直接登录。在ECS实例详情页点击“远程登录”即可使用。
五、一键安装脚本:全自动部署OpenClaw
连接到服务器后,接下来就是核心的部署环节。下面提供一份经过生产环境验证的一键安装脚本,涵盖了从系统初始化到OpenClaw完整部署的所有步骤。
5.1 一键安装脚本全文
将以下脚本保存为install_openclaw.sh,或在终端中逐行执行:
#!/bin/bash
# ============================================================
# OpenClaw 一键安装脚本 - 适用于华为云ECS Ubuntu 22.04
# 功能:系统更新 + Node.js安装 + OpenClaw安装 + 用户隔离 + 自启动
# ============================================================
set -e
echo "=========================================="
echo " OpenClaw 一键安装脚本"
echo " 适用于华为云ECS Ubuntu 22.04"
echo "=========================================="
# 1. 更新系统
echo "[1/8] 更新系统软件包..."
apt update && apt upgrade -y
# 2. 安装必要工具
echo "[2/8] 安装必要工具..."
apt install -y curl wget git build-essential
# 3. 安装Node.js 22.x LTS
echo "[3/8] 安装Node.js 22.x LTS..."
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
# 4. 验证Node.js安装
echo "[4/8] 验证Node.js安装..."
node --version
npm --version
# 5. 全局安装OpenClaw
echo "[5/8] 全局安装OpenClaw..."
npm install -g openclaw@latest
# 6. 验证OpenClaw安装
echo "[6/8] 验证OpenClaw安装..."
openclaw --version
# 7. 创建专用非root用户(安全隔离)
echo "[7/8] 创建openclaw专用用户..."
if ! id -u openclaw &>/dev/null; then
useradd -m -s /bin/bash openclaw
echo "openclaw ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/openclaw
fi
# 8. 配置openclaw用户环境
echo "[8/8] 配置openclaw用户环境..."
su - openclaw -c "mkdir -p ~/.openclaw"
# 配置.bashrc使nvm和openclaw命令永久生效
su - openclaw -c "cat >> ~/.bashrc << 'EOF'
export NVM_DIR=\"\$HOME/.nvm\"
[ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"
nvm use --lts --silent 2>/dev/null || true
export PATH=\"\$HOME/.nvm/versions/node/\$(nvm version 2>/dev/null)/bin:\$PATH\"
EOF"
echo "=========================================="
echo " OpenClaw 安装完成!"
echo " 下一步:执行 openclaw onboard 进行初始化"
echo "=========================================="
5.2 脚本执行方式
将上述脚本保存后,在服务器上执行:
chmod +x install_openclaw.sh
./install_openclaw.sh
或者直接使用curl从远程执行(如果脚本已托管到某个URL):
curl -fsSL https://your-domain.com/install_openclaw.sh | bash
OpenClaw官方也提供了一键安装脚本:
curl -fsSL https://openclaw.ai/install.sh | bash
5.3 脚本关键步骤解析
系统更新(第1步):apt update和apt upgrade确保所有系统软件包处于最新状态,避免依赖冲突。
Node.js安装(第3步):OpenClaw基于Node.js运行,需要安装Node.js环境。脚本使用NodeSource官方仓库安装22.x LTS版本,这是当前最稳定的长期支持版本。
全局安装OpenClaw(第5步):通过npm install -g openclaw@latest从npm官方仓库安装最新版OpenClaw。
专用用户创建(第7步):这是极其重要的安全实践。OpenClaw能够控制浏览器、执行Shell命令、读写文件,如果用root用户运行,相当于把整个服务器的控制权交给了AI。脚本创建了名为openclaw的专用用户,实现权限隔离。
环境配置(第8步):为openclaw用户配置.bashrc,确保nvm和Node.js路径在每次登录时自动加载。
六、OpenClaw初始化配置
一键安装脚本完成后,OpenClaw已经安装到系统中,但还需要进行初始化配置才能使用。
6.1 切换到openclaw用户
重要:后续所有OpenClaw操作都应在openclaw用户下执行,不要使用root。
su - openclaw
6.2 执行初始化命令
在openclaw用户下执行:
openclaw onboard
初始化过程是交互式的,会引导你完成以下配置:
- 选择模式:选择“快速开始模式”。
- 选择模型提供商:OpenClaw需要接入大语言模型才能工作。可以选择华为云MaaS、火山引擎、OpenAI、Anthropic等。
- 配置API Key:输入所选模型提供商的API密钥。
- 选择默认模型:如deepseek-v3、gpt-4等。
- 选择消息平台:OpenClaw支持接入WhatsApp、Discord、微信、钉钉、飞书等50多个平台。初始化时可以先跳过,后续再配置。
- 安装Skills:选择需要的技能模块,推荐使用pnpm作为包管理工具。
- 配置Hooks:建议勾选默认的hooks选项。
6.3 配置华为云MaaS模型(示例)
如果选择华为云MaaS作为模型提供商,配置文件~/.openclaw/openclaw.json内容如下:
{
"providers": {
"huawei": {
"type": "openai",
"baseUrl": "https://maas-api.cn-east-3.myhuaweicloud.com/v1",
"apiKey": "your-huawei-maas-api-key"
}
},
"models": {
"default": "huawei/deepseek-v3"
}
}
API Key可以在华为云ModelArts MaaS平台申请获取。
七、启动OpenClaw并验证
7.1 前台启动(测试用)
在openclaw用户下执行:
openclaw gateway start
如果看到启动日志且没有错误信息,说明OpenClaw运行正常。
7.2 后台启动(生产用)
生产环境建议将OpenClaw注册为systemd服务,实现开机自启。创建服务文件 /etc/systemd/system/openclaw.service:
[Unit]
Description=OpenClaw AI Agent
After=network.target
[Service]
Type=simple
User=openclaw
WorkingDirectory=/home/openclaw
ExecStart=/usr/bin/openclaw gateway start
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
然后执行:
systemctl daemon-reload
systemctl enable openclaw
systemctl start openclaw
systemctl status openclaw
7.3 通过SSH本地端口转发访问Web UI
OpenClaw的Web UI默认监听18789端口。为了安全,不建议将此端口直接暴露到公网。推荐使用SSH本地端口转发:
在本地终端执行(不是在服务器上):
ssh -N -L 18789:127.0.0.1:18789 root@你的弹性公网IP
然后在本地浏览器访问:
http://127.0.0.1:18789/#token=xxxxx
其中的token在openclaw onboard初始化完成后会给出。这种方式下,18789端口只在本机监听,公网无法直接访问,安全性极高。
八、OpenClaw部署后的安全最佳实践
OpenClaw拥有强大的系统操作能力,部署后必须重视安全问题。
8.1 坚持使用非root用户
所有OpenClaw操作都应在openclaw专用用户下执行。root用户拥有系统最高权限,一旦OpenClaw被恶意利用,后果不堪设想。
8.2 安全组最小化原则
只放行业务必需的端口。22端口建议限制来源IP为你的办公网络,18789端口建议仅通过SSH隧道访问,不要直接暴露到公网。
8.3 定期更新
定期执行以下命令更新OpenClaw和系统组件:
npm update -g openclaw
apt update && apt upgrade -y
8.4 API Key安全
OpenClaw配置文件中的API Key具有调用大模型的权限,不要将~/.openclaw/openclaw.json文件泄露给他人。
8.5 审计OpenClaw的操作
定期检查OpenClaw的日志和操作记录,确保没有异常行为。
九、常见问题与解答
问1:执行openclaw --version时报错“command not found”怎么办?
答:这通常是因为Node.js的全局bin目录没有加入PATH。如果使用的是nvm安装的Node.js,需要执行source ~/.bashrc重新加载环境变量。或者检查是否在root用户下安装了OpenClaw但切换到了普通用户——全局安装的包可能在root的PATH中但对普通用户不可见。解决方案是在目标用户下重新安装,或使用nvm管理Node版本并在.bashrc中正确配置。
问2:安全组放行了端口但还是连不上怎么办?
答:首先检查ECS实例内部的操作系统防火墙。Ubuntu系统执行sudo ufw status查看防火墙状态,如果开启则需要sudo ufw allow 22/tcp和sudo ufw allow 18789/tcp放行端口。其次确认安全组规则中源地址配置正确——如果源地址设置为特定IP,确保你的出口IP在该范围内。
问3:OpenClaw初始化时卡在下载依赖怎么办?
答:国内网络访问npm官方仓库可能较慢。可以配置华为云镜像站加速:npm config set registry https://mirrors.huaweicloud.com/repository/npm/。或者使用cnpm替代npm。
问4:OpenClaw能连接哪些消息平台?
答:OpenClaw支持接入50多个消息平台,包括WhatsApp、Discord、Telegram、微信、钉钉、飞书、Slack等。在openclaw onboard初始化时的消息平台选择步骤中可以选择,也可以在后续通过配置文件添加。
问5:OpenClaw的Web UI登录token在哪里查看?
答:在openclaw onboard初始化完成后,终端会输出包含token的Web UI访问地址。如果忘记了,可以查看OpenClaw的日志:journalctl -u openclaw -f | grep token,或在~/.openclaw/目录下的配置文件中查找。
问6:OpenClaw能执行哪些类型的任务?
答:OpenClaw内置了大量预定义技能模块,包括自动整理目录文件、控制浏览器打开网页和截图、设置提醒、邮件管理、代码生成、文档处理等。用户还可以自定义开发专属技能。实际使用中,输入“帮我写一篇关于AI的文章并发布到公众号”这样的自然语言指令,OpenClaw就能自主完成从内容生成到发布的完整流程。



