Windows Server 2019 搭建FTP站点

目录

1.添加IIS及FTP服务角色

2.创建FTP账户(用户名和密码)和组

3.设置共享文件夹的权限

4.添加及设置FTP站点

5.配置FTP防火墙支持

6.配置安全组策略

7.客户端测试

踩过的坑说明:


1.添加IIS及FTP服务角色

a.选择【开始】→【服务器管理器】

b.点击【添加角色和功能】

c.在弹出的"开始之前"对话框中,单击"下一步"

d.选择"基于角色或基于功能的安装",单击"下一步"

e.从服务器池中选择服务器,单击"下一步"

f.选择" Web服务器(IIS)",并在弹出的对话框中单击"添加功能",然后单击"下一步"

g.连续单击"下一步",到"角色服务"页面

h.选择"FTP服务器"以及 "IIS管理控制台",单击"下一步"

i.单击"安装",开始部署服务角色

j.安装完成后,单击"关闭"

2.创建FTP账户(用户名和密码)和组

创建Windows账户(用户名和密码)和组,用于FTP使用。如果您希望匿名用户可以访问,可以不创建FTP用户和密码。

a.在"服务器管理器"中,选择"仪表板> 工具 > 计算机管理"

b.选择"系统工具 > 本地用户和组 > 组",在右侧空白处右击,并选择"新建组"

c.选择"系统工具 > 本地用户和组 > 用户",在右侧空白处右击,并选择"新用户"设置"用户名"和"密码",此处用户名以"ftpadmin"为例

为ftpadmin用户添加【隶属于】组,添加设置ftp组

3.设置共享文件夹的权限

需要在FTP站点为共享给用户的文件夹设置访问及修改等权限

a.在服务器上创建一个供FTP使用的文件夹,选择文件夹,并单击右键选择"属性"。

此处以"work01"文件夹为例

b.在"安全"页签,选择"ftpadmin"用户和"ftp"组,单击"编辑"

4.添加及设置FTP站点

a.在"服务器管理器"中,选择"仪表板 > 工具 > Internet Information Services (IIS)管理器 "

b.选择"网站"并单击右键,然后选择"添加FTP站点"

c.在弹出的窗口中,填写FTP站点名称及共享文件夹的物理路径,然后单击"下一步" 此处站点名称以"FtpServer"为例

d.输入该弹性云服务器的公网IP地址以及端口号,并设置SSL,单击"下一步"

· 端口号 默认为21,也可自行设置。

· SSL根据需求进行设置。制作服务器证书

e.设置身份认证和授权信息,并单击"完成"

身份认证

匿名:允许任何仅提供用户名 "anonymous" 或 "ftp" 的用户访问内容

基本:需要用户提供有效用户名和密码才能访问内容。但是基本身份验证通过网络传输密码时不加密,因此建议在确认客户端和FTP服务器之间的网络连接安全时使用此身份验证方法。

授权

允许访问

所有用户:所有用户均可访问相应内容。

匿名用户:匿名用户可访问相应内容。

指定角色或用户组:仅指定的角色或用户组的成员才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的角色或用户组。

指定用户:仅指定的用户才能访问相应内容。如果选择此项,需要在下面输入框中输入指定的用户。

5.配置FTP防火墙支持

如果需要使用FTP服务器的被动模式,则需要配置FTP防火墙支持。

a.双击"FTP防火墙支持",打开FTP防火墙支持的配置界面

b.配置相关参数,并单击"应用"

数据通道端口范围:指定用于被动连接的端口范围。可指定的有效端口范围为1025-65535。请根据实际需求进行设置

防火墙的外部IP地址:输入该弹性云服务器的公网IP地址

c.重启云服务器使防火墙配置生效

6.配置安全组策略

搭建好FTP站点后,需要在安全组的入方向添加两条放行FTP端口的规则,一条端口为21,一条端口为5000-6000区间。

如果配置了"FTP防火墙支持",需要在安全组中同时放行FTP站点使用的端口和FTP防火墙使用的数据通道端口。

服务器防火墙默认放行TCP的21端口用于FTP服务。如果选用其他端口,需要在防火墙中添加一条放行此端口的入站规则。

7.客户端测试

打开客户端的计算机,在路径栏输入 "ftp://FTP服务器IP地址:FTP端口"(如果不填端口则默认访问21端口)。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。

踩过的坑说明:

1.因端口号没有在安全组入方向设置放行端口,导致无法访问

2.因设置FTP授权规则中设置用户导致访问FTP文件夹失败,目前FTP授权规则用户设为所有用户可正常访问FTP文件夹。

相关推荐
染指11103 小时前
45.第二阶段x86游戏实战2-hook监控实时抓取游戏lua
汇编·c++·windows·反游戏外挂·游戏逆向
我是苏苏17 小时前
Web开发:ABP框架6——appsetting.json的读取以及实例的注入
前端·windows·json
TPCloud17 小时前
windows 11编译安装ffmpeg(包含ffplay)
windows·ffmpeg·源码安装·mysys
password大鸭梨18 小时前
一个简单ASP.NET购物车设计
windows·microsoft·asp.net
Aniay_ivy19 小时前
Java中的不可变集合:性能与安全并重的最佳实践
java·windows·安全
积跬步至千里-积滴水成江海19 小时前
如何查看电脑关机时间
windows·系统安全
喜欢打篮球的普通人20 小时前
Rust面向对象特性
开发语言·windows·rust
晨曦_子画20 小时前
C#中:Any() 与 Count,选择哪一个??
开发语言·windows·c#
醇氧21 小时前
【Windows】CMD命令学习——系统命令
windows
人生の三重奏1 天前
windows虚拟环境搭建
windows·python·虚拟环境