一、什么是AD?
活动目录(Active Directory)是面向Windows Standard Server、Windows Enterprise Server以及 Windows Datacenter Server的目录服务。(Active Directory不能运行在Windows Web Server上,但是可以通过它对运行Windows Web Server的计算机进行管理。)Active Directory存储了有关网络对象的信息,并且让管理员和用户能够轻松地查找和使用这些信息。Active Directory使用了一种结构化的数据存储方式,并以此作为基础对目录信息进行合乎逻辑的分层组织。
人们经常将数据存储作为目录的代名词。目录包含了有关各种对象 [例如用户、用户组、计算机、域、组织单位(OU)以及安全策略] 的信息。这些信息可以被发布出来,以供用户和管理员的使用。
目录存储在被称为域控制器的服务器上,并且可以被网络应用程序或者服务所访问。一个域可能拥有一台以上的域控制器。每一台域控制器都拥有它所在域的目录的一个可写副本。对目录的任何修改都可以从源域控制器复制到域、域树或者森林中的其它域控制器上。由于目录可以被复制,而且所有的域控制器都拥有目录的一个可写副本,所以用户和管理员便可以在域的任何位置方便地获得所需的目录信息。
二、什么是域?
在今天很多人都有意识或无意识的跟域这个东西打过交道。如果你在公司里使用电脑,并且你的电脑接入了公司的局域网,那你的电脑很可能就在一个域中。如何查看你的电脑是否连接到一个域中,以Windows为例,右击我的电脑 –>属性,可以看到,我现在使用的这台电脑就加入了一个域。
域已经成为绝大多数公司组织、连接电脑的一种方式。那么我们究竟为什么要使用域?它能给我们带来什么好处呢?假设你是公司的系统管理员,你们公司有一千台电脑。如果你要为每台电脑设置登录帐户,设置权限(比如是否允许登录帐户安装软件),那你要分别坐在这一千台电脑前工作。如果你要做一些改变,你也要分别在这一千台电脑上修改。相信没有哪个管理员想要用这种不吃不喝不睡觉的方式来工作,所以就应运而生了域的概念。
还以Windows为例,在微软的世界中,一个域是由一个或多个域控制器(domain controller)来控制的(其实域控制器并不神秘,无非就是装了一些特别软件的电脑)。其他的电脑加入该域,就要接受域控制器的控制。域控制器中有两个重要的表,一个是加入该域的电脑的列表,另一个表用来保存叫做活动目录(Active Directory)的东西。活动目录就是你登录公司网络的帐户。活动目录中存储着你的权限。你在某台电脑上登录,你键入用户名和密码,你的电脑首先要把你的登录信息发送到域控制器,域控制器首先核实你的登录信息是否正确,然后把一个叫access key的东西返还给你登录的电脑。这个access key中就包含着你的权限,由它来决定你是否可以安装软件,或者使用打印机等等。
有了域以后,作为管理员,你就可以坐在一台电脑前,登录到域控制器上,对一切权限进行控制,而不用跑到每台电脑前进行设置了。工作效率提高了很多,但是还不够。假设公司有一千名员工,你是否要在域控制器中对这一千个人分别进行权限的设置呢?这听起来也是一件很麻烦的事。其实很多员工的权限都是相同的,那我们可不可以对这些相同的权限只设置一次,然后将该权限分配给相关的员工呢?答案就是使用分组(Group)。比如在学校里,我们设置学生组和教师组。在某台电脑上我们设置一个共享文件夹,学生组的权限是不可访问,而教师组可以对该文件夹进行访问。我们将不同的用户放入不同的分组里,然后对组进行权限设置,这样就免去了我们要对每个用户进行设置的麻烦。比组更大的单位是组织单位(Organization Unit),一个组织单位可以包含用户,组,资源(电脑,打印机等),还可以包含其他组织单位。举个简单的例子,有一个商场中的电脑加入了该商场的域,但是该电脑放置在公共场合,有很大的风险,所以我们可以将该电脑放置在一个单独的组织单位中,然后对该组织单位进行权限设置,比如不论谁在该组织单位中登录,都不可以修改他的密码。
在很多的实际情况中,一个公司又有下面的子公司,所以就造成母公司有一个域,而子公司也有一个单独的域。母公司的域与子公司的域如何联系起来呢?我们可以在它们之间建立一种叫信任(Trust)的关系。如果母公司的帐户想要能够登录到子公司的域中,子公司的域就要对母公司的域建立信任关系。当母公司域的帐户想要登录到子公司域中时,子公司域由于信任母公司的域,所以它会听从从母公司域的域控制器返回的access key。反过来,由于母公司的域没有建立对子公司的信任,所以如果子公司的帐户想要登录到母公司的域中是不可能的。
虽然我们上面的例子都是Windows的域,但域这个概念绝不是微软独创的。你也可以在Linux中使用一个叫Samba的软件来创建域。如果你要用Windows搭建一个域环境的话,要注意两点:
(1) 加入域不能使用Home版的Windows操作系统(顾名思义它是给你在家用的,而你家里是不用搭建域的)。
(2) 域控制器不能使用web edition server,因为它没有安装活动目录。
在现实环境中,有很多公司在域中使用多个域控制器,因为如果只使用一个域控制器的话,一旦域控制器不能正常工作,整个域就会瘫痪。在Samba中,Linux使用两个域控制器,一个是主域控制器,一个是备份域控制器。一旦主域控制器发生故障,备份域控制器就开始工作,直到主域控制器恢复正常。备份域控制器就是一个主域控制器的拷贝,但是它的数据都是只读的,也就是说管理员不能在备份域控制器上修改权限。
在Windows的域中,不使用主域控制器与备份域控制器,每个域控制器充当的都是一样的角色,比如你有三个域控制器,你可以在任何一个域控制器上对用户的权限进行修改,你的修改将被复制到其他两个域控制器中。同样,如果一个域控制器发生故障,只要其他的域控制器还能正常工作,整个域还是可以正常运行。
最后再列举两条有用的命令:
列举出域中所有的域控制器: NETDOM QUERY /D:MyDomain DC
查看你是使用哪个域控制器登录的:echo %logonserver%
三、如何创建AD域
域指的是一组服务器和工作站的集合。域将计算机账户和用户及账户密码集中放在一个共享数据库内,使得用户可以只使用一个账户名和密码就能够访问网络中的计算机。
建立一个AD域的过程大致可以分为两步,首先需要在作为服务器的计算机上安装AD,使这台计算机成为DC(Domain Controller,域控制器);然后为用户创建用户账户使其能够登录到AD域中,而将网络中的其它计算机加入到AD域中使其成为域成员计算机也是必不可少的步骤。
一、准备工作
首先网络中需要有一台运行着Windows Server 2003的服务器,目前的主流硬件配置均可以满足安装AD域的需要,因此无需过多考虑。不过有一点需要注意,那就是硬盘中必须有一个NTFS文件格式的分区以备后用。
二、建立AD域
域控制器(DC)是AD域的核心,建立AD域的过程从一定意义上也可以说是将Windows Server 2003服务器升级为域控制器的过程。Windows Server 2003中提供了AD安装向导,以方便用户的安装,具体的安装步骤如下所述:
第1步依次单击“开始/管理工具/配置您的服务器向导”,在打开的“配置您的服务器”向导欢迎页中依次单击“下一步”按钮。打开“服务器角色”向导页,在服务器角色列表中单击选中“域控制器(Active Directory)”选项,并依次单击“下一步”按钮打开“Active Directory安装向导”,单击“下一步”按钮,如图1。
图1 选择计划时间
第2步 打开“操作系统兼容性”选项页,该选项页提示用户运行Windows 95的客户端将无法登录到基于Windows Server 2003的AD域中。就目前的实际情况而言,Windows 95的身影基本上已经消失殆尽了,因此直接单击“下一步”按钮。
第3步 在打开的“域控制器类型”选项页中需要指定该Windows Server 2003服务器担任的角色。如果要创建一个全新的域,则保持“新域的域控制器”单选框的选中状态。本文实例属于这种情况,直接单击“下一步”按钮即可,如图2。
图2 登陆工作站
第4步 打开“创建一个新域”向导页,AD(活动目录)可以把域组织成域树,然后再把域树组织成森林。在本例中要创建的域是一个新域树中的第一个域,同时也是新森林中的第一个域树,因此保持“在新林中的域”单选框的选中状态,并单击“下一步”按钮。
第5步 在打开的“新的域名”向导页中需要为该域指定一个域名,在“新域的DNS全名”编辑框中键入准备使用的域名(如“cce.com.cn”),并单击“下一步”按钮,如图3。
图3 指定域名
第6步 打开“NetBIOS域名”向导页,在这里可以为新域指定一个NetBIOS域名。在默认情况下,安装向导会将域名中小圆点最左边的部分作为NetBIOS域名。可以(建议)保留这个默认值,并单击“下一步”按钮。
NetBIOS域名在很多情况下很有用,例如在某些网络中除了Windows 2000及以上版本的操作系统以外,可能还存在比较旧的Windows 98系统,而Windows 98系统是无法识别如“Cce.com.cn”这种形式的域名的。正是基于此问题,AD域为这些旧系统准备了一个它们所能识别的域名,即“NetBIOS 域名”。
第7步 在打开的“数据库和日志文件文件夹”向导页中,可以为AD数据库和事物日志文件指定存储路径。本例保持默认的路径并单击“下一步”按钮。
AD域把AD数据库存储为两部分,一部分是AD数据库文件本身,另一部分是事务日志。如果将AD数据库文件存储在NTFS分区中,可以获得明显优于FAT 分区的性能。而如果将事务日志文件存储在跟AD数据文件不同的物理硬盘上(且使用不同的EIDE通道),则可以实现AD数据库和日志的同时更新,所获得的性能提高同样非常明显。
第8步 打开“共享的系统卷”向导页,在该向导页中需要指定“Sysvol”文件夹的存储路径,而该路径必须指向NTFS格式的分区。单击“浏览”按钮定位至合适的路径,并单击“下一步”按钮,如图4。
图4 指定sysvol文件夹存储路径
“Sysvol”文件夹中存储有AD域中重要的用户配置和控制信息文件(如“系统策略文件”、“默认配置文件”和“登录脚本”等),并且该文件夹会自动地被复制到其它的DC中,实现域信息的同步更新。但是系统对“Sysvol”文件夹的自动复制需要NTFS分区的支持,这也是我们在“系统要求”部分所提到的需要一个NTFS分区的原因。
第9步在打开的“DNS注册诊断”向导页中,会根据服务器的DNS配置给出相应的诊断结果。如果服务器未正确安装和配置DNS服务,则可以点选“在这台计算机上安装并配置DNS服务器,并将这台DNS服务器设为这台计算机的首选DNS服务器”单选框,并单击“下一步”按钮。
第10步 打开“权限”向导页,在这里需要设定用户和组对象的默认权限。一般情况下采用默认设置即可,并单击“下一步”按钮。该向导页中所提到的权限主要涉及到RAS(远程访问服务)服务器的匿名登录问题。因为在NT4域中,RAS在没有匿名登录的域中是无法工作的。
如果确信公司网络中的服务器系统均在Windows 2000 Server以上,则建议选择“只与Windows 2000或Windows Server 2003操作系统兼容的权限”选项。因为该选项将关闭RAS服务器的匿名登录,从而提高安全性。
第11步 在打开的“目录服务还原模式的管理员密码”向导页中,用户可以设置一组还原密码。单击“下一步”按钮。在Windows 2000 Server和Windows Server 2003系统的启动过程中,有一个选项可以用来重建被损坏的AD数据库,并把它还原到内部一致的一个较早期版本。为了防止未经授权的还原操作破坏AD数据库,才有了设置还原密码的设计。
第12步 最后打开“摘要”向导页,通过对照摘要信息确认前面所做的设置正确无误,并单击“下一步”按钮开始AD的安装配置过程。根据服务器的硬件配置,安装配置所需要的时间不尽相同(大概需要10~20分钟)。
在安装配置过程中会提示安装DNS服务,根据提示插入Windows Server 2003的安装光盘(或者指定安装源文件路径)即可自动完成。AD安装结束后连续单击“完成”按钮关闭“配置您的服务器向导”。然后重新启动计算机,则该服务器已经升级为域控制器了。