SFTPGo 部署指南
SFTPGo 是一个功能强大的开源文件传输服务器,支持 SFTP、FTP/S、WebDAV 以及 HTTP/S,具备虚拟文件系统、用户管理、webhooks等特性。下面我们介绍两种常见的部署方式:Docker 部署 和 二进制部署为系统服务。
- 支持Web管理非常易用
- 开源无任何性能上和功能的限制

Docker 安装教程
🖥️ 环境准备
- 系统:RHEL 系列
- 网络:可访问外网,推荐使用国内镜像源(如清华大学 TUNA)
- 权限:root 或具备 sudo 权限的用户
🐳 安装 Docker CE
1. 添加 Docker 官方源
1 2
| yum install -y yum-utils yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
2. 替换为国内镜像源(推荐)
1
| sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
|
3. 安装 Docker 及相关组件
1
| yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
⚙️ 启动与配置
1. 启动 Docker 服务
1
| systemctl enable --now docker
|
2. 验证安装
1 2
| docker version docker info
|
3. 测试运行
如果输出 “Hello from Docker!” 说明安装成功。
📦 Docker Compose(插件版)
Docker 20.10+ 已集成 Compose 插件,直接使用:
🐳 一、Docker 部署
Docker 部署适合快速试用和容器化环境。
1. 拉取镜像
1
| docker pull drakkan/sftpgo:latest
|
2. 创建配置目录
1 2
| mkdir -p /opt/sftpgo/data mkdir -p /opt/sftpgo/config
|
3. 启动容器
1 2 3 4 5 6 7
| docker run -d \ --name sftpgo \ -p 2022:2022 \ -p 8080:8080 \ -v /opt/sftpgo/data:/var/lib/sftpgo \ -v /opt/sftpgo/config:/etc/sftpgo \ drakkan/sftpgo:latest
|
4. 验证运行
- 浏览器访问
http://<服务器IP>:8080
- 默认管理员账号:
admin / password(首次运行需修改)
5. Docker Compose 示例
更推荐使用 Compose 管理:
1 2 3 4 5 6 7 8 9 10 11
| services: sftpgo: image: drakkan/sftpgo:latest container_name: sftpgo ports: - "2022:2022" - "8080:8080" volumes: - /opt/sftpgo/data:/var/lib/sftpgo - /opt/sftpgo/config:/etc/sftpgo restart: unless-stopped
|
⚙️ 二、二进制部署为系统服务
这种方式适合传统服务器环境,便于与系统服务管理(systemd)集成。
1. 下载二进制包
前往 SFTPGo Releases 下载对应平台的压缩包,例如 Linux x86_64:
1 2
| wget https://github.com/drakkan/sftpgo/releases/download/v2.6.0/sftpgo_v2.6.0_linux_amd64.tar.gz tar -xzf sftpgo_v2.6.0_linux_amd64.tar.gz -C /usr/local/bin
|
2. 创建配置和数据目录
1 2
| mkdir -p /etc/sftpgo mkdir -p /var/lib/sftpgo
|
3. 初始化配置
1
| /usr/local/bin/sftpgo initprovider --config-dir /etc/sftpgo
|
4. 创建 systemd 服务文件
vim编辑 /etc/systemd/system/sftpgo.service:
1 2 3 4 5 6 7 8 9 10 11 12 13
| [Unit] Description=SFTPGo Service After=network.target
[Service] ExecStart=/usr/local/bin/sftpgo serve --config-dir /etc/sftpgo WorkingDirectory=/var/lib/sftpgo Restart=always User=sftpgo Group=sftpgo
[Install] WantedBy=multi-user.target
|
5. 创建运行用户
1 2
| useradd -r -s /bin/false sftpgo chown -R sftpgo:sftpgo /var/lib/sftpgo
|
6. 启动并设置开机自启
1 2 3 4
| systemctl daemon-reexec systemctl enable sftpgo systemctl start sftpgo systemctl status sftpgo
|
7. 验证
- SFTP:
sftp -P 2022 user@server_ip
- WebUI:
http://server_ip:8080
运维技术交流群
发送邮件到 ➡️ [email protected]
或者关注WX公众号:网工格物

博客(最先更新)
https://songxwn.com/