用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(根据自己的情况更改)
    可以自行设置,但是需要注意的是无论使用什么端口,在后面一定要添加到防火墙的入站规则中去。
    默认端口及加密端口可以自行更改。
  • 在本地安装客户端
    通过客户端连接服务器就可以了。
    初次连接时会提示如下,选择信任,确定即可。

2022-02-14 - FileZilla Server 1.3.0 发布

新特性:

设置被动模式的配置向导

Linux:如果sysctl knob kernel.yama.ptrace_scope为0就会发出警告

Linux:如果sysctl knob fs. 0,拒绝运行。protected_hardlinks是0

bug修复和小更改:

管理UI:拒绝证书指纹提示不再触发自动重新连接

2022-02-11 - FileZilla 客户端 3.58.0 发布

bug修复和小更改:

如果已知存在的XML文件无法打开,则会出现更详细的错误消息

2022-02-03 - FileZilla 客户端 3.58.0-rc1 发布

新特性:

在TLS握手过程中,与FileZilla Server >=1.3.0协商自定义ALPN,以节省一些连接建立过程中的往返

准备FileZilla,以便将来FileZilla Server版本支持基于topp的2FA认证

bug修复和小更改:

在网络连接不可靠的情况下,使下载更新更加健壮

更新到libfilezilla 0.36.0

2021-12-25 - FileZilla Server 1.2.0 发布

错误修正和小改动:

设置 Let's Encrypt 证书的小可用性更改

2021-12-17 - FileZilla Server 1.2.0-rc1 发布

新特性:

创建 Debian 和 macOS 包
为挂载点引入了更细粒度的访问控制

错误修正和小改动:

MSW:禁止以空格或点结尾的文件和目录
如果用户被禁用,相应的会话现在被踢
Let's Encrypt 证书现在仅在使用时更新。
UI 现在允许您编辑用户信息,即使他们被禁用。
修复了对 Windows 上 UNC 路径的支持
修复了一些回归
Autoban 现在跨登录会话共享状态,这使其按预期工作。
现在,只要连接到 FileZilla FTP 服务器,UI 就会清楚地显示在日志中。

2021-12-10 - FileZilla 客户端 3.57.0 发布

错误修正和小改动:

修复了文件编辑的错误默认设置
修复了在文件列表中查找数据的崩溃
修复了在 TLS 握手期间取消 HTTPS 连接导致的崩溃
更新到 libfilezilla 0.35.0

2021-10-11 FileZilla客户端3.56.0发布

错误修复和小改动:

更新至libfilezilla 0.34.0

更新的翻译

2021-09-29 发布FileZilla客户端3.56.0-rc1

新功能:

现在,右键单击队列选项卡标题将打开与右键单击相应队列内容相同的上下文菜单

默认情况下,允许的最低TLS版本现在是TLS 1.2

或者,systen信任存储可用于证书验证

 

错误修复和小改动:

FTP:修复了密钥文件转换的问题

修复了加载不支持从存储恢复会话的服务器时出现的问题

2021-09-20 FileZilla服务器1.0.1发布

新功能:

管理界面中的日志消息现在使用与FileZilla客户端相同的方案着色,并自动向下滚动,除非用户另有决定。

 

错误修复和小改动:

Windows安装程序不再中断以前安装的日志记录设置

修复了在某些情况下导致传输失败的错误

修复了在管理界面的用户组选择中使用umlauts和其他非ASCII字符显示元音的问题

修复了各种各样的崩溃

固定可能的比赛条件

2020-10-20 - FileZilla 客户端 3.51.0 发布

bug修复和较小的变化:

  • 固定导入的网站保护不同的主密码
  • 目录比较现在正常工作与非默认的文件名排序设置
  • 小搜索对话框修复