FTPS(FTP over SSL)在 Windows 服务器上自 IIS 7.0 开始引入,当时它是一个独立的附加组件,需要单独下载。IIS 7.5 及以后的每个版本都内置了 FTPS 功能,因此只需安装 IIS 管理员和/或包含在 IIS 包中的 FTP 服务,即可设置安全的 FTP 连接。
在继续以下说明之前,请确保已考虑以下前提条件:
让我们描述添加支持 SSL 的 FTP 站点及其 SSL 设置的过程。
创建支持 SSL 的 FTP 站点
- 打开 IIS 管理员(运行 -> inetmgr -> 按回车键)。
- 将鼠标悬停在窗口左侧的 连接 面板上,点击 站点 节点,并在右侧的 操作 面板中按 添加 FTP 站点。

- 在 FTP 站点名称 字段中输入 FTP 站点的名称。在 物理路径 字段中指定根活页夹的路径。实际的 FTP 根活页夹的路径可能与示例中显示的路径不同。填写所有字段后,点击 下一步 继续。

- 在 绑定和 SSL 设置页面 上,有几个字段需要修改:
- IP 地址 - 增加 FTP 站点的特定 IP 地址或保留所有未分配选项。
- 端口 - 此字段包含 FTP 站点将通过的端口号。默认端口号是 21。
- 如果您打算托管多个 FTP 服务器,则应勾选 启用虚拟主机名 复选框,并填写相应字段。
- 在 SSL 子部分中应选择 允许 SSL 单选按钮。此选项将允许以安全或非安全模式连接到 FTP 站点,给 FTP 连接处理提供更大的灵活性。稍后将进一步详细说明如何在允许 SSL 和要求 SSL 之间切换整个 FTP 站点或特定通道。在这一点上,值得提的是,允许 SSL 的模式比要求 SSL 更可取,原因可参见 这里。
- 从 SSL 证书 子部分的下拉列表中选择预先导入的 SSL 证书。

完成所有设置后,点击下一步继续。 - 在 身份验证和授权信息 屏幕上,对于 身份验证 选择 基本,并在 授权 子部分中设置 FTP 站点的用户。有几种选择来设置用户及其权限,因此实际设置可能与屏幕截图中的设置不同。

完成后,点击 完成 以完成添加新的支持 SSL 的 FTP 站点。
为 FTP 站点配置其他 SSL 设置
一般而言,Windows 服务器和客户端之间的 FTP 通信分为控制通道(用于身份验证和发送 FTP 命令)和数据信道(用于数据传输)。
IIS 管理员和 FTP 服务提供灵活的设置,以便让 FTP 客户端决定 FTP 流量是否应该部分或完全加密。
| 控制通道策略 | 数据信道策略 | 描述 |
|---|---|---|
| SslAllow | SslAllow | 此配置允许客户端决定 FTP 会话的任何部分是否应被加密。 |
| SslRequireCredentialsOnly | SslAllow | 此配置保护 FTP 客户端的凭据不被窃听,并允许客户端决定数据传输是否应被加密。 |
| SslRequireCredentialsOnly | SslRequire | 此配置要求客户端的凭据必须是安全的,然后允许客户端决定 FTP 命令是否应被加密。不过,所有数据传输必须被加密。 |
| SslRequire | SslRequire | 此配置是最安全的——客户端必须在允许其他 FTP 命令之前,使用与 FTPS 相关的命令协商 SSL,并且所有数据传输必须被加密。 |
让我们看看如何使用 IIS 管理员修改上述设置:
- 在 IIS 主页上,选择新创建的 FTP 站点(如有需要,展开站点节点),然后双击站点主页部分中的 FTP SSL 设置 图标。

- 在 SSL 策略 部分,选择 自定义 单选按钮,然后点击 高级 以打开 高级 SSL 策略 设置。

- 在 高级 SSL 策略 屏幕中,有机会自定义控制和数据信道的特定设置,如上表所述。

- 设置完成后,单击 确定,然后在 IIS 管理员右侧的 操作 面板中点击 应用 以保存配置更改。
