> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ironclaw.com/llms.txt
> Use this file to discover all available pages before exploring further.

# DigitalOcean Droplet

> 在 DigitalOcean Droplet 上托管 IronClaw

DigitalOcean 提供了一种简单且性价比高的云上运行方式。借助它的 Droplet 虚拟机，您可以在几分钟内完成部署。

本指南会带您创建一个 DigitalOcean Droplet，并对其进行基础加固，以便安全地运行 IronClaw 并将其暴露到互联网。

<Tip>
  如果您不想自己搭建基础设施，也可以在 [agent.near.ai](https://agent.near.ai) 上点几下就安装好 IronClaw。
</Tip>

***

## 创建 Droplet

注册 [DigitalOcean](https://cloud.digitalocean.com)，然后进入 [Droplets](https://cloud.digitalocean.com/droplets) 页面创建一个新的 Droplet。

<img src="https://mintcdn.com/nearai/NQ10ks4Pr2mhejYX/images/infrastructure/droplets/droplets-landing.png?fit=max&auto=format&n=NQ10ks4Pr2mhejYX&q=85&s=221a6fb5dcf85808a3f56794f3ff45cd" alt="droplets landing page" width="2666" height="1656" data-path="images/infrastructure/droplets/droplets-landing.png" />

建议选择 Ubuntu 作为操作系统，最好使用最新的 LTS 版本，并选择 `Basic` 套餐搭配 `Regular` 磁盘。目前这样的配置大约每月 \$4，足以覆盖大多数 IronClaw 使用场景。

<img src="https://mintcdn.com/nearai/NQ10ks4Pr2mhejYX/images/infrastructure/droplets/droplets-create.png?fit=max&auto=format&n=NQ10ks4Pr2mhejYX&q=85&s=efbff95628fc89e6652cbd190241c113" alt="droplets plan selection" width="2664" height="1692" data-path="images/infrastructure/droplets/droplets-create.png" />

要连接到您的 Droplet，您需要先配置 SSH 密钥。可以在本地机器上使用 `ssh-keygen` 生成一对新的 SSH 密钥，然后把公钥添加到您的 DigitalOcean 账号中。

```bash theme={null}
ssh-keygen -t rsa -b 4096
# 按提示保存密钥对（例如 id_rsa 和 id_rsa.pub）

# 读取公钥内容
cat ~/.ssh/id_rsa.pub
```

<Note>
  您也可以使用密码登录，但使用 SSH 密钥会更安全，也更推荐。请妥善保管私钥，不要与他人共享。
</Note>

***

## 访问您的 Droplet

Droplet 创建完成后，您可以使用 DigitalOcean 提供的 IP 地址通过 SSH 进行连接。

<img src="https://mintcdn.com/nearai/NQ10ks4Pr2mhejYX/images/infrastructure/droplets/droplet-ip.png?fit=max&auto=format&n=NQ10ks4Pr2mhejYX&q=85&s=624cf5f4f621d466de34b11c5f8ee78a" alt="droplet IP" width="2106" height="736" data-path="images/infrastructure/droplets/droplet-ip.png" />

在终端中，以 `root` 用户身份连接到您的 Droplet：

```bash theme={null}
# 将 <IP_ADDRESS> 替换为您的 Droplet IP 地址
ssh root@<IP_ADDRESS>
```

***

## 配置您的 Droplet

现在我们已经进入 Droplet，需要做一些初始配置。重点是不要继续长期使用 `root` 作为默认用户，同时还要通过防火墙等措施增强安全性。

### 更新系统

首先，确保系统处于最新状态：

```bash theme={null}
apt update && apt upgrade -y
```

### 创建新用户

良好的实践是创建一个具备 sudo 权限的新用户，而不是日常都使用 `root`。您可以创建一个新用户（例如 `ironclaw`），然后将它加入 sudo 组：

```bash theme={null}
adduser ironclaw
usermod -aG sudo ironclaw
```

由于后续需要使用这个新用户登录，您还需要把 SSH 密钥从 `root` 复制过去：

```bash theme={null}
# 为用户创建 .ssh 目录
mkdir -p /home/ironclaw/.ssh

# 复制当前 root 的 authorized_keys（如果希望使用相同的密钥）
cp ~/.ssh/authorized_keys /home/ironclaw/.ssh/authorized_keys

# 设置正确的权限（非常关键，否则 SSH 会忽略这些文件）
chown -R ironclaw:ironclaw /home/ironclaw/
chmod 700 /home/ironclaw/.ssh
chmod 600 /home/ironclaw/.ssh/authorized_keys
```

打开一个新的终端窗口，尝试用新用户登录，确认一切都能正常工作：

```bash theme={null}
ssh ironclaw@<IP_ADDRESS>
```

<Warning>
  在确认新用户可以成功登录之前，不要继续后续步骤。如果您在没有可用替代用户的情况下失去 `root` 访问权限，就只能重置整个 Droplet 并重新开始。
</Warning>

### 加固 SSH 访问

为了进一步增强 Droplet 的安全性，建议禁用 SSH 密码认证，并关闭 root 登录。

您可以编辑 SSH 配置文件 `/etc/ssh/sshd_config`，并设置以下参数：

```bash theme={null}
PasswordAuthentication no   # 只允许基于密钥的认证
Port 2222                   # 修改默认端口（可选，但有帮助）
```

然后重启 Droplet 以应用变更，并使用新端口再次尝试登录：

```bash theme={null}
ssh -p 2222 ironclaw@<IP_ADDRESS>
```

如果一切正常，就可以继续在 SSH 配置中设置 `PermitRootLogin no` 来禁用 root 登录，然后再次重启。

### 安装 Fail2Ban

为了进一步提升安全性，建议安装 Fail2Ban。它会监控日志文件，并自动封禁出现恶意行为的 IP 地址，从而帮助抵御暴力破解攻击。

```bash theme={null}
apt install fail2ban -y
systemctl enable fail2ban
systemctl start fail2ban
```

### 配置防火墙

另外，建议配置防火墙，只允许访问必要的端口。您可以使用 `ufw`（Uncomplicated Firewall）：

```bash theme={null}
sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp   # 允许新的 SSH 端口
sudo ufw allow 80/tcp     # 允许 HTTP（如果需要）
sudo ufw allow 443/tcp    # 允许 HTTPS（如果需要）
sudo ufw enable
```

***

## 安装 IronClaw

Droplet 创建并加固完成后，就可以开始安装 IronClaw 了。您可以按照[快速开始指南](/quickstart)中的安装步骤来完成部署。

```
# 安装 IronClaw
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/nearai/ironclaw/releases/latest/download/ironclaw-installer.sh | sh
```

安装后，直接启动 IronClaw 并按照提示完成配置：

```
ironclaw
```

<Tip>
  建议使用 `tmux` 或 `screen` 这样的会话管理器，以便在 SSH 会话之间轻松分离和恢复运行中的 IronClaw 进程。
</Tip>

***

## 下一步

接下来可以阅读[快速开始指南](/quickstart)，创建您的第一个智能体，把它连接到 Telegram，并开始探索 IronClaw 的能力。

如果您希望通过消息应用与智能体对话，请查看[频道](/channels/overview)文档，了解如何完成接入。

如果您需要让智能体执行依赖多个工具的复杂任务，请查看[扩展](/extensions/overview)文档。
