![我是否应该将我的 Active Directory 公开到公共 Internet 以供远程用户使用?](https://linux22.com/image/626302/%E6%88%91%E6%98%AF%E5%90%A6%E5%BA%94%E8%AF%A5%E5%B0%86%E6%88%91%E7%9A%84%20Active%20Directory%20%E5%85%AC%E5%BC%80%E5%88%B0%E5%85%AC%E5%85%B1%20Internet%20%E4%BB%A5%E4%BE%9B%E8%BF%9C%E7%A8%8B%E7%94%A8%E6%88%B7%E4%BD%BF%E7%94%A8%EF%BC%9F.png)
我有一个客户,其员工全部由使用 Apple 和 Windows 7 PC/笔记本电脑的远程员工组成。
目前,用户无法通过域进行身份验证,但出于多种原因,组织希望朝这个方向发展。这些是公司拥有的机器,公司希望对帐户停用、组策略和一些轻度数据丢失预防(禁用远程媒体、USB 等)有一定的控制权。他们担心要求通过 VPN 身份验证才能访问 AD 会很麻烦,尤其是在离职员工和远程机器上的缓存凭据交汇的情况下。
组织中的大多数服务都是基于 Google 的(邮件、文件、聊天等),因此唯一的域服务是 DNS 和其 Cisco ASA VPN 的身份验证。
客户想了解为什么不能接受的向公众公开其域控制器。此外,是对于分布式远程劳动力来说,是否存在一个更容易接受的域结构?
编辑:
集中化被少数 Mac 客户端使用。
答案1
我之所以把这个作为答案发布,主要是因为每个人都有自己的“有根据的观点”,这些观点是基于经验、第三方信息、传闻和 IT 内部的部落知识,但这更像是“直接”来自微软的引文和阅读材料列表。我使用引文是因为我确信他们没有正确过滤员工的所有意见,但如果您正在寻找authoritative
直接来自微软的参考资料,这应该会有所帮助。
顺便提一句,我还认为说域控制器 == 活动目录非常容易,但事实并非如此。AD FS 代理和其他方式(基于表单的 OWA、EAS 等身份验证)提供了一种将 AD 本身“暴露”到 Web 的方法,以允许客户端至少尝试通过 AD 进行身份验证,而无需暴露 DC 本身。访问某人的 OWA 网站并尝试登录和 AD将要在后端 DC 上获取身份验证请求,因此 AD 在技术上是“暴露的”……但通过 SSL 进行保护并通过 Exchange 服务器进行代理。
引文 #1
在 Windows Azure 虚拟机上部署 Windows Server Active Directory 的指南
在您说“Azure 不是 AD”之前...您可以在 Azure VM 上部署 ADDS。
但引用相关内容:
切勿将 STS 直接暴露在互联网上。
作为一项最佳安全做法,请将 STS 实例置于防火墙后面,并将其连接到您的公司网络,以防止暴露在互联网上。这很重要,因为 STS 角色会颁发安全令牌。因此,它们应该受到与域控制器相同级别的保护。如果 STS 受到威胁,恶意用户就有能力向依赖方应用程序和信任组织中的其他 STS 发出可能包含他们选择的声明的访问令牌。
因此...不要将域控制器直接暴露给互联网。
引文 #2
Active Directory - AD LDS 的 UnicodePwd 之谜
将域控制器暴露在 Internet 上通常是一种不好的做法,无论这种暴露是直接来自生产环境还是通过外围网络。自然的替代方案是将运行 Active Directory 轻型目录服务 (AD LDS) 角色的 Windows Server 2008 服务器放置在外围网络中。
引文#3 - 不是来自 MS...但在展望未来时仍然有用
Active Directory 即服务?Azure、Intune 暗示云托管 AD 的未来
最后,没有一个好的“简短”答案能够满足将办公室从 AD 服务器中移除,转而使用 Azure 替代方案的目标。虽然微软对允许客户在 Azure 中的 Server 2012 和 2008 R2 机器上托管 Active Directory 域服务感到自满,但它们的实用性仅与您可以为员工提供的 VPN 连接一样好。DirectAccess 虽然是一项非常有前途的技术,但由于其自身不幸的局限性,它无能为力。
引文#4
使用单点登录和 Windows Azure 虚拟机部署 AD DS 或 AD FS 和 Office 365
域控制器和 AD FS 服务器不应直接暴露在 Internet 上,而应仅通过 VPN 进行访问
答案2
Active Directory (AD) 不是为此类部署而设计的。
产品设计中使用的威胁模型假设部署在“防火墙后面”,并在网络边界过滤一定数量的敌对行为者。虽然您当然可以强化 Windows Server 以使其暴露在公共网络中,但 Active Directory 的正确运行需要的安全态势显然比针对面向公众的网络强化的主机更松懈。很多必须从域控制器 (DC) 公开服务才能使 AD 正常工作。
Zoredache 在评论中的建议,特别是提到像 OpenVPN 这样作为具有证书身份验证的机器范围服务运行的东西,可能很合适。正如其他人提到的,DirectAccess 正是您所需要的,只是它没有您想要的跨平台支持。
顺便说一句:我曾考虑过使用基于证书的传输模式 IPSEC 将 AD 直接暴露给互联网,但实际上没有时间这样做。微软在 Windows Server 2008 / Vista 时间范围内进行了更改,据称可以使此操作可行,但我从未真正实施过。
答案3
其他人都说了什么。我对 Christopher Karel 提到的暴力破解尝试特别担心。 上届 Def Con 上的演讲主题是:
那么,您认为您的域控制器是安全的吗?
JUSTIN HENDRICKS 微软安全工程师
域控制器是组织的核心资产。一旦它们失灵,域中的所有内容都会失灵。组织会竭尽全力保护其域控制器,但他们往往无法妥善保护用于管理这些服务器的软件。
本演示将介绍通过滥用组织部署和使用的常用管理软件来获取域管理员的非常规方法。
Justin Hendricks 在 Office 365 安全团队工作,负责红队、渗透测试、安全研究、代码审查和工具开发。
我确信您能找到很多其他示例。我正在寻找有关域控制器和黑客的文章,希望能够获得有关如何快速找到 DC 等的描述,但我认为现在这样就够了。
答案4
不幸的是,DirectAccess 仅适用于 Win7+ 企业版,因为它是根据您的要求量身定制的。但如果不知道您的版本,并且您使用的是 MacOS,那么它将无法工作。
/编辑-看起来一些第三方声称他们有 Unices 的 DA 客户端:http://www.centrify.com/blogs/tomkemp/what_is_microsoft_directaccess_and_unix_linux_interoperability.asp
有可用的 MDM 解决方案可以满足您的需求;我们正在向处于类似情况的客户推出其中一种解决方案 (MAAS360)。