用FileZilla搭建FTP服务器及相关问题

版本信息

注意大版本信息是否一致,小版本差别不大(仅供参考)!!

FileZilla的安装配置

因为在拷贝某些大文件的时候,Windows系统会有限制,经常拷贝失败,此时可考虑使用FTP Server来解决文件的传输问题,这里选择开源的FileZilla,专业实用快捷。版本没有强制要求,根据自身情况选择。

服务端的安装配置

建议在负责接收文件的操作系统上安装。

  1. 右键点击安装包,选择以管理员身份运行,选择“I Agree”,如下图:
  2. 接下来的配置默认即可,直接下一步(Next)


安装过程中,如下图:

  1. 安装完成,点击close关闭窗口。
  2. 勾选总是连接此服务,其他配置默认即可,然后点击连接(Connect)。
  3. 配置FileZilla Server的基本设置(General settings)
  4. 配置TLS加密设置,包含证书的生成步骤,其中填写的信息可随意。

    证书生成结果提示,如下图:

    证书密码(Key password)可自行选择是否设置,如下图:
  5. 配置端口与ip,如下图,根据自身情况修改IP,然后点击OK。

    服务启动后的提示信息如下图:
  6. 参照文档的防火墙配置方法,在防火墙中对端口14140-14149进行放行(添加入站规则端口)。
  7. 配置用户,如下图:

    设置用户密码,如下图:
  8. 为用户配置文件夹,如下图:

客户端的配置

客户端的安装跟其他软件没什么差别,自行选择安装路径进行安装。
1) 客户端的配置如下图:

2) 选择信任证书,如下图:

3) 连接成功,客户端提示,如下图:

4) 服务端提示如下图:

5) 文件传输,如下图:

问题与警告

  • 问题:You appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.
    解决方法:
    “Edit”-“Setting”或直接点击设置按钮(齿轮);
    选择“Passive mode settings”选项卡,勾选“Use the following IP:”并填写服务器的IP地址,之后点击“OK”保存;

    接下来的提示信息中不再提示上述问题;
  • 问题:响应: 425 Can't open data connection for transfer of "/"
    配置过程中没有设置“Use custom port range”,那么在客户端连接服务端读取目录时就会报此错误
    这个问题主要是由于使用Passive Mode模式造成的。
    解决方法:
    在上面的设置窗口中要勾选该项,设置端口范围,并在后面的防火墙设置中,将端口范围加入到入站端口中。
  • 警告:Warning: FTP over TLS is not enabled, users cannot securely log in.
    解决方法:启用TLS传输,具体操作如下:
    “Edit”-“Setting”或直接点击设置按钮(齿轮);
    选择“FTP over TLS settings”选项卡,点击“Generate new certificate...”;
    生成验证时Key size”根据自己的喜好选择即可,其他信息可以根据自己的情况随意填写,然后选择保存地址(最好放到安装路径下) “;
    其中的Common name(Server address)是连接时使用的域名或IP,如我这里填写pro.ftp.cool.com,后面用客户端连接时,主机(H)就填写pro.ftp.cool.com。同时还需要将该域名解析到FTP服务器的外网IP。Key size最好选择4096bit

    名称默认为“certificate.crt”就好,最终选择生成;
    提示“Certificate generated successfully”则说明生成没有问题,点击“确定”关闭弹窗;
    点击“OK”保存设置;
    之后的信息提示不再出现警告。
  • 接下来就是创建“Group”,“Users”并设置“Shared folders”不做详细解说,只需注意:
    1. 添加用户时为用户分配组;
    2. 为用户分配文件夹的权限,并指定Home文件夹(即“Set as home dir”,路径前出现“H”即可),如下图;
  • 端口设置
    默认端口:21,上面修改为14149
    加密端口:990,上面修改为14148 自定义的端口范围:14140-14149(根据自己的情况更改)
    可以自行设置,但是需要注意的是无论使用什么端口,在后面一定要添加到防火墙的入站规则中去。
    默认端口及加密端口可以自行更改。
  • 在本地安装客户端
    通过客户端连接服务器就可以了。
    初次连接时会提示如下,选择信任,确定即可。

2020-07-16 - FileZilla Pro 增加了对 Keystone V3、OneDrive 共享和 Amazon STS 的支持

添加对 OpenStack Swift Keystone v3 身份服务、OneDrive 共享和 Amazon Secure Token Service (STS) 的支持。FileZilla Pro 使其用户能够以更高的多功能性和安全性存储和共享文件。

2023-07-10 - FileZilla 客户端 3.65.0 发布

新功能:

  • 如果按路径排序,现在也可以使用比较搜索

错误修复和细微更改:

  • 修复了大写字母目录中比较搜索的问题

2023-06-30 - FileZilla 客户端 3.65.0-rc1 发布

错误修复和细微更改:

  • 修复了潜在的崩溃
  • 更新至 libfilezilla 0.44.0

2023-06-07 - FileZilla Server 1.7.2 发布

错误修复和细微更改:

  • 修复了创建 Let's Encrypt 证书时对“正在处理”订单状态的处理
  • 修复了应用设置时会话被踢出的问题

2022-09-19 - FileZilla Client 3.61.0 发布

错误修复和小改动:

  • 更新至libfilezilla 0.39.1

2022-09-07 - FileZilla Client 3.61.0-beta1 发布

新特性:

  • 使用libfilezilla改进的异步文件读取器/写入器

错误修复和次要更改:

  • 修复Site Manager中根项的导出
  • 处理更新程序中不存在下载目录的罕见情况

2022-07-29 - FileZilla Server 1.5.1 发布

错误修复和微小更改:

    • 修复了会话关闭且数据连接同时收到连接错误时的崩溃
    • MSW:通知区域图标现在在所有显示比例因子中再次显示
    • 管理用户界面:固定从"切换;使用系统凭据登录;到"需要密码才能登录;不适用

2022-07-22 - FileZilla Client 3.60.2 发布

错误修复和小改动:

    • 更新至libfilezilla 0.38.1,以解决子进程终止导致冻结的问题

2022-07-20 - FileZilla 服务器 1.5.0 发布

错误修正和小改动:

  • 管理 UI:如果同一主机名具有不同端口的多个已保存条目,则连接对话框不记得上次使用的端口

2022-07-12 - FileZilla 服务器 1.5.0-rc1 发布

新的功能:

  • 服务器:在尝试失败的情况下实施了登录尝试的限制。
  • 服务器:欢迎消息中的版本号现在可以通过将配置文件中消息字段的“has_version”属性设置为“false”来手动抑制。
  • MSW:如果服务在 SYSTEM 帐户下运行,配置文件现在放在 %PROGRAMDATA%\filezilla-server 下。这是为了解决在执行 Windows 更新时设置可能会被清除的问题。仍然驻留在 %LOCALAPPDATA%\filezilla-server 下的设置会自动迁移。
  • 与模拟子进程的通信现在是异步的
  • 管理 UI:配置对话框中的密码字段现在如何显示提示以告知用户如何保留现有密码

错误修正和小改动:

  • 管理 UI:修复了侦听器编辑器中的崩溃
  • 管理 UI (macOS):针对一些 wxWidgets 故障和故障实施了解决方法。
  • 管理 UI:无法再编辑 system_user 的名称(正确)
  • 无法序列化的配置数据现在可以防止将不完整的输出文件写入磁盘
  • 模仿者进程的突然死亡不再导致意外行为
  • 修复了在某些极端情况下由于意外套接字事件导致的服务器崩溃
  • MSW:由于工具链问题,使用线程局部变量的程序在退出时会崩溃。实施了一种解决方法,直到它被未来的 MinGW 工具链解决
  • 可能的工作线程数已减少到最大 256
  • FTP 服务器:NLST 命令现在报告符合 RFC 1123 的路径
  • 使用命令行参数 --config-version-check ignore 时,如果检测到不匹配,现在将预期版本写入设置文件
  • *nix:徽标图标不再嵌入在可执行文件中,而是安装到正确的系统路径
  • *nix:添加了 filezilla-server-gui.desktop 文件,以便桌面环境可以轻松打开 Admin UI
  • 日志文件轮换的最大数量已减少到更合理的数量,并且轮换算法已更改为更有效