搭建FTP服务器(Windows)
简介
FTP(File Transfer Protocol,文件传输协议)是一种在计算机之间通过网络传输文件的标准协议,采用客户端-服务器架构,允许用户从远程服务器上传、下载、重命名、删除、查看文件和目录结构等操作。FTP有两种传输模式,区别如下:
- 主动模式(Active Mode)
- 客户端通过控制连接(默认端口21)向服务器发送命令,服务器随后主动通过数据连接(默认端口20)连接客户端指定的端口传输数据。
- 适用于客户端网络环境无防火墙限制的场景,但可能因防火墙阻止服务器主动连接而失效。
- 被动模式(Passive Mode)
本文介绍了如何使用Windows操作系统的L实例搭建FTP服务器。该指导具体操作以Windows Server 2019为例。
搭建FTP站点操作流程
Windows实例搭建FTP服务器的具体操作步骤如下:
前提条件
已购买Windows操作系统的L实例,且L实例为“运行中”状态。
操作步骤
- 远程登录L实例。
- 登录Flexus应用服务器L实例控制台。
- 在资源卡片上,单击
图标,单击“重置密码”,根据界面提示设置L实例的密码。 L实例无初始密码,创建L实例后,如需登录云主机,请先设置L实例的密码。如果已经设置过密码,请跳过此步骤。
更多详情请参见重置Flexus L实例密码。
- 单击资源卡片上的“远程登录”按钮,在弹出的登录窗口中,单击“VNC登录”,根据界面提示输入用户名密码登录Flexus L实例。用户名为root,密码为上一步设置的密码。
更多登录方式请参见登录方式概述。
- 添加IIS以及FTP服务角色。
- 创建FTP用户名及密码。
创建Windows用户名和密码,用于FTP使用。如果您希望匿名用户可以访问,可以不创建FTP用户和密码。
- 设置共享文件的权限。
需要在FTP站点为共享给用户的文件夹设置访问及修改等权限。
- 在服务器上创建一个供FTP使用的文件夹,选择文件夹,并单击右键选择“属性”。
- 在“安全”页签,选择 “Everyone”,单击“编辑”。
如果没有“Everyone”用户可以直接选择,需要先进行添加 ,添加方法请参见如何添加“Everyone”用户。

- 选择“Everyone”,然后根据需要,选择“Everyone”的权限,并单击“确定”。

- 添加及设置FTP站点。
- 在“服务器管理器”中,选择“仪表板 > 工具 > Internet Information Services (IIS)管理器 ”。
- 在“服务器管理器”中,选择“仪表板 > 工具 > Internet Information Services (IIS)管理器 ”。
- 在弹出的窗口中,填写FTP站点名称及共享文件夹的物理路径,然后单击“下一步(N)”。

- 输入L实例的私有IP地址以及端口号,并设置SSL,单击“下一步(N)”。
- 端口号 默认为21,也可自行设置 。
- SSL根据需要进行设置。
- 无: 不需要SSL加密。
- 允许:允许FTP服务器与客户端的非SSL和SSL连接。
- 需要:需要对FTP服务器和客户端之间的通信进行SSL加密。

- 设置身份认证和授权信息,并单击“完成”。
- 身份认证
- 匿名:允许任何仅提供用户名 “anonymous” 或 “ftp” 的用户访问内容。
- 基本:需要用户提供有效用户名和密码才能访问内容。但是基本身份验证通过网络传输密码时不加密,因此建议在确认客户端和FTP服务器之间的网络连接安全时使用此身份验证方法。
- 授权
- 允许访问
- 所有用户:所有用户均可访问相应内容。
- 匿名用户:匿名用户可访问相应内容。
- 指定角色或用户组:仅指定的角色或用户组的成员才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的角色或用户组。
- 指定用户:仅指定的用户才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的用户。
- 权限:选择经过授权的用户的“读取”和“写入”权限。
- 允许访问

- 身份认证
- (可选)配置FTP防火墙支持。
- 如果需要使用FTP服务器的被动模式,则需要配置FTP防火墙支持。
- 如果华为云上的服务器,例如其他L实例,需要通过公网IP地址访问本示例中L实例搭建的FTP服务器时,则需要配置FTP防火墙支持。
- 设置安全组。
搭建好FTP站点后,需要在L实例安全组的入方向添加放行FTP端口的规则,具体步骤参见配置Flexus L实例安全组规则。放通的端口请参考表1。
如果配置了“FTP防火墙支持”,需要在安全组中同时放行FTP站点使用的端口和FTP防火墙使用的数据通道端口。
服务器防火墙默认放行TCP的21端口用于FTP服务。如果选用其他端口,需要在防火墙中添加放行此端口的入站规则。
表1 设置安全组规则 优先级
策略
类型
协议端口
源地址
1
允许
IPv4
自定义TCP:20-21端口
0.0.0.0/0
1
允许
IPv4
自定义TCP:1024-65535间的端口(例如5000-6000)
0.0.0.0/0
安全组入方向规则的源地址设置为0.0.0.0/0或::/0,表示允许或拒绝所有外部IP地址访问您的实例,如果端口暴露到公网,可能导致网络入侵,造成业务中断、数据泄露或数据勒索等严重后果。建议您将安全组规则设置为仅允许已知的IP地址访问,如下一步骤中要访问FTP服务器的客户端的IP地址。
- 客户端测试。
打开客户端的计算机,可以是本地Windows计算机或者其他Windows系统的云服务器,在路径栏输入 “ftp://FTP服务器公网IP地址:FTP端口”,其中FTP服务器公网IP地址即本示例中的L实例公网IP地址,FTP端口不填则默认访问21端口。
弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。
如果没有配置“FTP防火墙支持”,客户端使用此方法访问FTP站点时,需要对IE浏览器进行设置,才能打开FTP的文件夹。打开IE浏览器,选择“设置 > Internet 选项 > 高级”。勾选“启用FTP文件夹视图”,取消勾选“使用被动FTP”。

您也可以在客户端上下载FileZilla进行文件传输等操作。
FAQ
使用Windows系统搭建FTP站点的更多信息请参见微软官方文档。



















