安全更新:Docker 镜像从 v0.4.0-rc.1 起已修复 FFmpeg MagicYUV 解码器漏洞 CVE-2026-8461(高危),使用旧镜像的实例请立即升级。查看 CVE 公告
安全更新:v0.4.0-beta.3 已修复 WebDAV 请求可导致服务进程终止的问题,旧版本实例请尽快升级。查看安全公告
SFTP 存储策略教程
适合什么时候用
Section titled “适合什么时候用”SFTP 适合这些场景:
- 已经有一台通过 SSH/SFTP 管理的文件服务器
- 目标存储是 NAS、传统服务器目录或只能通过 SFTP 暴露的存储
- 不希望浏览器直接访问存储后端,上传下载都可以由 AsterDrive 服务端中继
- 需要按用户、团队或文件大小把部分文件写到 SFTP 后端
如果你需要浏览器直传,优先看 S3 / MinIO / R2、Azure Blob Storage 或 腾讯云 COS。SFTP 的上传和下载都经过 AsterDrive 服务端。
先分清你要配哪几层
Section titled “先分清你要配哪几层”只创建 SFTP 存储策略还不够。用户或团队真正上传时,会先命中策略组,再由策略组规则分配到某条存储策略。
这篇用到的入口
Section titled “这篇用到的入口”| 你要做什么 | 入口 |
|---|---|
| 创建 SFTP 策略 | 管理 -> 存储策略 -> 新建策略 |
| 测试 SFTP 连接 | 管理 -> 存储策略 -> 测试连接 |
| 创建分流规则 | 管理 -> 策略组 |
| 给用户绑定策略组 | 管理 -> 用户 -> 用户详情 |
| 给团队绑定策略组 | 管理 -> 团队 -> 团队详情 |
1. 准备 SSH 账号和远程目录
Section titled “1. 准备 SSH 账号和远程目录”先在 SFTP 服务器上准备一个专用账号和目录,例如:
/srv/asterdrive建议只授予这个账号对目标目录的读写权限。AsterDrive 至少需要:
- 创建目录
- 写入文件
- 读取文件
- 删除文件
- 读取文件元数据
不要把管理员账号、root 账号或和其他应用共用的目录直接交给 AsterDrive。
2. 创建 SFTP 存储策略
Section titled “2. 创建 SFTP 存储策略”进入:
管理 -> 存储策略 -> 新建策略选择驱动类型:
sftp填写连接信息:
| 字段 | 示例 | 说明 |
|---|---|---|
| Endpoint | sftp://sftp.example.com:22 | SFTP 服务器地址 |
| SSH 用户名 | asterdrive | 用于登录 SFTP 服务器的账号 |
| SSH 密码 | ******** | 对应账号的密码 |
| 基础路径 | /srv/asterdrive | AsterDrive 写入对象时使用的远程根目录 |
| SSH 主机密钥指纹 | SHA256:... | 首次连接确认后填写 |
Endpoint 支持这些写法:
sftp://sftp.example.com:22sftp.example.comsftp.example.com:2222没有端口时默认使用 22。如果写了协议,只支持 sftp://。不要把用户名、密码、路径、query 或 fragment 放进 Endpoint;远程根目录放到“基础路径”,账号密码放到对应凭据字段。
3. 确认 SSH 主机密钥指纹
Section titled “3. 确认 SSH 主机密钥指纹”SFTP 策略默认拒绝未知主机密钥。第一次测试连接时,如果还没有保存 SSH 主机密钥指纹,连接会失败,并在诊断信息里返回服务器实际的 SHA256:... 指纹。
正确流程是:
- 先填写 Endpoint、SSH 用户名、SSH 密码和基础路径
- 点击连接测试
- 从失败诊断里读取服务器返回的
SHA256:...指纹 - 用可信渠道和服务器管理员确认这个指纹确实属于目标 SFTP 服务器
- 把确认后的指纹填入
SSH 主机密钥指纹 - 再次连接测试,确认通过后保存策略
4. 连接测试失败怎么查
Section titled “4. 连接测试失败怎么查”连接测试失败时,后台会显示可用于排查的原因。常见排查顺序:
- AsterDrive 服务器能否访问 Endpoint 和端口
- Endpoint 是否只包含 host 和可选端口
- SSH 用户名和密码是否正确
- 账号是否允许 SFTP 子系统
- 基础路径是否存在,或者账号是否有权限创建它
SSH 主机密钥指纹是否和服务器当前 host key 一致- 服务器防火墙、fail2ban 或连接数限制是否拒绝了登录
如果错误提示主机密钥不匹配,不要直接覆盖旧指纹。先确认服务器是否确实轮换了 host key。
5. 创建测试策略组并验收
Section titled “5. 创建测试策略组并验收”不要一上来直接改默认策略组。建议先创建一个测试策略组,绑定一个测试用户或测试团队,然后跑完整流程:
- 上传小文件
- 上传一个超过普通表单大小的大文件
- 下载文件
- 预览或公开分享一个普通文件
- 删除并恢复文件
- 确认 SFTP 服务器目标目录里出现对象文件
确认没有问题后,再把真实用户或团队切到包含 SFTP 策略的策略组。
迁移和修改边界
Section titled “迁移和修改边界”SSH 密码可以通过编辑策略轮换。编辑已保存策略时,密码字段留空会保留现有凭据。
当前能力边界
Section titled “当前能力边界”| 能力 | 当前行为 |
|---|---|
| 上传 | AsterDrive 服务端流式写入 SFTP |
| 下载 | AsterDrive 服务端从 SFTP 读取后返回给浏览器 |
| 浏览器直传 | 不支持 |
| 对象存储分片直传 | 不支持 |
| 预签名 URL | 不支持 |
| 容量观测 | 不支持统一容量查询 |
| Range 读取 | 支持高效 range 读取 |