我的公司管理着许多远程服务器。这些服务器都是 Windows 服务器,分布在不同的托管公司/数据中心。它们的用途是 IIS Web 托管、SQL Server、缓存服务器、文件服务器。
目前,每个服务器都有一个用户帐户,所有员工在需要管理该服务器时都使用该帐户登录。(远非安全或理想)
我希望每个用户都有自己的凭证,并可能有能力集中管理这些用户帐户。
由于这些服务器不在同一个网络上——管理这个问题的最佳方法是什么?
a) 在每个盒子上为每个用户单独创建一个用户帐户?这意味着将用户帐户复制到每个盒子上,并在需要时手动撤销每个盒子上的访问权限。
b) 使用 Active Directory - 所有服务器都远程连接到中央 Active Directory(可能安装在数据中心的服务器上以确保高可用性)?当所有服务器都位于远程、不同的数据中心且不在同一网络上时,这会产生什么影响?
c) 遇到了 Azure Active Directory——不确定这是否可行?
答案1
您可以通过 powershell 和一些有用的脚本同时管理多个本地用户帐户。
您可以从以下两篇文章中找到启发。
https://mcpmag.com/articles/2015/04/15/reporting-on-local-accounts.aspx?m=1
https://mcpmag.com/articles/2015/05/07/local-user-accounts-with-powershell.aspx?m=1
答案2
你可能已经猜到了,你的解决方案理想情况下会通过活动目录。您的服务器应包含在由本地 Active Directory 域控制器管理的域中。如果您的站点彼此隔离或相距甚远,您可以将它们组织到每个站点分开的域中。
现在,拓扑结构可能会变得复杂。这就是我为您想到一个有趣的解决方案的原因:具有密码写回功能的 Azure Active Directory。 这意味着什么?
- Azure Active Directory,你已经知道它
- AAD 连接使用密码写回功能,您可以将身份从本地 AD 同步到 AAD,同时还可以在 AAD 中更改密码后同步回来
- 最后,作为拓扑,您将拥有不同的对应域(在不同的站点上安装 AD DC);无需将它们相互连接,它们只需连接到云(AAD)。请注意,您可能需要拥有多个 AAD 租户;但创建和管理任意数量的租户都没有问题。只需确保公司没有对云中的密码有合规性限制。
希望它能解决您的问题。