通过 LDAPS 从外部公开 Active Directory 是否安全?

信息安全 tls 验证 协议 活动目录 LDAP
2021-08-25 20:06:05

我们目前通过内部 LDAPS 访问 Active Directory 以进行身份​​验证和用户数据检索。通过 LDAP 公开这一点是常见的还是安全的?

附录 1:

我们的业务案例,基于云的远程托管 Web 应用程序需要使用本地 Active Directory 对最终用户进行身份验证。

3个回答

假设 LDAPS 服务器没有安全漏洞,将其暴露在广泛的 Internet 中应该不会比暴露 HTTPS Web 服务器的风险更大(并且不会更少)。使用 LDAPS(SSL 外部,传统上在端口 636,其中包含 LDAP 协议),服务器请求的身份验证将在 SSL 的保护下执行,所以这很好(假设身份验证密码像往常一样强)。

......但有一个警告。HTTPS 安全性的很大一部分是浏览器,即客户端,确保服务器的证书是正确的:验证关于一组信任锚的所有签名;撤销状态检查;验证预期的服务器名称是否确实出现在服务器证书中应该出现的位置。如果您通过某些软件访问 LDAPS 服务器,那么该软件应该应用相同类型的验证;但我怀疑大多数 LDAPS 客户端是否彻底。

一些云供应商需要对 AD 进行 LDAP 访问才能对用户进行身份验证......我可以在脑海中说出 10 个;所以在有限的范围内并不少见。

我会说在没有额外控制(VPN、身份验证等)的情况下向广泛的互联网(无 IP 过滤器)开放 LDAP 是不明智的

由于您将 LDAP 服务器暴露在额外的负载下,我会考虑它对其他依赖 AD 的应用程序(如 Exchange,甚至工作站身份验证)的影响。为此,您可能需要考虑在单独的逻辑站点中建立单独的 AD 服务器。(Exchange 倾向于接触站点中的所有 AD 服务器)

我不会说将 LDAP 服务暴露给 internett 是很常见的。你有什么商业案例来做这件事?这很像您不想将数据库服务器暴露给 Internett。它通常只能通过访问。DMZ 服务,而您的 LDAP 位于内部网络上。如果我对 port:389 进行 Shodan 搜索,我没有得到任何结果,而 MySQL 则得到大约 5528729 个结果。我认为可以肯定地说这并不常见。

与您向互联网公开的所有服务一样,它是否安全的答案取决于您如何强化系统。如果您在 internett 上不需要它,请不要把它放在那里。如果您确实需要它,请加强它并考虑将访问权限限制为只允许需要它的人访问。例如,如果这用于某种联合服务,我会考虑只信任来自有效联合服务器的 LDAP 连接。