用FileZilla Server 1.9.4给Windows Server 2025搭建FTP服务端

FileZilla Server 是一款免费的开源 FTP 和 FTPS 服务器软件,分为服务器版和客户端版。服务器版原本只支持Windows操作系统,比如笔者曾长期使用过0.9.60版,那时候就只支持Windows操作系统。当时我们生产环境对FTP稳定性要求较高,比较多款FTP服务端后选择了Filezilla Server。Windows上还有一款很稳定的FTP服务端叫Serv-U(也支持Linux服务器),但Serv-U是收费软件,使用学习版容易招来律师函,有缘再分享Serv-U这款FTP软件。目前Filezilla官网也提供macOS、Linux(原生支持debian 11,其他发行版本的linxu需手动编译)的Server版本。FileZilla 免费客户端不仅支持 FTP,还支持基于 TLS 的 FTP (FTPS) 和 SFTP。它是根据 GNU 通用公共许可证条款免费分发的开源软件。客户端版还提供 FileZilla Pro版本,为 WebDAV、Amazon S3、Backblaze B2、Dropbox、Microsoft OneDrive、Google Drive、Microsoft Azure Blob 和文件存储以及 Google Cloud Storage 提供额外的协议支持。主要在免费版客户端版的基础上增加了云存储协议的功能,需通过官网或应用商店订阅,提供7天免费试用,之后年费约12.99美元/欧元。(价格需核实,网址我没打开https://filezillapro.com/)。不过对国内用户来说,Pro版本作用不大。Server端免费,加上免费的客户端已经非常香了。说明一下,现在官网还提供FileZilla Server with manual和     FileZilla Pro Enterprise Server两款FTP服务端收费版供选择。    

图片

本次分享讲解在Windows的Server安装和免费客户端使用。

Filezilla Server 演示系统环境:Windows Server 2025

Filezilla Client 演示系统环境:Windows 11 24H2          

1、下载安装包

官方网址:https://filezilla-project.org

点击Filezill Server菜单下面的Download,默认出来的就是Windows版本的下载按钮。点击Download Filezilla Server图标。    

图片

会出来三个版本,Filezilla Server版本免费,这个是我们需要下载的版本。带文档的版本收费,带SFTP和双因子认证功能的版本收费。毕竟咱们只要免费的,这两个收费版本就不考虑了。

图片

2、安装    

既然是Windows版的安装软件,那咱们直接双击exe安装文件,开启一路下一步之旅。

2.1、 同意协议

协议只有同意才能安装。这里要说一下,Server端只有英文,需要有一定英文基础,如果英文着实一般,看我的解释也行。

图片

2.2、 选择安装组件

默认是Full(完整)安装,默认就行,咱们安装大而全的。可根据需要选择Server only(仅服务端)、Administration only(仅管理端)、Custom(自定义)。点Next(下一步)。    

图片

2.3、 选择安装位置

默认就行,想修改的话自行指定安装位置。点Next(下一步)。

图片

    

2.4、 选择开始菜单目录

默认就行。点Next(下一步)。

图片

2.5、 选择服务器设置

选择“Install as service,started with Windows (default)”(以服务安装,默认随Windows一起启动)就行。“Install as service,started manually”(以服务安装,手动启动)。我因为服务器上已经安装过,所以默认是“Keep existing service settings”(保持已存在的服务器设置)。    

图片

勾选Start server after setup completes(安装完成后启动服务),点Next(下一步)。

图片

    

2.6、 管理设置

默认对所有用户生效(Start if user logs on,apply to all users(default)),可根据需要选择仅对当前用户生效(Start if user logs on,apply only to current user)、手动启动(start manually)。勾选下面的安装完成后打开管理员界面(Start administration interface after setup completes)。点Install(安装)。

图片

2.7、 生成管理员界面TLS认证指纹

认证指纹是自动生成的,在管理员界面可以查到,没必要记,直接点确定即可。    

图片

2.8、 安装完成

点Close关闭安装界面。

图片

    

           

3、管理员界面配置

因为我们前面选了安装完成启动服务并打开管理员界面,接下来我们对服务端进行配置。

3.1、 连接服务端

点Connect to Server。

图片

3.2、 连接设置

Host(主机)默认127.0.0.1,Port(端口)不用改,这里的端口不是FTP提供服务的端口,是管理员界面的端口,服务端口和管理员端口不一样是为了更安全。设置管理员密码。下面的保存密码和启动时自动连接服务都勾选上。点击OK。    

图片

可以看到管理员界面已经和FTP服务端连接上了。

图片

4、FTP服务端设置

点击Server菜单下的Configure(设置)进入设置页面。对于做好了的设置,我们可以利用导出设置和导入设置做备份和恢复。网络设置向导和测试FTP网络设置可以根据需要使用。我们主要使用Configure(设置)里面的功能进行配置。    

图片

4.1、 Server listeners(服务器监听)设置

Address(地址)里的0.0.0.0表示所有的IPv4地址开放,::表示对所有的IPv6地址开放。Port(端口)就是FTP对外提供服务的端口,我这里设置的是2121,大家可以根据需要修改为自己想要提供服务的端口,这里大家还记得管理端的端口和这个对外提供服务的端口两者有什么区别吗?不记得的话翻到开始重新看一遍吧。Protocol(协议)有三个选项:Explicit FTP over TLS and insecure plain FTP(显式FTPS和不安全普通FTP)、Require explicit FTP over TLS(要求强制使用显式FTPS)、Implicit FTP over TLS(deprecated)(隐式FTPS(不推荐))    

图片

这里要解释一下FTP over TLS (简称FTPS),是FTP通信上添加SSL(安全套接层)协议来实现加密传输。FTP over SSL有两种模式:Explicit FTP over TLS(显式FTPS)和Implicit FTP over TLS(隐式FTPS)。两种的区别主要如下:

特性

显式SSL

隐式SSL

端口

控制通道:21(默认),

数据通道:动态

控制通道:990,数据通道:动态

加密触发方式

客户端显式发送 AUTH 命令

连接建立后自动加密

兼容性         

高(支持明文与加密混合模式)

低(需客户端支持隐式SSL)

安全性

依赖客户端主动加密

全程强制加密

典型应用

需兼容旧系统的场景

高安全性要求的内部网络

看完了上面的对比,是不是还是没有明白两者的区别?哈哈,跟我一样。咱们只用记住显式FTPS兼容性更好一点而隐式FTPS安全性更高一点就行。绕了这个大个弯子,我只是想尽量能让大家明白配置里为什么选Explicit FTP over TLS and insecure plain FTP(显式FTPS和不安全普通FTP),只是这个更适合大部分FTP服务端使用场景而已。

这里扩展一下还有一个SFTP概念:基于SSH协议(端口22),全程加密,单端口传输,更易穿透防火墙。前文介绍过,这个功能不是免费的,在Pro版本中提供。

4.2、 Protocols settings(协议设置)

这个设置页里有4个页签,第一个是Autoban(自动封禁)功能。这里有3个输入框,分别是失败多少次、在多少秒内、封禁多少秒。比如第一个框内填10、第二个框内填60、第三个框填300,意思就是如果在60秒内输错密码10次就封禁这个访问IP 五分钟。    

图片

第二个页签是Timeouts(超时退出)设置,默认设置是60秒未登入自动退出,60分钟无活动自动退出。

图片

    

第三个页签是Performance(性能),设置多少线程、数据连接收的缓冲区多大、发的缓冲区多大。这个设置太精细了我就不设置了。

图片

第四个页签是filters(过滤),设置禁止的IP范围和允许的IP范围。

图片

    

4.2.1、 FTP和FTPS设置

这里有三个页签,第一个页签是Connetction Security(连接安全)。最低允许的TLS版本有1.3和1.2可供选择,1.3安全性更高,这里我选1.3。TLS证书选择自签名的Use a self-signed X.509 certificate 。另外两个选项是Provide a X.509 certificate and  private key(提供一个X.509证书和私钥,真没必要diy这些东西)、Use a Let’s encrypt® certificate(使用一个Let’s encrypt®的证书,这场景更没见过了,Let’s encrypt®是一个由非营利组织运营的免费、自动化、开放的证书颁发机构(CA))。

           

图片

第二个页签欢迎页就不说了。第三个页签Passive Mode(被动模式)。端口范围我使用是默认的49152-65534。    

图片

这里提一下FTP的主动模式(Active Mode)和被动模式(Passive Mode)的主要区别在于数据连接的建立方式,这直接影响客户端和服务器在网络环境(如防火墙或NAT)中的兼容性。两种模式的对比:

模式

主动模式(Active Mode)

被动模式(Passive Mode)

数据连接发起方

服务器主动连接客户端

客户端主动连接服务器

适用场景

客户端有公网IP且无防火墙限制

客户端位于防火墙/NAT后

端口使用         

服务器使用20端口作为数据端口

服务器随机开放高端口(如50000~60000)

防火墙友好性

需要客户端开放端口供服务器连接,易被防火墙拦截

客户端主动发起连接,通常更易穿透防火墙

           

两种模式配置对比(主动模式 vs 被动模式)

配置项

主动模式

被动模式

数据连接方向

服务器 → 客户端

客户端 → 服务器

服务器端口

控制端口:21,数据端口:20

控制端口:21,数据端口:随机高端口

防火墙要求

客户端需开放数据端口入站

服务器需开放高端口范围入站

           

从上面的截图可以看出,勾选了端口范围说明我们默认使用的被动模式,这也是大部分FTP默认使用的模式。

Public IP or hostname:(leave it empty to use the local IP)意思是留空就是使用本地IP,可以填入公网IP或者主机名,Retrieve public IP按钮是获取公网IP(我试了下读取是IPv6地址),勾选的Use local IP for local connections(Recommended)意思是推荐使用本地IP作为本地连接。这里说一下为什么推荐使用本地IP而不是公网IP,是因为如果服务器和客户端同时都有本地IP(比如我的测试服务器本地IP是192.168.68.131)和公网IP,使用本地IP进行FTP肯定会更安全一些。当然,这要结合实际使用场景来定,如果必须使用公网IP来进行FTP文件传输,那就做好安全防护,不然护网的时候肯定让你头疼。          

4.3、 Rights management(权限管理)

这是Filezilla Server一个很重要的设置。

测试服务器直接用的管理员连接的,这里默认就用连接的用户进行管理。    

图片

4.3.1、 Groups(组管理)

点开组管理,首先弹出一个提醒,让注意设置本地路径,直接关掉吧。

图片

讲一下Groups(组)和Users(用户)。通过“Groups”选项卡来配置用户组的权限,通过“Users”选项卡来配置单个用户的权限,后将用户添加到相应的组中以应用预设的权限规则。这样做的好处是,如果您需要更改一组用户的权限,只需修改该组的权限设置即可,无需单独调整每个用户的权限。拿学校做例子,我们可以为每个班级建立一个组,这个组默认能看到一些目录,这些目录默认设置一些目录的权限。这个班级的每个学生,又可以为每个人因选课的不同而设置不同的目录权限,这样可以做到非常精细化的目录组合管理。每个目录是读+写还是只读还是禁止、子文件夹是否继承父目录权限、目录结构是否可修改、本地目录不存在则创建。Virtual path(虚拟路径)设置为/(根目录),可以为组或者用户设置多个目录权限。Filters(过滤)前面有类似功能,Limits是对上传、下载速度等的设置,大家根据实际需要可以进行限制。    

图片

4.3.2、 Users(用户管理)    

注意设置本地路径的提示还是直接关掉吧。

图片

默认有个system user(系统用户),描述里有个提示“This user can impersonate any system user.(这个用户可以扮演任何系统用户)。这个用户是Filezilla Server自带的,我测试取消User is enabled(启用用户)的勾选也不影响使用。点Add添加我们需要的ftp用户,这里我设置的是账号是ftpuser。    

图片

跟前面说的组一样,我们可以添加多个ftp用户,为ftp用户设置一个或者多个目录,设置所属的组(默认能看到组权限设置可以看的目录),设置或者修改ftp密码,也可以为大家可以根据需要进行配置。

图片

             

4.3、 Administration(管理员界面)

前面设置过管理员端口,这里可以修改监听端口号,修改管理密码。

图片

但是尝试打开管理页面,点继续访问却点不能继续访问。不知道什么原因,知道原因的朋友可以教教我。

图片

    

           

4.4、 Logging(日志管理)

这里是设置日志相关的,想查看FTP日志知道去哪里找日志文件。

图片

4.5、 加密相关

这两个加密相关的,我没有修改。    

图片

           

5、防火墙设置

Filezilla Server 设置好了,接下来我们设置一下防火墙。打开Windows Server服务器的防火墙设置。    

图片

是设置入站规则还是出站规则呢?对于FTP服务器来说,只涉及外网访问服务器,不涉及服务器访问外网,所以是在防火墙的入站规则里打开端口,不修改出站规则。出站就是你访问别人,入站就是别人要访问你,创建入站和出站规则,从而阻挡或者允许特定程序或者端口进行连接。前文也讲过,Filezilla Server默认是被动模式,因此我们是要设置入站规则。    

图片

为端口2121和被动模式端口范围(49152-65534)新建入站放行规则。

图片

到此,就完成了Filezilla Server的配置和防火墙的设置。

6、访问FTP    

可以使用网页、资源管理器访问ftp://ip:port来访问FTP服务器

图片

也可以是Filezilla Client或者其他的FTP连接客户端访问。Filezilla客户端是中文的,很方便使用。

图片

今天的Filezilla Server设置就介绍到这里。    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/24649.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

es-head(es库-谷歌浏览器插件)

1.下载es-head插件压缩包,并解压缩 2.谷歌浏览器添加插件 3.使用

健康检查、k8s探针、Grails+Liquibase框架/health 404 Not Found排查及解决

概述 健康检查对于一个pod而言,其重要性不言而喻。 k8s通过探针来实现健康检查。 探针 k8s提供三种探针: 存活探针:livenessProbe就绪探针:readinessProbe启动探针:startupProbe 存活探针 存活探针决定何时重启…

5个GitHub热点开源项目!!

1.自托管 Moonlight 游戏串流服务:Sunshine 主语言:C,Star:14.4k,周增长:500 这是一个自托管的 Moonlight 游戏串流服务器端项目,支持所有 Moonlight 客户端。用户可以在自己电脑上搭建一个游戏…

【Linux C | 时间】localtime 的介绍、死机、死锁问题以及 localtime_r 函数的时区问题

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…

122. 买卖股票的最佳时机 II 反向递推的方法

下面是将你提供的代码整理成一篇Markdown格式的博客内容: 股票买卖的最大利润 问题描述 给定一个整数数组 prices,其中 prices[i] 是股票在第 i 天的价格。你可以选择在某一天买入股票,并在之后的某一天卖出股票。要求计算出你能够获得的最…

详解Tomcat下载安装以及IDEA配置Tomcat(2023最新)

目录 步骤一:首先确认自己是否已经安装JDK步骤二:下载安装Tomcat步骤三:Tomcat配置环境变量步骤四:验证Tomcat配置是否成功步骤五:为IDEA配置Tomcat 步骤一:首先确认自己是否已经安装JDK jdk各版本通用安…

html中的css

css (cascading style sheets,串联样式表,也叫层叠样式表) css规范一般约定: 1.存放CSS样式文件的目录一般命名为style或css。 2.在项目初期,会把不同类别的样式放于不同的CSS文件,是为了CSS编…

前端项目配置初始化

creat-vue 安装 https://cn.vuejs.org/guide/quick-start.html 官网复制npm安装语句 cmd窗口创建文件夹 npm create vue3.12.2安装webstorm启动vue项目 https://www.jetbrains.com/webstorm/download/other.html 2024.3.2.1 安装依赖 下载包node_modules package 运行服…

Java注解的原理

目录 问题: 作用: 原理: 注解的限制 拓展: 问题: 今天刷面经,发现自己不懂注解的原理,特此记录。 作用: 注解的作用主要是给编译器看的,让它帮忙生成一些代码,或者是帮忙检查…

seacmsv9注入管理员账号密码+orderby+limit

seacmsv9注入管理员账号密码 安装海洋CMS(seacms) 将upload文件夹里的文件全部上传至网页服务器后,执行以下操作: 请运行http://域名/install/index.php进行程序安装 SQL语句尝试注入 http://127.0.0.1/upload/comment/api/index.php?g…

【构建工具】Gradle Kotlin DSL中的大小写陷阱:BuildConfigField

在Android开发当中,BuildConfig是一个非常有用的功能,它允许我们在构建过程中定义常量,并在运行时使用它们。But!!当我们从传统的Groovy DSL迁移到Kotlin DSL时或者被Android Studio坑的时候,有一些细微的差…

AI如何改变传统工厂的生产模式?

随着第四次工业革命的浪潮席卷全球,制造业的数字化转型成为企业在竞争中脱颖而出的关键。过去,传统制造业往往依赖于大量的人工操作和低效率的管理流程,而如今,智能化、自动化、数据化已经成为未来制造业的必由之路。从车间到云端…

Redis

redis启动命令 默认端口启动redis: redis-server redis.windows.conf 指定端口9001和9002启动redis(需要新建配置文件,并修改配置文件port属性): redis-server .\redis-9001.conf redis-server .\redis-9002.conf 检查是否启动Redis &#…

洛谷 P8705:[蓝桥杯 2020 省 B1] 填空题之“试题 E :矩阵” ← 卡特兰数

【题目来源】 https://www.luogu.com.cn/problem/P8705 【题目描述】 把 1∼2020 放在 21010 的矩阵里。要求同一行中右边的比左边大,同一列中下边的比上边的大。一共有多少种方案? 答案很大,你只需要给出方案数除以 2020 的余数即可。 【答案提交】 …

ARM 处理器平台 eMMC Flash 存储磨损测试示例

By Toradex秦海 1). 简介 目前工业嵌入式 ARM 平台最常用的存储器件就是 eMMC Nand Flash 存储,而由于工业设备一般生命周期都比较长,eMMC 存储器件的磨损寿命对于整个设备来说至关重要,因此本文就基于 NXP i.MX8M Mini ARM 处理器平台演示…

14.二叉搜索树

二叉搜索树 1.概念 ⼆叉搜索树⼜称⼆叉排序树,它或者是⼀棵空树,或者是具有以下性质的⼆叉树: *若它的左⼦树不为空,则左⼦树上所有结点的值都⼩于等于根结点的值 *若它的右⼦树不为空,则右⼦树上所有结点的值都⼤于等于根结点…

8、HTTP/1.0和HTTP/1.1的区别【高频】

第一个是 长连接: HTTP/1.0 默认 短连接,(它也可以指定 Connection 首部字段的值为 Keep-Alive实现 长连接)而HTTP/1.1 默认支持 长连接,HTTP/1.1是基于 TCP/IP协议的,创建一个TCP连接是需要经过三次握手的…

【爬虫基础】第二部分 爬虫基础理论 P1/3

上节内容回顾:【爬虫基础】第一部分 网络通讯 P1/3-CSDN博客 【爬虫基础】第一部分 网络通讯-Socket套接字 P2/3-CSDN博客 【爬虫基础】第一部分 网络通讯-编程 P3/3-CSDN博客 爬虫相关文档,希望互相学习,共同进步 风123456789&#xff…

nss刷题5(misc)

[HUBUCTF 2022 新生赛]最简单的misc 打开后是一张图片,没有其他东西,分离不出来,看看lsb,红绿蓝都是0,看到头是png,重新保存为png,得到一张二维码 扫码得到flag [羊城杯 2021]签到题 是个动图…

清华大学DeepSeek文档下载,清华大学deepseek下载(完成版下载)

文章目录 前言一、清华大学DeepSeek使用手册下载二、清华大学DeepSeek使用手册思维导图 前言 这是一篇关于清华大学deepseek使用手册pdf的介绍性文章,主要介绍了DeepSeek的定义、功能、使用方法以及如何通过提示语设计优化AI性能。以下是对这些核心内容的简要概述&…