文章目录

龙虾 OpenClaw 端口放行策略:18789端口的安全配置

发布于 2026-04-01 04:00:59 · 浏览 3 次 · 评论 0 条

龙虾 OpenClaw 端口放行策略:18789端口的安全配置


一、背景与目标

OpenClaw 是一款用于高性能计算与分布式任务调度的中间件,其默认服务端口为 18789。在实际部署中,若未正确配置防火墙或安全组规则,可能导致服务无法被外部访问,或存在安全风险。本文将手把手带你完成 OpenClaw 18789 端口的放行配置,确保服务可被安全访问。


二、准备工作

在开始配置前,请确认以下几点:

  • 你已拥有 OpenClaw 服务的部署环境(如 Linux 服务器)。
  • 你拥有该服务器的 root 或 sudo 权限。
  • 你已了解 OpenClaw 的服务进程名称(通常为 openclawd)。
  • 你已确认 18789 端口为 OpenClaw 的唯一对外服务端口(避免与其他服务冲突)。

三、步骤一:确认 OpenClaw 服务是否运行

执行以下命令检查 OpenClaw 服务状态:

systemctl status openclawd

如果服务未运行,需先启动:

systemctl start openclawd

四、步骤二:查看 OpenClaw 服务监听的端口

执行以下命令确认 18789 端口是否被监听:

netstat -tuln | grep 18789

或使用 ss 命令:

ss -tuln | grep 18789

输出应包含类似内容:

tcp    0    0 0.0.0.0:18789 0.0.0.0:* LISTEN

说明 OpenClaw 已在 18789 端口监听,等待连接。


五、步骤三:配置防火墙放行 18789 端口

根据你的操作系统,选择以下任一方式配置防火墙规则:

5.1 Ubuntu / Debian(使用 UFW)

启用 UFW(若未启用):

sudo ufw enable

添加 18789 端口放行规则:

sudo ufw allow 18789

查看当前规则:

sudo ufw status

输出应包含:

18789/tcp ALLOW Anywhere

5.2 CentOS / RHEL(使用 firewalld)

启动 firewalld(若未启动):

sudo systemctl start firewalld

设置为开机自启(可选):

sudo systemctl enable firewalld

添加 18789 端口放行规则:

sudo firewall-cmd --permanent --add-port=18789/tcp

重新加载配置:

sudo firewall-cmd --reload

查看当前规则:

sudo firewall-cmd --list-all

输出应包含:

public
  ports: 18789/tcp

5.3 其他系统(如 OpenBSD、FreeBSD)

使用 pf(OpenBSD)或 ipfw(FreeBSD):

OpenBSD(pf):

编辑 /etc/pf.conf,添加:

pass in quick on $ext_if proto tcp from any to any port 18789

然后加载规则:

sudo pfctl -f /etc/pf.conf

FreeBSD(ipfw):

添加规则:

sudo ipfw add 100 allow tcp from any to any port 18789

六、步骤四:配置云服务商安全组(如 AWS、阿里云、腾讯云)

如果你的 OpenClaw 服务部署在云服务器上,还需在云控制台配置安全组规则,放行 18789 端口。

6.1 AWS EC2

  1. 进入 AWS 控制台 → EC2 → 安全组。
  2. 选择你的安全组 → 编辑入站规则。
  3. 添加一条规则:
    • 类型:所有(或 TCP)
    • 协议:TCP
    • 端口范围:18789
    • 源:0.0.0.0/0(或指定 IP 范围)
  4. 保存规则。

6.2 阿里云 ECS

  1. 进入阿里云控制台 → 云服务器 ECS → 安全组。
  2. 选择你的 ECS 实例 → 配置安全组。
  3. 添加一条入方向规则:
    • 协议类型:TCP
    • 端口范围:18789
    • 授权对象:0.0.0.0/0
  4. 保存并应用。

七、步骤五:验证端口是否可访问

7.1 本地测试(若服务在本机)

telnet 127.0.0.1 18789

或使用 nc

nc -zv 127.0.0.1 18789

输出应为:

Connection to 127.0.0.1 port 18789 [tcp/*] succeeded!

7.2 远程测试(若服务在远程服务器)

从另一台机器执行:

telnet <你的服务器IP> 18789

或:

nc -zv <你的服务器IP> 18789

八、步骤六:(可选)配置 OpenClaw 服务绑定特定 IP(增强安全性)

默认情况下,OpenClaw 可能监听所有 IP(0.0.0.0)。为提升安全性,建议将其绑定到特定 IP(如服务器的公网 IP)。

8.1 找到 OpenClaw 配置文件

通常位于:

/etc/openclaw/openclaw.conf

或:

/usr/local/etc/openclaw/openclaw.conf

8.2 编辑配置文件

找到 listenbind 配置项,修改为:

listen = 0.0.0.0:18789

改为:

listen = <你的公网IP>:18789

例如:

listen = 123.45.67.89:18789

8.3 重启服务

systemctl restart openclawd

九、步骤七:(可选)配置访问控制列表(ACL)

OpenClaw 支持基于 IP 的访问控制。你可以在配置文件中添加 access_control 部分,限制哪些 IP 可以访问 18789 端口。

9.1 编辑配置文件

openclaw.conf 中添加:

access_control {
    allow 123.45.67.89/32
    deny 0.0.0.0/0
}

9.2 重启服务

systemctl restart openclawd

十、总结:关键配置项检查清单

项目 状态 检查命令
OpenClaw 服务是否运行 systemctl status openclawd
18789 端口是否监听 netstat -tuln | grep 18789
防火墙是否放行 18789 sudo ufw statussudo firewall-cmd --list-all
云安全组是否放行 18789 云控制台确认
服务是否绑定特定 IP netstat -tuln | grep 18789
是否配置了访问控制 查看 openclaw.conf

十一、常见问题与解决方案

11.1 端口被占用?

执行:

lsof -i :18789

若发现其他进程占用,可终止:

sudo kill -9 <PID>

11.2 防火墙规则未生效?

重启防火墙服务:

sudo systemctl restart ufw

或:

sudo systemctl restart firewalld

11.3 云安全组未生效?

检查规则是否添加到正确的安全组,并确认 ECS 实例是否在该安全组中。


十二、附录:OpenClaw 配置文件关键字段说明

字段 说明
listen 指定服务监听的 IP 和端口,如 0.0.0.0:18789
access_control 配置允许或拒绝访问的 IP 列表
log_level 日志级别,如 infodebug
max_connections 最大连接数

通过以上步骤,你已成功完成 OpenClaw 18789 端口的放行配置。整个过程无需图形界面,纯命令行操作,适合自动化部署与运维场景。

评论 (0)

暂无评论,快来抢沙发吧!

扫一扫,手机查看

扫描上方二维码,在手机上查看本文