IIS 8.0 FTP 登录尝试限制

作者:Robert McMurray

兼容性

版本 说明
IIS 8.0 FTP 登录尝试限制在 IIS 8.0 中引入。
IIS 7.5 FTP 登录尝试限制在 IIS 7.0 或 IIS 7.5 中不受支持。
IIS 7.0

问题

服务器的一个可能漏洞是通过 FTP 服务的暴力密码攻击。 由于用于 FTP 的帐户通常是主机操作系统上的物理用户帐户,因此在确定 FTP 服务器类型后,理论上可猜测管理用户名。 发现帐户名称后,恶意客户端可连接到服务器,并尝试对该帐户进行暴力攻击。 (例如:Windows 系统的“administrator”或 UNIX 系统的“root”。)

在 IIS 7.5 中,FTP 服务引入了扩展性 API,允许开发人员创建自定义身份验证提供程序,这允许非 Windows 帐户访问 FTP。 这大大减少了 FTP 服务的表面攻击区域,因为这些 FTP 帐户不是有效的 Windows 帐户,因此无法访问 FTP 服务之外的资源。 通过使用 IIS 7.5 中的 FTP 身份验证扩展性功能,Microsoft 为管理员提供了一种方法,通过创建自定义身份验证提供程序来降低对非 Windows 帐户的暴力攻击的可能性。 这些信息记录在以下文章中:

如何使用托管代码 (C#) 创建具有动态 IP 限制的 FTP 身份验证提供程序

解决方案

在适用于 Windows Server 2012 的 IIS 8.0 中,Microsoft 添加了内置网络安全功能,为所有登录提供此功能,而无需创建自定义身份验证提供程序。 在本演练中,我们将检查启用 FTP 登录限制所需的步骤,以防止对服务器的暴力攻击。

分步说明

先决条件:

  • 已安装 IIS 8.0 和 FTP 服务的 Windows Server 2012 计算机。

已知 bug 的解决方法:

此功能目前没有已知的 bug。

配置 FTP 以防止暴力攻击

可根据 FTP 客户端在用户指定的时间段内未能进行身份验证的次数,将 FTP 服务配置为拒绝对 FTP 服务的访问。 达到失败登录尝试次数后,服务器强行关闭 FTP 连接,并在超时期间阻止 FTP 客户端的 IP 地址访问 FTP 服务。

若要配置 FTP 服务以拒绝恶意用户访问 FTP 服务,请使用以下步骤:

  1. 在 Windows Server 2012 计算机上以管理员身份登录。
  2. 打开“Internet Information Services (IIS)管理器”
  3. 在“连接”窗格中突出显示服务器名称,然后在功能列表中双击“FTP 登录尝试限制”
    Screenshot of the Connections pane with a focus on the F T P Logon Attempt Restrictions option.
  4. 选中“启用 FTP 登录尝试限制”框,并指定 FTP 服务用于确定是否阻止 FTP 客户端访问的失败登录尝试次数和时间段
    Screenshot of the F T P Logon Attempt Restrictions screen.
  5. 单击“应用”。

“仅写入日志”选项不会阻止登录尝试。 而是记录条件已满足。 然后,IT 管理员可尝试不同的配置参数以评估设置在强制实施之前对用户的影响。

总结

在本演练中,你了解了通过在 Windows Server 2012 中配置新的 FTP 登录尝试限制功能,将 FTP 服务配置为拒绝恶意客户端攻击 FTP 服务器。

请注意,FTP 登录尝试限制是服务器级设置;不能基于每个站点设置单独的登录限制。 由于攻击者试图获取对服务器(而非单个站点)的访问权限,因此 FTP 服务将在服务器级阻止恶意用户的访问。