第3章 部署只读域控制器
Windows Server 2008提供了一种新类型的只读域控制器功能,用于管理分支机构。RODC主要适用于分支机构的用户较少、没有专业的IT技术人员支持以及物理安全性较差、连接到中心站点的网络带宽相对较低的环境中。分支机构的用户只要登录到RODC中,即可完成用户身份验证,并可以访问网络中的资源。不过,如果需要创建新用户或者更新用户权限,必须在域控制器中完成,然后同步到只读域控制器中。
3.1 基础知识
只读域控制器全称Read Only Domain Controllers,简称RODC,是Windows Server 2008提供的新域控制器类型。从字面即可理解,RODC首先是域控制器,然后使用的Active Directory数据库是只读的,是网络中可读写域控制器的只读副本。
3.1.1 RODC特性
1. 只读域控制器
RODC是可读写域控制器的一个副本域控制器,只能将可读写域控制器Active Directory数据库设置的允许缓存到RODC账户同步到RODC使用的Active Directory数据库中,注意只是Active Directory数据库的部分内容非完整Active Directory数据库。管理员无法对RODC使用的Active Directory数据库进行更改,如果RODC需要更改Active Directory数据库中的数据,更改的数据首先在可读写域控制器上更改完成,然后复制到RODC中。RODC支持从可读写域控制器到RODC的单项数据复制。可读写域控制器不会从RODC主动“拉”数据。RODC可以缓存授权的目标组和用户的密码。
2. 密码存储
默认情况下,RODC中不存储普通域用户、计算机密码。在不能保证域控制器安全性的情况下,即使RODC遗失,也不会影响到Active Directory的安全。
通过密码缓存策略可以定制缓存到RODC中的域用户以及计算机密码。密码缓存策略在可读写域控制器中设置。默认情况下,RODC只存储自己的计算机账户和一个用于RODC使用的Kerberos票据授权(KRBTGT)账户,此账户被可读写DC用来验证RODC身份。如果在RODC上启用密码缓存,只会影响缓存到本地计算机和用户账户。
3. 单向复制
可读写域控制器之间是双向复制,RODC和可读写域控制器之间复制为单向,RODC通过分布式文件系统(DFRS)从可读写域控制器复制数据,只能从读写域控制器“拉”数据,而不能向读写域控制器“推”数据。
4. 只读DNS
在RODC上可以部署DNS服务,RODC可以复制DNS所使用的所有应用程序目录分区(Application Directory Partition)中的数据,包括ForestDNSZones和DomainDNSZones,RODC支持客户端DNS请求,并完成DNS解析功能。在RODC上的DNS不支持客户端直接进行更新DNS纪录,因此RODC不会在所拥有的活动目录集成区域里面注册任何名称记录。
5. 管理RODC
在可读写域控制器中,服务器本地管理员和域管理员相同,都可以管理域控制器。RODC允许一个普通的域用户成为RODC的本地管理员,设置的域用户可以在RODC所在的区域执行管理任务,此用户在域中或者任何可读写的域控制器上没有管理权利,仅管理区域分支机构的权限,不会影响Active Directory整体安全性。
6. RODC域控制器管理员角色
RODC域控制器登录用户分为两种类型,分别为域控制器管理员和RODC域控制器管理员。
● 登录用户是RODC域控制器管理员,除了维护Active Directory数据库之外的其他管理职能,例如停止、启动AD DS域服务,可以执行其他正常的管理操作。
● 登录用户是域控制器管理员,域控制器管理员虽然是整个域的管理员但是连接到RODCAdmins域控制器之后,管理权限和RODC域控制器管理员权限相同,同样不能维护Active Directory数据库相关的任务。
7. Read-only Domain Controllers组
RODC域控制器部署成功后,默认添加到“Read-only Domain Controllers”组中,该组中的是Windows Server 2008专用的存储只读域控制器的专用组。改组隶属于“Denied RODC Password Replication Group”组,默认该组中的成员不能缓存到RODC域控制器中。
3.1.2 密码复制策略
密码复制策略决定可写域控制器中的用户可以缓存到RODC中。密码复制策略列出了允许缓存的账户以及明确拒绝缓存的账户。允许缓存的用户和计算机账户列表并不表示RODC一定缓存这些账户的密码。例如,管理员可以事先指定RODC缓存的任何账户。这样即使和中心站点的广域网链接脱机,RODC也可以对已经缓存的账户进行身份验证。
1. 密码复制策略允许列表和拒绝列表
Windows Server 2008中的AD DS域服务中引入了两个新的内置组,分别是“Allowed RODC Password Replication Group”和“Denied RODC Password Replication Group”,如图3-1所示。这两个组是RODC密码复制策略的默认允许列表和拒绝列表。拒绝列表的优先权高于允许列表。
图3-1 “Active Directory用户和计算机”控制台
默认情况下,“Allowed RODC Password Replication Group”不包含任何成员,如果将域用户添加到该组中,将被自动缓存到RODCAdmins域控制器中,在实际应用中,建议管理员创建新的安全组并将域用户添加到该组中,如图3-2所示。
图3-2 组属性
“Denied RODC Password Replication Group”包含下列成员:企业域控制器,企业只读域控制器,组策略创建者所有者,Domain Admins,证书发行者,Enterprise Admins,Schema Admins,Krbtgt账户,如图3-3所示。
图3-3 组成员对话框
每个RODC的允许列表和拒绝列表属性,以及域范围“Denied RODC Password Replication Group”和“Allowed RODC Password Replication Group”的组合为管理员方便的密码缓存模式。密码复制策略支持以下3个缓存模式:
● 不缓存任何账户。此模式提供最安全的配置,没有密码被缓存到RODC,除RODC计算机账户及其特殊krbtgt账户之外。此模式的优点是需要很少或者不需要对默认设置进行额外的管理配置。用户可以选择将自己的安全敏感用户组添加到默认的拒绝用户列表中。这样可以防止这些用户组意外包含在允许的用户列表中,而且还可以防止之后将其密码缓存在RODC上。
● 缓存大多数账户。此模式提供最简单的管理模式并且允许脱机操作。所有RODC的“允许列表”可以添加大部分用户或者组。“拒绝列表”不允许安全敏感的用户组,例如Domain Admins。但是,大多数用户都可以根据需要缓存其密码。此配置最适合于RODC的物理安全没有危险的环境。
● 缓存很少账户。此模式限制可以缓存的账户。管理员为特定物理位置RODC进行严格定义,即每个RODC都有其允许缓存的一组不同的用户和计算机账户。此模式的优点是万一出现广域网链路故障,缓存用户将从RODC中直接登录。同时,密码泄露的也得到有效控制。
2. 缓存密码过期
RODC缓存密码之后,密码将保留在RODC的Active Directory数据库中,如果出现下列条件之一,缓存的密码将过期:
● 用户更改密码。在此情况下,不从缓存中清除密码,但该密码不再有效。
● 相关的RODC的密码复制策略发生变化,将不再缓存用户的密码。
3.1.3 部署前提
1. 域控制器需求
同一个域中,至少有一个运行Windows Server 2008 R2的可读写域控制器作为RODC的复制伙伴。如果域内没有运行Windows Server 2008 R2的可读写域控制器,将不能部署RODC。该可读写域控制器必须包含“PDC操作主机”角色。
2. 功能级别
Windows Server 2008 R2的AD DS域服务的林功能级别至少是Windows Server 2003功能级别,建议使用Windows Server 2008功能级别。如果当前的功能级别是Windows Server 2003以下级别,必须提升林和域功能级别。
3.1.4 准备用户和组
在部署RODC域控制器之前,域管理员可以利用组的方式规划缓存到RODC域控制器中的用户,以及指派RODC域控制器的管理员权限。本例中指派域用户“王淑江”为RODC的域控制器管理员,域用户“刘晓辉”和域用户“王春海”为缓存到RODC域控制器中的用户。域用户“王淑江”添加到“RODCAdmins”组中(如图3-4 所示),域用户“刘晓辉”和域用户“王春海”添加到“RODCUsers”组中(如图3-5所示。)。
图3-4 准备用户和组之一
图3-5 准备用户和组之二
3.2 部署只读域控制器
安装只读域控制器之前,欲部署RODC的计算机可以加入域成为成员服务器,也可以是独立服务器。无论是否加入域,都可以通过“服务器管理器”部署RODC,也可以直接运行“Dcpromo.exe”部署RODC。本例以“Dcpromo.exe”命令行方式安装RODC。
3.2.1 部署只读域控制器
在部署RODC之前,必须先将服务器的DNS设置为域控制器的IP地址。本例中,服务器为独立服务器,运行“Dcpromo.exe”命令来安装RODC。
第1步,运行“Dcpromo.exe”命令,自动安装Active Directory需要的文件。完成后启动“欢迎使用Active Directory域服务安装向导”对话框。这里选择“使用高级模式安装”选项,如图3-6所示。
图3-6 Active Directory域服务安装向导之一
第2步,单击“下一步”按钮,显示如图3-7所示的“操作系统兼容性”对话框。
图3-7 Active Directory域服务安装向导之二
第4步,单击“下一步”按钮,显示如图3-8所示的“选择某一部署配置”对话框。选择“现有林”→“向现有域添加域控制器”选项。
图3-8 Active Directory域服务安装向导之三
第5步,单击“下一步”按钮,显示如图3-9所示的“网络凭据”对话框。由于当前服务器没有加入域,所以“我的当前登录凭据(域\用户名)”选项为不可选状态。
图3-9 Active Directory域服务安装向导之四
第6步,单击“设置”按钮,显示如图3-10所示“网络凭据”对话框。键入域管理员账户和密码。单击“确定”按钮,添加备用凭据。
图3-10 “网络凭据”对话框
第7步,单击“下一步”按钮,显示如图3-11所示的“选择域”对话框。安装向导自动查找book.com域的林根域。
图3-11 Active Directory域服务安装向导之五
第8步,单击“下一步”按钮,显示如图3-12所示的“请选择一个站点”对话框。为RODC选择一个站点,在本例中使用的是默认站点且只有一个站点。
图3-12 Active Directory域服务安装向导之六
第9步,单击“下一步”按钮,显示如图3-13所示的“其他域控制器选项”对话框。本例中安装DNS服务器、全局编录服务器,以及只读域控制器。
图3-13 Active Directory域服务安装向导之七
第10步,单击“下一步”按钮,显示如图3-14所示的“指定密码复制策略”对话框,设置允许域控制器缓存到RODC域控制器中的账户。在“组、用户和计算机”列表中,可以添加或者删除用户、组或计算机账户。密码复制策略决定用户或者计算机的凭据是否可以从可读写域控制器复制到RODC域控制器。如果策略允许,可读写域控制器将域用户缓存到RODC中。本例中允许“RODCUsers”组中的用户缓存到RODCAdmins域控制器中。
图3-14 Active Directory域服务安装向导之八
提示
如果管理员在安装向导中不设置缓存账户,RODC安装完成后,可读写域控制器中的“Active Directory用户和计算机”控制台可以缓存账户。
第11步,单击“添加”按钮,显示如图3-15所示的“添加组、用户和计算机”对话框。设置可以缓存到RODC域控制器中的用户、组和计算机。选择“允许该账户的密码复制到此RODC中”选项。
图3-15 “添加组、用户和计算机”对话框
第12步,单击“确定”按钮,显示“选择用户、计算机或组”对话框。单击“高级”按钮,再单击“立即查找”按钮,查找当前域中可用的用户、计算机或组。在“搜索结果”列表框中,选择“RODCUsers”组,如图3-16所示。
图3-16 “选择用户、计算机或组”高级对话框
第13步,连续单击“确定”按钮,返回到“指定密码复制策略”对话框,如图3-17所示。
图3-17 Active Directory域服务安装向导之九
第14步,单击“下一步”按钮,显示如图3-18所示的“用于RODC安装和关联的委派”对话框。设置管理RODC域控制器的管理账户。单击“设置”按钮,选择“RODCAdmins”组。
图3-18 Active Directory域服务安装向导之十
提示
如果多个用户具备对RODC域控制器的管理权限,建议创建一个用户组,赋予用户组管理RODC域控制器的权限。本例中的“RODCAdmins”组中的域用户具备对RODCAdmins域控制器的管理权限。
第15步,单击“下一步”按钮,显示如图3-19所示的“从介质安装”对话框。设置缓存账户的方法,提供两种缓存类型:通过域控制器复制数据和通过介质(共享或者光盘)复制。这里选择“通过网络从域控制器复制数据”选项。
图3-19 Active Directory域服务安装向导之十一
第16步,单击“下一步”按钮,显示“源域控制器”对话框。设置缓存账户的源域控制器,通常源域控制器是域中的第一台域控制器。可以让向导自动选择一个域控制器,也可由管理员手动指定。这里选择“使用此特定的域控制器”选项,并选择源域控制器,如图3-20所示。
图3-20 Active Directory域服务安装向导之十二
第17步,单击“下一步”按钮,显示如图3-21所示的“数据库、日志文件和SYSVOL的位置”对话框。建议将数据库、日志文件和SYSVOL文件夹分别存储在不同的物理磁盘中。
图3-21 Active Directory域服务安装向导之十三
第18步,单击“下一步”按钮,显示如图3-22所示的“目录服务还原模式的Adminstrator密码”对话框。目录服务还原密码必须使用符合强密码策略标准的密码。
图3-22 Active Directory域服务安装向导之十四
第19步,单击“下一步”按钮,显示如图3-23所示的“摘要”对话框,显示RODC的配置信息。
图3-23 Active Directory域服务安装向导之十五
第20步,单击“下一步”按钮,开始安装RODC,如图3-24所示。
图3-24 Active Directory域服务安装向导之十六
第21步,安装完成,显示如图3-25所示的“完成Active Directory域服务安装向导”对话框。
图3-25 Active Directory域服务安装向导之十七
第21步,单击“完成”按钮,关闭安装向导,显示如图3-26所示的提示框,提示管理员需要重新启动计算机。
图3-26 Active Directory域服务安装向导之十八
第22步,单击“立即重新启动”按钮,重新启动计算机,RODC域控制器安装成功。
3.2.2 验证RODC
RODC安装完成后,可以在域控制器和新安装的RODC控制器上验证是否成功安装。在域控制器上可以通过域控制器的类型验证,在RODC服务器上可以通过修改、创建Active Directory数据库的返回状态确认。
1. 域控制器状态
由于RODC是一种只读的控制器,在RODC部署完成后有明显的标识,域控制器类型标识为“只读”。
第1步,在域控制器上,打开“Active Directory用户和计算机”窗口,选择“book.com”→“Domain Controllers”选项,在右侧的窗口中,显示可以使用的域控制器列表,域控制器“RODC”的“DC类型”为“只读,GC”,说明RODC域控制器安装成功,如图3-27所示。
图3-27 域控制器验证
2. RODC域控制器状态
在RODC域控制器中,Active Directory数据库处于只读状态,RODC管理员不能创建任何对象和修改任何属性,通过这种方法也可以判断当前运行的控制器是否为RODC域控制器。
第1步,以RODCAdmins域控制器管理员身份(RODCAminds组中的用户)登录只读域控制器,打开“Active Directory用户和计算机”窗口,右击“book.com”,在弹出的快捷菜单中没有“新建”命令,如图3-28所示。
图3-28 功能菜单
第2步,选择“委派控制”选项,显示如图3-29所示的“控制委派向导”对话框,提示没有写入对象的权限。
图3-29 “控制委派向导”对话框
第3步,选择“提升域功能级别”选项,显示如图3-30所示的“提升域功能级别”对话框,提示“您没有足够的权限提升此域功能级别”。
图3-30 “提升域功能级别”对话框
第4步,选择“操作主机”选项,显示如图3-31所示的“操作主机”对话框,“更改”按钮为灰色,处于不可编辑状态,无法更改操作主机到目标服务器。
图3-31 “操作主机”对话框
3. DNS验证
第1步,以域管理员身份登录到RODC中,打开“DNS管理器”窗口,选择“RODC”→“正向查找区域”→“book.com”选项,如图3-32所示。
图3-32 DNS验证之一
第2步,右击“book.com”,在弹出的快捷菜单中选择“属性”命令,显示如图3-33 所示的“book.com属性”对话框,所有按钮显示为灰色。
图3-33 DNS验证之二
4. “Read-only Domain Controllers”组验证
RODC域控制器部署完成后,将被添加到“Read-only Domain Controllers”组中,改组是只读域控制器专用组,即该组中的成员是只读域控制器,如图3-34所示。
图3-34 Read-only Domain Controllers属性
3.3 缓存用户
RODC控制器中的Active Directory数据库为只读模式,不存储Active Directory数据库用户密码。管理员可以根据企业的实际需要,为部署在分支机构的RODC域控制器中缓存所在的管理区域中的用户密码。密码复制策略可以在安装RODC的过程中设置,也可以在安装完成后在域控制器中设置。
3.3.1 查看缓存信息
在域控制器中,可以查看RODC的缓存用户信息,包括缓存目标组和已经缓存到RODC中的用户。
第1步,在域控制器中,打开“Active Directory用户和计算机”窗口。选择“book.com”→“Domain Controllers”选项,如图3-35所示。
图3-35 查看缓存信息之一
第2步,在右侧窗口的域控制器列表中,右击“RODC”域控制器,在弹出的快捷菜单中选择“属性”命令,显示如图3-36所示的“RODC属性”对话框。
图3-36 查看缓存信息之二
第3步,切换到“密码复制策略”选项卡,显示如图3-37所示对话框。
图3-37 查看缓存信息之三
第4步,单击“高级”按钮,打开“以下项目的高级密码复制策略RODC”对话框。切换到“策略使用率”选项卡,如图3-38所示。
图3-38 查看缓存信息之四
● 在“显示满足下列条件的用户和计算机”下拉列表中,选择“其密码已存储在只读域控制器中的账户”选项,除了RODC自身的计算机账户和Kerberos票据授权(KRBTGT)账户之外,默认情况下没有缓存任何账户的密码。
● 在“显示满足下列条件的用户和计算机”下拉列表中,选择“已通过此只读域控制器身份验证的账户”选项,显示在RODC进行身份验证的用户以及计算机,通过此列表确定哪些账户的密码已经缓存到RODC域控制器中,如图3-39所示。
图3-39 “策略使用率”选项卡
第5步,单击“关闭”按钮,关闭该对话框。
3.3.2 缓存用户
如果管理员已经规划将用户缓存到只读域控制器中,可以对经过身份确认的用户和计算机账户的密码启用预填充密码缓存功能。当启用该功能时,在分支机构中登录之前将用户和计算机的密码复制到只读域控制器。分支机构登录的用户和计算机,通过只读域控制器对这些账户进行身份验证,而无需通过中心的域控制器验证。建议启用该功能。
第1步,在域控制器中,打开“Active Directory用户和计算机”窗口,选择“Domain Controllers”选项,右击“RODC”只读域控制器,在弹出的快捷菜单中选择“属性”命令,打开“密码复制策略”对话框。
第2步,单击“高级”按钮,显示如图3-40 所示的“以下项目的高级密码复制策略RODC”对话框。
图3-40 预填充密码缓存一
第3步,单击“预设密码”按钮,显示如图3-41所示的“选择用户或计算机”对话框。在“输入对象名称来选择”文本框中键入需要缓存到只读域控制器的用户或者计算机。
图3-41 预填充密码缓存二
第4步,单击“确定”按钮,显示如图3-42所示的“预填充密码”对话框。选择的用户或者计算机将显示在“账户名称”列表中。
图3-42 预填充密码缓存三
第5步,单击“是”按钮,显示如图3-43所示的“已成功预填充密码”对话框。
图3-43 预填充密码缓存四
第6步,单击“确定”按钮,将选择的用户和计算机缓存到只读域控制器中,如图3-44所示。
图3-44 预填充密码缓存五
3.4 委派RODC管理权限
使用“Active Directory安装向导”部署RODC域控制器的过程中,管理员可以设置非域管理员作为RODC域控制器的管理员,如果在向导过程中没有配置RODC域控制器的管理员,在RODC域控制器部署完成后,可以在RODC域控制器中委派RODC域控制器管理员权限。委派权限只能在命令行模式(dsmgmt.exe)下完成。
3.4.1 委派RODC管理权限
以域管理员身份登录到RODC域控制器,委派普通域用户“lhn”为RODC域控制器的管理员。域用户“lhn”是“domain users”组成员。
第1步,登录到RODC域控制器,打开命令行提示符窗口,键入如下命令:
Dsmgmt
按Enter键,显示“dsmgmt”命令行提示符。
在“dsmgmt”命令行提示符,键入如下命令:
local roles
按Enter键,显示“本地角色”提示符,如图3-45所示。
图3-45 委派RODC域控制器管理权限之一
第2步,在“本地角色”命令行提示符,键入如下命令:
List roles
按Enter键,命令成功执行,显示RODC域控制器支持的角色列表,如图3-46所示。
图3-46 委派RODC域控制器管理权限之二
第3步,在“本地角色”命令行提示符,键入如下命令:
Add book\lhn administrators
按Enter键,将域用户“book\lhn”添加到本地管理员组中,如图3-47所示。
图3-47 委派RODC域控制器管理权限之三
第4步,在“本地角色”命令行提示符,键入如下命令:
show role administrators
按Enter键,显示RODC域控制器中,具备管理员权限的用户,如图3-48所示。
图3-48 委派RODC域控制器管理权限之四
3.4.2 RODC管理员验证
默认情况下,普通域用户不能登录到任何域控制器中,经过委派的普通域用户即可管理RODC域控制器,完成域控制器管理角色的分离。
1. 普通域用户登录
域用户“Test”是“Domain Users”组中成员,不具备RODC域控制器管理员的权限,该用户不能登录RODC域控制器。
第1步,在Windows Server 2008 R2的登录窗口中,以域用户“Test”身份登录,如图3-49所示。
图3-49 普通域用户登录之一
第2步,单击“→”按钮或者按Enter键,提示无法登录,如图3-50所示。
图3-50 普通域用户登录之二
2. 授权域用户登录
域用户“lhn”已经被委派具备RODC域控制器管理员的权限,因此该用户虽然是“Domain Users”组中的成员,但是可以登录到RODC域控制器中,并实施管理职能。
第1步,在Windows Server 2008的登录窗口中,以域用户“lhn”身份登录,如图3-51所示。
图3-51 授权域用户登录之一
第2步,单击“已进入”按钮或者按Enter键,成功登录Windows Server 2008的RODC域控制器,如图3-52所示。
图3-52 授权域用户登录之二