sftpgo一个开源的sftp-ftp-webdav工具
sftpgo是一个轻量级的、高性能的文件传输服务器,具有可选的 HTTP/S、FTP/S 和 WebDAV 支持,支持多种存储后端:本地文件系统、加密本地文件系统、S3(兼容)对象存储、Google 云存储、Azure Blob 存储、SFTP
SFTPGo
Full-featured and highly configurable SFTP, HTTP/S, FTP/S and WebDAV server - S3, Google Cloud Storage, Azure Blob
SFTPGo特性
- 用户认证:支持密码和 SSH 密钥。
- 速率限制:设置用户上传和下载速度。
- 存储配额:限制用户存储空间。
- 日志记录:记录所有文件传输活动。
- 端到端加密:通过 SFTP 和 FTPS 保障数据安全。
- Web 管理界面:提供易用的 Web 管理界面。
- REST API:支持自动化和集成。
- 多语言支持:界面支持多种语言。
- 插件系统:通过插件扩展功能。
SFTPGo 适用于需要轻量级、高性能文件传输解决方案的场景。
docker部署sftpgo涉及到端口及卷
1.sftpgo涉及到端口
2022 用于 SFTP 服务。
8080 用于 Web 管理员用户界面。
8090 用于webdav
2.sftpgo使用两个主要卷
/srv/sftpgo 处理持久数据,SFTP/FTP/WebDAV 用户的默认主目录是 /srv/sftpgo/data/
/var/lib/sftpgo是容器内定义的 sftpgo系统用户的主目录,这也是容器工作目录使用默认配置时将在此处创建主机密钥
quickstart
1.image
drakkan/sftpgo:tag
ghcr.io/drakkan/sftpgo:tag
2.run
docker run --name some-sftpgo -p 8080:8080 -p 2022:2022 -d ghcr.io/drakkan/sftpgo:v2.5.4
define storage
1.建立本地存储目录
mkdir -p /data/sftpgo/{data,home}
chown -R 1000:1000 /data/sftpgo/
2.run container
docker run -d --name some-sftpgo \
-p 8080:8080 \
-p 2022:2022 \
-p 8090:8090 \
-v /data/sftpgo/data:/srv/sftpgo \
-v /data/sftpgo/home:/var/lib/sftpgo \
ghcr.io/drakkan/sftpgo:v2.5.4
3.创建管理账户及新建普通用户
http://172.24.20.70:8080/web/admin/setup
http://172.24.20.70:8080/web/admin/users
4.客户端登陆
http://172.24.20.70:8080/web/client/login
上传文件后存在在位置
[root@c9-70 ~]# ll /data/sftpgo/data/data/user1/
-rw-r--r--. 1 vagrant vagrant 6845845 Jun 13 01:27 charts-master.zip
[root@c9-70 ~]#
客户端登陆
客户端拖拽上传文件