小众软件上看到的一个开源小工具:FtpServer,一键开启 FTP 文件服务器,方便其他设备通过网络传输、管理文件,支持 IPv4/IPv6 、多用户、 FTPS 。
放在 Chrome 标签栏很久了,今天有空整理过来收藏。
「FtpServer(FTP服务器)开源小工具:https://uxtt.com/ftpserver」项目主页:https://github.com/jark006/FtpServer
FtpServer 使用说明
作者写的说明书很详细,贴过来备忘。
FTPS 配置
软件默认使用 FTP 明文传输数据,如果数据比较敏感,或者网络环境不安全,则可以按以下步骤开启 FTPS 加密传输数据。
「FtpServer(FTP服务器)开源小工具:https://uxtt.com/ftpserver」在
Linux
或MinGW64
终端使用openssl
(命令如下,需填入一些简单信息: 地区/名字/Email 等) 生成 SSL 证书文件 (ftpServer.key 和 ftpServer.crt),不要重命名
文件为其他名称。openssl req -x509 -newkey rsa:2048 -keyout ftpServer.key -out ftpServer.crt -nodes -days 36500
直接将
ftpServer.key
和ftpServer.crt
放到程序所在目录,开启服务时若存在这两个文件,则启用加密传输FTPS [TLS/SSL 显式加密, TLSv1.3]
。Windows 文件管理器对
「FtpServer(FTP服务器)开源小工具:https://uxtt.com/ftpserver」显式 FTPS
支持不佳,推荐使用开源软件WinSCP
客户端,对 FTPS 支持比较好。开启
FTPS 加密传输
后会影响传输性能,最大传输速度会降到50MiB/s
左右。若对网络安全没那么高要求,不建议加密。多用户配置
一般单人使用时,只需在软件主页面设置用户名和密码即可。如果需要开放给多人使用,可以按以下步骤建立多个用户,分配不同的读写权限和根目录。
在主程序所在目录新建文件
「FtpServer(FTP服务器)开源小工具:https://uxtt.com/ftpserver」FtpServerUserList.csv
,使用Excel
或文本编辑器 (需熟悉 csv 文件格式) 编辑,一行一个配置:
- 第一列:用户名,限定英文大小写/数字。
- 第二列:密码,限定英文大小写/数字/符号。
- 第三列:权限,详细配置如下。
- 第四列:根目录路径。
配置文件样例
JARK006 123456 readonly D:\Downloads JARK007 456789 readwrite D:\Data JARK008 abc123 只读 D:\FtpRoot JARK009 abc456 elradfmwMT D:\FtpRoot anonymous elr D:\FtpRoot ... 注: anonymous 是匿名用户,允许不设密码,其他用户必须设置密码。
详细权限配置:
- 使用
readonly
或只读
设置为只读权限
。- 使用
readwrite
或读写
设置为读写权限
。- 使用
自定义
权限设置, 从以下权限挑选自行组合 (注意大小写) 。参考链接:pyftpdlib.authorizers.DummyAuthorizer.add_user
读取权限:
e
: 更改目录 (CWD 命令)l
: 列出文件 (LIST 、 NLST 、 STAT 、 MLSD 、 MLST 、 SIZE 、 MDTM 命令)r
: 从服务器检索文件 (RETR 命令)写入权限:
a
: 将数据附加到现有文件 (APPE 命令)d
: 删除文件或目录 (DELE 、 RMD 命令)f
: 重命名文件或目录 (RNFR 、 RNTO 命令)m
: 创建目录 (MKD 命令)w
: 将文件存储到服务器 (STOR 、 STOU 命令)M
: 更改文件模式 (SITE CHMOD 命令)T
: 更新文件上次修改时间 (MFMT 命令)其他
- 若读取到有效配置,则自动
禁用
主页面的用户/密码设置。- 密码不要出现英文逗号
,
字符,以免和 csv 文本格式冲突。- 若不需要多用户配置,可将配置文件
删除
或重命名
为其他名称。- 配置文件可以是 UTF-8 或 GBK 编码。
FtpServer 下载
Github 发布页:https://github.com/jark006/FtpServer/releases
FTP 文件服务器 v1.23
修复网速数值格式。
端口值留空可不启动。 (若只需 IPv4 服务,则可将 IPv6 端口留空,反之亦然)
其他优化。
软件有两种打包方式,二选一即可:
ftpServer.exe 为 pyinstaller 打包的单文件版本。
ftpServer_nuitka.7z 为 nuitka 编译打包的,运行效率高,非单文件。
相关资料
任何服务均有跑路风险,请注意防范!没有啥绝对好坏! 备用节点参考:大哥云、万城v-city、飞机云、搬瓦工JMS、极客云……
Comments:0