注意
如果你即将阅读本文,你应该已经了解了受支持的新式身份验证拓扑、ADAL 和关于新式身份验证配置的信息,但如果你不知道,则需要从以下文章开始:
新式身份验证不仅可实现更安全的身份验证方法(如 Two-Factor 身份验证或基于证书的身份验证),还可以执行用户授权,而无需用户名或密码。 很方便。
本文通过关闭网络外部、内部或两者中用于身份验证的旧方法,帮助填补因拒绝服务 (DOS Skype for Business) 攻击而利用的漏洞。 例如,帮助阻止 DOS 攻击的一个好方法是关闭 Windows 集成身份验证 (包括 NTLM 和 Kerberos) 。 在外部关闭 NTLM 并依赖于基于证书的身份验证有助于防止密码泄露。 这是因为 NTLM 使用密码凭据对用户进行身份验证,但基于证书的身份验证(由新式身份验证启用)不会。 这意味着减少 DOS 攻击的一个理想选择是在外部阻止 NTLM,并仅在其中使用基于证书的身份验证。
让我们开始吧。
你会有什么变化?
这些 cmdlet 适用于 SIP 和 Web 服务访问点。 尽管这两个通道使用不同的访问方法,但运行从 NTLM 和 Kerberos 到匿名访问的色域,但已考虑Skype for Business使用的所有标准方法。
如何获取 Get- 和 Set-CsAuthConfig cmdlet
这些 cmdlet 仅在 2018 年 7 月累积更新 (6.0.9319.534) 2015 Microsoft Skype for Business Server之后安装,然后,你便可以为 Skype for Business 服务器推出各种拓扑。
拓扑
请务必记住,这些是此方案中涉及的受支持拓扑! 例如,如果需要转到“支持”以获取有关阻止方法的帮助,则需要在以下类型之间进行配置。
重要
在下表和说明中,新式身份验证缩写为 MA,Windows 集成身份验证缩写为 Win。 提醒一下,Windows 集成身份验证由两种方法组成:NTLM 和 Kerberos 身份验证。 你需要知道这一点才能正确阅读表格!
外部 | 内部 | 参数 | |
---|---|---|---|
类型 1 | MA + Win | MA + Win | AllowAllExternallyAndInternally |
类型 2 | 马 | MA + Win | BlockWindowsAuthExternally |
类型 3 | 马 | 马 | BlockWindowsAuthExternallyAndInternally |
类型 4 | 马 | 赢 | BlockWindowsAuthExternallyAndModernAuthInternally |
类型 5 | MA + Win | 赢 | BlockModernAuthInternally |
类型 1 说明:这是为Skype for Business Server启用 MA 时的默认方案。 换句话说,这是配置 MA 时的 起点 。
类型 2 说明: 此拓扑 在外部阻止 NTLM,但允许不支持 ADAL) 的客户端在 内部工作的 NTLM 或 Kerberos (。 如果客户端支持 ADAL,它们会在内部使用 MA。
类型 3 说明: 此拓扑需要所有用户的 MA。 所有支持 ADAL 的客户端都在此拓扑中工作,例如,如果关闭密码和基于证书的身份验证,则不会使用密码。
类型 4 说明: 此拓扑 在外部 阻止 NTLM,在内部阻止 MA。 它允许所有客户端在内部使用旧式身份验证方法, (甚至支持 ADAL 的客户端) 。
类型 5 Description:在外部,新式 ADAL 客户端使用 MA,任何不支持 ADAL 的客户端都使用旧式身份验证方法。 但是, 在内部,所有客户端都 使用旧式身份验证 (包括所有支持 ADAL 的客户端) 。
在可用选项中,很容易忘记保护密码的目标。 请记住,理想情况是在外部使用 MA (例如,通过配置基于证书的身份验证) 来避免 DOS 攻击。 如果你在内部为新式客户端应用它,你还将针对Skype for Business Server DOS 攻击的网络提供未来证明。
为何在全局级别使用 Set-CsAuthConfig
cmdlet Set-CsAuthConfig
会影响注册器角色和 Web 服务角色的配置。
此 cmdlet 应在 Skype for Business 服务器的全局级别运行。 它可以在池级别运行,但不建议这样做,因为这会增加安装的复杂性。 通过在池级别运行这些命令,如果池没有 (包含的所有角色,例如,它没有 Web 服务) ,则只会为注册器角色设置设置。 在这种情况下,Web 服务将继续执行全局级别的设置,这可能会使行为 (混淆,尤其是在无意) 执行此作时。
如果客户端使用一个池中的注册器设置和另一个池中的 Web 服务设置,并且身份验证设置处于不一致状态,则客户端可能无法登录。
此外,如果池仅存在一个角色:
- Set - 将仅设置与存在的角色对应的设置。 由于 某些设置未 设置,因此不会发出任何特殊警告。
- Get - 将返回与存在的角色对应的设置,以及不存在的角色的全局设置。
- 如果池中不存在这两个角色,Set 和 Get 都将返回错误消息。
- 如果池中存在这两个角色,但未在池级别定义策略,则 Get- 将返回错误消息。
最好为这些值执行 Get -作,并在进行任何更改之前屏幕截图或记录其起始状态。 还可以考虑在 OneNote 中保留更改日志。
注意
注意:配置 CsAuthConfig 后,必须在每台计算机上运行 Enable-CsComputer,才能使设置生效。
重要
如果您使用的是 Lync Web Access (LWA) ,并且必须使用基于 Forms 的访问 (FBA) 进行外部访问,请重新配置 LWA,以便客户端可以通过匿名访问来访问它以支持这些方案。 同样,如果使用拨入 Pin,FBA 将仅阻止外部用户使用。 如果需要更改 PIN,则需要在内部登录到公司以执行此作。
注意
如果使用 BlockWindowsAuthExternally 参数在外部阻止 NTLM,请注意,这也在内部阻止了 SIP 通道的 NTLM。 但是,Skype for Business和 2010 之前的 Lync 客户端仍能够登录,因为它们将在内部通过 HTTP 使用 NTLM 进行登录,然后获取证书以通过 SIP 登录。 但是,在这种情况下,2010 年以前的客户端将无法在内部登录,你可能需要考虑升级这些应用程序,以便用户可以恢复安全功能。
重要
某些Skype for Business Web 应用程序不支持 MA。 因此,通过使用 BlockWindowsAuthExternallyAndInternally 方案,你将无法访问这些应用程序。 不支持 MA 的应用程序包括 Web 计划程序、拨入页、Skype for Business 控制面板 (CSCP) 和响应组设置页。
链接
有关 PowerShell 的详细信息::
有关如何使用命令或安装命令所需的 CU 的更多说明:
- Cmdlet 简报
- 2015 Skype for Business Server (常规) 汇报
- 2018 年 7 月Skype for Business Server 2015,核心组件 CU (6.0.9319.534)