我在迁移过程中遇到了一些复杂问题。我的主要角色是 Linux / Sun 管理员,已有 15 年,因此 Windows Server 2008 环境对我来说有点新,但可以理解。
以下是我们的状况和迁移的原因...
我们有一组开发人员使用 Visual C 和一些内联汇编程序开发非常低级的软件。所有工作站都彼此独立,这导致开发库、版本等出现一致性问题...
我们的目标是将它们全部放到 Windows 域中,这样我们就可以控制工作站安装、热修复(这可能会导致巨大的问题)、软件版本等...所有开发工作站都运行 Windows XP x32(sp3)和 x64(sp2)我遇到了用户权限问题,我想知道我可能在部署过程中错过了一、两件或几件事。
以下是我目前所做的:
- 安装并激活 Windows Server 2008
- 添加了 DNS 和 Active Directory 的角色
- 使用 WINS 配置 DNS 以使用 netbios 名称
- 将开发人员添加到 AD 并将他们的共享文件夹映射到他们的个人资料
- 为 IIS7 添加角色并配置开发人员 SVN
- 安装 MySQL 企业版以供开发使用
由于对组策略没有深入的了解,我还没有深入研究该领域。
我遇到的问题:1. 当我配置任何 XP 工作站登录我们的域时,一旦用户使用他们的新 AD 登录,一切都会顺利进行,只是他们有非常严格的权限。(例如:如果用户打开任何现有文件,他们没有写权限,除非在他们的文档文件夹中。)由于这些人正在处理低系统级事件,他们需要读写所有文件。我希望在软件安装中限制所有这些。
我是否正确地假设我可以使用 WSUS 来维护推送到工作站的域修补程序和更新?
我需要在用户登录时映射一个集中共享开发驱动器。这对每个人都开放。现在,我已通过用户的 AD 配置文件在登录时映射了用户文件夹。但如果我已经在 AD 中的配置文件中定义了共享,我该如何映射共享?
如有任何答复我将非常感激。
我是否必须为域用户配置并定义组策略?
我可以使用卷镜像来镜像/同步两个独立服务器上的两个驱动器吗?还是我应该只编写 rsync 或 MS Synctool 脚本?驱动器仅存储夜间系统映像。
答案1
我认为您设置域的操作没有任何问题。看起来您只需要进行相当基本的设置,而这正是您现在正在运行的。
首先你与开发人员的问题:
他们拥有严格限制访问权限的行为是 AD 按照设计工作的方式。默认情况下,当您加入域时,您的本地计算机组会发生以下情况:
- AD 域和企业管理员组已添加到本地管理员组
- AD 域用户被添加到本地用户组
因此,您的所有用户都(正确地)属于域用户组,并且只能以普通用户级别访问工作站。
至于解决方案。这有点困难,特别是在处理 Windows 系统上的低级访问时,并且可能取决于他们何时遇到问题。是当他们尝试测试运行程序时吗?是当他们在开发过程中尝试访问驱动器上的某些文件时吗?
我能想到的几个可能的解决方案:
- 让他们成为本地计算机上“高级用户”组的一部分。这样他们就可以拥有更高级别的访问权限,而无需成为完全管理员
- 使用进程探索器找出他们被挂断的文件/目录,并只授予他们对这些项目的权限
- 安装 VMWare 工作站,并为他们提供一个基础映像,他们可以复制该映像,然后在完成后删除该副本,这样他们就可以始终使用相同的基础映像(很尴尬并且可能不太可行,但我不记得 VMWare 工作站是否允许您进行快照)
现在开始回答你的问题。我会稍微打乱顺序,主要是因为其中 3 个或 4 个问题的答案是学习使用和热爱组策略。在我看来,组策略是这Windows 网络中的杀手级应用。我不会深入探讨如何在组策略中设置这些内容,因为对于这个问题来说,这有点太深奥了 - 但请在此站点上搜索并提出问题,这里有很多聪明的人和关于组策略的好信息。
就 WSUS 而言,是的,它将允许您配置 WSUS 向机器提供更新的几乎所有方面。补丁的实际授权是通过 WSUS 界面完成的。
对于驱动器映射,我个人倾向于不使用 AD 用户对象中的设置。正如您已经发现的那样,它非常不灵活。您可以执行以下两项操作之一,均使用组策略:
- 设置一个批处理文件,映射您想要映射的所有用户驱动器,并将其放入
\\<domain>\NETLOGON\<script_name>
组策略中并将其指定为登录脚本。 - 使用 GPO 中的托管首选项(抱歉,我忘记了确切的名称)用户策略来设置映射驱动器
对于你的系统镜像,如果你觉得合适,我建议你使用 rsync增量复制是一个更适合 Windows 的 Windows 移植版本。我会远离 sync toy,因为我发现它在大量复制时速度很慢。如果你想要另一个选项,你可以使用机器人复制或者丰富副本并编写一个计划任务来每晚复制文件。
答案2
好的,那么...我只是要根据情况解决问题。第一件事是为所有开发人员添加一个组,显然要把他们都放进去。然后在本地机器上将该组添加到适当的本地组。我的意思是 - 如果您希望他们成为管理员,请将您在 AD 中创建的开发人员组添加到本地管理员组(或高级用户,或您想要的任何组)。如果您想进一步了解他们能控制/不能控制什么,您必须使用组策略。
您正确地假设您可以使用 WSUS 来维护所有修补程序并使用它来推送它们 - 但是您需要设置策略以便本地计算机应用更新等。
您能解释一下集中共享开发驱动器的原因吗?它们都是从同一个目录开发的吗?您可以使用登录脚本实现第二次共享 - 但是我强烈建议使用源代码控制并让它们在本地开发,例如 subversion。
就卷镜像而言,只要两台机器都是 Windows 服务器,您就可以检查 DFS(分布式文件系统)来同步这两个驱动器。
我确信我错过了一些东西但这些只是乍一看的一些想法。
答案3
你已经走在正确的道路上了。
为了完成大多数你想做的事情,你需要了解组策略。它们将允许你做所有事情。
首先,在您的 Active Directory 中创建一个组织单位 (OU) 来转储所有这些管理员。GPO 通常应用于 OU,因此这意味着 OU 之外的每个人都不会获得他们的所有设置。
其次,您需要为该 OU 设置 GPO。GPO 将允许您:
- 指定要使用的 WSUS 服务器(用于强制更新)
- 除了配置文件中指定的驱动器外,还映射网络驱动器
- 允许或限制本地系统的访问权限
- 允许或限制安装软件的权限
- 甚至强制安装某些软件(以及其他适当配置的服务)
如果您要在两台独立的服务器上同步两个驱动器,并且它们都运行 Windows Server,请研究分布式文件系统 (DFS)。它将使两台服务器上的指定文件夹保持最新状态,提供单一访问点,并根据您在两台(或更多台)服务器之间的配置方式进行故障转移或负载平衡。
答案4
对于开发人员,您可能会发现让他们成为计算机的管理员(或高级用户)是合理的。您可以使用 GPO 覆盖“管理员”或“高级用户”或“XXXX 组”的“受限组”。
- 在 AD 中创建安全组
- 将开发人员添加到此安全组
- 在开发人员使用的计算机上应用 GPO,以便在“受限组”下拥有“管理员”
行政人员
您的域\企业管理员
您的域\域管理员
YOURDOMAIN\开发者安全组