目录

一、FTP Server 端配置

​ \1. 安装FTP角色

​ \2. 创建FTP账号

​ \3. 添加FTP站点

​ \4. 开放FTP服务器防火墙

二、FTP Client 端配置

​ \1. 开放FTP客户端防火墙

​ \2. 安装FTP测试工具

三、FTP主动传输模式测试

四、FTP被动传输模式测试

一、FTP Server 端配置

1. 安装FTP角色

添加角色和功能——》勾选“Web 服务器(IIS)”——》点击“添加功能”

img

只需要勾选“FTP 服务”即可,下一步

img

下一步,直到安装完成

img

2. 创建FTP账号

创建一个FTP用户账号,用于做测试(普通用户账号即可,这里暂时不需要添加任何权限)

img

3. 添加FTP站点

打开IIS管理器,在空白处右击——》添加FTP 站点

img

填写FTP站点名称和物理路径,然后点击下一步

img

测试环境,我这里没用到SSL证书,勾选“无SSL”,下一步

img

身份验证勾选“基本”,授权选择“指定用户”,并填写前面创建的FTP用户账号,赋予读、写权限,点击“完成”即可

img

定位到ftp物理路径(C:\inetpub\ftproot),右击ftproot文件夹——》属性——》安全——》编辑——》添加——》everyone,并赋予“写入”权限——》确定

img

创建一个空test.txt,用于测试

img

4. 开放FTP服务器防火墙

FTP服务器端开放默认入站TCP20、21端口:

img

这里为了测试方便,关闭了FTP服务器端和FTP客户端的OS内部防火墙,具体如下图:

img

二、FTP Client 端配置

1. 开放FTP客户端防火墙

img

2. 安装FTP测试工具

​ 这里使用FlashFXP工具做测试,安装过程(略)。

三、FTP主动传输模式测试

打开FlashFXP工具——》选项——》参数选择——》FTP——》切换数据连接模式到“主动模式(PORT)”——》确定

img

在FTP客户端,配置FlashFXP工具的FTP连接信息

img

以主动传输模式连接到FTP服务器端,上传一个2.98G的ftptest.zip压缩文件

img

导出ftp主动传输模式日志:

put-port.zip

观察FTP服务器端端口连接情况:

img

观察FTP客户端端口连接情况:

img

四、FTP被动传输模式测试

打开FlashFXP工具——》选项——》参数选择——》FTP——》切换数据连接模式到“被动模式(PASV)”——》确定

img

FTP被动传输模式,需要开放FTP服务器端高位动态端口

img

同样在FTP客户端测试,上传文件

img

导出被动传输模式日志信息:

put-passive.zip

观察FTP服务器端端口连接情况:

img

观察FTP客户端端口连接情况:

img

最后,可以对比一下FTP主动传输模式和被动传输模式的日志信息:

img

至此,FTP环境搭建和主、被动传输模式测试完成。

另外,附上参考文档:

​ https://slacksite.com/other/ftp.html

​ 之前FTP动态端口需要开放1024-65535,但由于现有受支持的Windows操作系统动态端口范围有调整为49152-65535,所以,本示例只是开放了49152-65535,原因如下:

img

img