默认 FTP 数据通道安全设置 <dataChannelSecurity>

概述

文件传输协议 (FTP) 支持称为服务器到服务器或第三方传输的功能。 在此情况下,FTP 客户端连接到两台服务器并进行身份验证,然后指示一台服务器发送数据,并指示另一台服务器接收数据。 这种操作模式并不安全,因为两个服务器无法相互进行身份验证。

默认情况下,FTP 7 服务强制要求会话的数据和控制通道必须具有匹配的客户端地址。 这是通过将 <dataChannelSecurity> 元素的 matchClientAddressForPortmatchClientAddressForPasv 属性都设置为 true 来实现的。这一默认配置会阻止第三方传输,因此不得修改。

注意

<dataChannelSecurity> 元素允许管理员禁用控制和数据通道的匹配客户端 IP 地址的实施。 但不建议对默认设置进行更改。 如果不强制执行匹配策略,恶意客户端可能会劫持数据通道并访问通过数据通道传输的信息。

兼容性

版本 说明
IIS 10.0 <dataChannelSecurity> 元素在 IIS 10.0 中未进行修改。
IIS 8.5 <dataChannelSecurity> 元素在 IIS 8.5 中未进行修改。
IIS 8.0 <dataChannelSecurity> 元素在 IIS 8.0 中未进行修改。
IIS 7.5 <security> 元素的 <dataChannelSecurity> 元素作为 IIS 7.5 的功能提供。
IIS 7.0 <security> 元素的 <dataChannelSecurity> 元素是在 IIS 7.0 的独立下载项 FTP 7.0 中引入的。
IIS 6.0 空值

注意

FTP 7.0 和 FTP 7.5 服务是 IIS 7.0 带外提供的,需要从以下 URL 下载和安装模块:

https://www.iis.net/expand/FTP

在 Windows 7 和 Windows Server 2008 R2 中,FTP 7.5 服务作为 IIS 7.5 的功能提供,因此无需再下载 FTP 服务。

安装

若要支持 Web 服务器的 FTP 发布,必须安装 FTP 服务。 为此,请按照以下步骤操作。

Windows Server 2012 或 Windows Server 2012 R2

  1. 在任务栏上,单击 “服务器管理器”。

  2. 在“服务器管理器”中,单击“管理”菜单,然后单击“添加角色和功能”。

  3. 在“添加角色和功能”向导中,单击“下一步”。 选择安装类型,然后单击“下一步”。 选择目标服务器,然后单击“下一步”。

  4. 在“服务器角色”页上,展开“Web 服务器(IIS)”,然后选择“FTP 服务器”

    注意

    若要支持 FTP 服务使用 ASP.Membership 身份验证或 IIS 管理器身份验证,除“FTP 服务”外还需选择“FTP 扩展性”
    Screenshot of the Windows Server 2012 or 2012 R 2 window showing Roles. F T P Extensibility is highlighted.

  5. 单击“下一步”,然后在“选择功能”页上,再次单击“下一步”。

  6. “确认安装选择”页上,单击“安装”

  7. 在“结果” 页面中单击“关闭”

Windows 8 或 Windows 8.1

  1. 在“开始”屏幕上,将指针一直移动到左下角,右键单击“开始”按钮,然后单击“控制面板”

  2. 在“控制面板”中,单击“程序与功能”,然后单击“打开或关闭 Windows 功能”。

  3. 展开“Internet Information Services”,然后选择“FTP 服务器”

    注意

    若要支持 FTP 服务使用 ASP.Membership 身份验证或 IIS 管理器身份验证,还需选择“FTP 扩展性”
    Screenshot of the Windows 8 or 8.1 features screen. F T P Extensibility is highlighted.

  4. 单击“确定”。

  5. 单击“关闭” 。

Windows Server 2008 R2

  1. 在任务栏上,单击“开始”,指向“管理工具”,然后单击“服务器管理器”。

  2. 在“服务器管理器”层次结构窗格中,展开“角色”,然后单击“Web 服务器(IIS)”。

  3. 在“Web 服务器 (IIS)”窗格中,滚动到“角色服务”部分,然后单击“添加角色服务”。

  4. 在“添加角色服务向导”的“选择角色服务”页,展开“FTP 服务器”。

  5. 选择“FTP 服务”。

    注意

    若要支持 FTP 服务使用 ASP.Membership 身份验证或 IIS 管理器身份验证,还需选择“FTP 扩展性”
    Screenshot of the Windows Server 2008 R 2 Add Role Services screen. The Select Role Services page is in the main pane.

  6. 单击 “下一步”

  7. “确认安装选择”页中,单击“安装”

  8. 在“结果” 页面中单击“关闭”

Windows 7

  1. 在任务栏上,单击“开始”,然后单击“控制面板”。

  2. 在“控制面板”中,单击“程序与功能”,然后单击“打开或关闭 Windows 功能”。

  3. 展开“Internet Information Services”,然后展开“FTP 服务器”

  4. 选择“FTP 服务”。

    注意

    若要支持 FTP 服务使用 ASP.Membership 身份验证或 IIS 管理器身份验证,还需选择“FTP 扩展性”
    Screenshot of the Windows 7 features window. F T P options are checked under the Internet Information Services section.

  5. 单击“确定”。

Windows Server 2008 或 Windows Vista

  1. 从以下 URL 下载安装包:

  2. 按照以下演练中的说明安装 FTP 服务:

操作方式

不应修改配置的 <dataChannelSecurity> 部分;因此,没有可用示例。

配置

特性

属性 说明
matchClientAddressForPort 可选的 Boolean 属性。

指定是否与 PORT/EPRT 命令中的客户端 IP 地址匹配。

默认值为 true
matchClientAddressForPasv 可选的 Boolean 属性。

指定是否与 PASV/EPSV 命令中的客户端 IP 地址匹配。

默认值为 true

子元素

无。

配置示例

不应修改配置的 <dataChannelSecurity> 部分;因此,没有可用示例。

代码示例

不应修改配置的 <dataChannelSecurity> 部分;因此,没有可用示例。