AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 402580
Accepted
MDMarra
MDMarra
Asked: 2012-06-27 19:47:46 +0800 CST2012-06-27 19:47:46 +0800 CST 2012-06-27 19:47:46 +0800 CST

什么是 Active Directory 域服务及其工作原理?

  • 772
想要改进这篇文章?提供此问题的详细答案,包括引用和解释为什么你的答案是正确的。不够详细的答案可能会被编辑或删除。

这是有关 Active Directory 域服务 (AD DS)的规范问题。

什么是活动目录?它是做什么的,它是如何工作的?

Active Directory 是如何组织的:林、子域、树、站点或 OU


我发现自己几乎每天都在解释一些我认为是常识的东西。希望这个问题可以作为大多数基本 Active Directory 问题的规范问答。如果您觉得可以改进此问题的答案,请编辑。

windows active-directory
  • 2 2 个回答
  • 325049 Views

2 个回答

  • Voted
  1. Best Answer
    MDMarra
    2012-06-27T19:47:46+08:002012-06-27T19:47:46+08:00

    什么是活动目录?

    Active Directory 域服务是 Microsoft 的目录服务器。它提供身份验证和授权机制以及可以部署其他相关服务(AD 证书服务、AD 联合服务等)的框架。它是一个包含对象的LDAP兼容数据库。最常用的对象是用户、计算机和组。可以根据任意数量的逻辑或业务需求将这些对象组织成组织单元 (OU)。然后可以将组策略对象 (GPO)链接到 OU,以集中整个组织中各种用户或计算机的设置。

    当人们说“Active Directory”时,他们通常指的是“Active Directory 域服务”。请务必注意,还有其他 Active Directory 角色/产品,例如证书服务、联合身份验证服务、轻量级目录服务、权限管理服务等。此答案专门针对 Active Directory 域服务。

    什么是域,什么是林?

    森林是安全边界。单独林中的对象不能相互交互,除非每个单独林的管理员在它们之间建立信任。例如,一个企业管理员帐户domain1.com,通常是林中最有特权的帐户,在名为的第二个林中将没有任何权限domain2.com,即使这些林存在于同一 LAN 中,除非存在信任.

    如果您有多个不相交的业务部门或需要单独的安全边界,则需要多个林。

    域是管理边界。域是森林的一部分。林中的第一个域称为林根域。在许多中小型组织(甚至一些大型组织)中,您只会在单个林中找到一个域。林根域定义林的默认命名空间。例如,如果新林中的第一个域名为domain1.com,那么它就是林根域。如果您有子域的业务需求,例如 - 芝加哥的分支机构,您可以将子域命名为chi. 子域的FQDN将是chi.domain1.com. 您可以看到子域的名称是林根域名称的前缀。这通常是它的工作原理。您可以在同一个林中拥有不相交的名称空间,但那是不同时间的一个完整的独立蠕虫罐头。

    在大多数情况下,您会想尽一切可能拥有一个 AD 域。它简化了管理,AD 的现代版本使基于 OU 的控制委派变得非常容易,从而减少了对子域的需求。

    我可以随意命名我的域名,对吗?

    并不真地。dcpromo.exe,处理将服务器升级为 DC 的工具不是白痴证明。它确实会让您在命名时做出错误的决定,因此如果您不确定,请注意本节。(编辑:dcpromo在 Server 2012 中已弃用。使用Install-ADDSForestPowerShell cmdlet 或从服务器管理器安装 AD DS。)

    首先,不要使用诸如 .local、.lan、.corp 或其他任何垃圾的虚构 TLD。这些 TLD未保留。ICANN 现在正在出售 TLD,因此您mycompany.corp今天使用的 TLD 明天可能实际上属于某人。如果您拥有mycompany.com,那么明智的做法是为您的内部 AD 名称使用类似internal.mycompany.com或之类的名称。ad.mycompany.com如果您mycompany.com用作外部可解析的网站,您也应该避免将其用作您的内部 AD 名称,因为您最终会得到一个裂脑 DNS。

    域控制器和全局目录

    响应身份验证或授权请求的服务器是域控制器 (DC)。在大多数情况下,域控制器将保存全局目录的副本。全局目录 (GC) 是林中所有域中的一组部分对象。它是直接可搜索的,这意味着跨域查询通常可以在 GC 上执行,而无需引用目标域中的 DC。如果在端口 3268(如果使用 SSL,则为 3269)上查询 DC,则正在查询 GC。如果查询端口 389(如果使用 SSL,则为 636),则使用标准 LDAP 查询,并且其他域中存在的对象可能需要引用。

    当用户尝试使用他们的 AD 凭据登录到加入 AD 的计算机时,经过加盐和哈希处理的用户名和密码组合将发送到 DC,用于登录的用户帐户和计算机帐户。是的,电脑也登录。这一点很重要,因为如果 AD 中的计算机帐户出现问题,例如有人重置或删除帐户,您可能会收到一条错误消息,指出计算机与域之间不存在信任关系。即使您的网络凭据没问题,也不再信任该计算机可以登录域。

    域控制器可用性问题

    我听到“我有一个主域控制器 (PDC) 并想安装一个备用域控制器 (BDC)”的频率比我愿意相信的要高得多。PDC 和 BDC 的概念随 Windows NT4 一起消失。PDC 的最后一个堡垒是在 Windows 2000 过渡混合模式 AD 中,当时您仍然有 NT4 DC。基本上,除非您支持 15 年以上从未升级过的安装,否则您实际上没有 PDC 或 BDC,您只有两个域控制器。

    多个 DC 能够同时响应来自不同用户和计算机的身份验证请求。如果一个失败,那么其他人将继续提供身份验证服务,而不必像在 NT4 时代那样将其中一个设为“主要”。最佳做法是每个域至少有两个 DC。这些 DC 应该都保存 GC 的副本,并且都应该是保存您域的 Active Directory 集成 DNS 区域副本的 DNS 服务器。

    FSMO角色

    “那么,如果没有 PDC,为什么会有只有单个 DC 才能拥有的 PDC 角色?”

    我经常听到这个。有一个PDC 仿真器角色。这与成为 PDC 不同。事实上,有5 个灵活的单主机操作角色 (FSMO)。这些也称为操作主管角色。这两个术语可以互换。他们是什么,他们做什么?好问题!这 5 个角色及其功能是:

    Domain Naming Master - 每个林只有一个 Domain Naming Master。Domain Naming Master 确保在将新域添加到林时它是唯一的。如果担任此角色的服务器处于离线状态,您将无法对 AD 命名空间进行更改,其中包括添加新的子域等内容。

    Schema Master - 森林中只有一个 Schema Operations Master。它负责更新 Active Directory 架构。需要这样做的任务,例如为充当 DC 的新版本 Windows Server 准备 AD 或安装 Exchange,需要修改架构。这些修改必须从 Schema Master 完成。

    Infrastructure Master - 每个域有一个 Infrastructure Master。如果你的林中只有一个域,你真的不需要担心它。如果您有多个林,则应确保该角色不由同时也是 GC 持有者的服务器担任,除非林中的每个 DC 都是 GC。基础架构主管负责确保正确处理跨域引用。如果一个域中的用户被添加到另一个域中的组中,则相关域的基础结构主机确保它得到正确处理。如果该角色位于全局编录中,则该角色将无法正常工作。

    RID 主机- 相对 ID 主机(RID 主机)负责向 DC 发布 RID 池。每个域有一个 RID 主机。AD 域中的任何对象都具有唯一的安全标识符 (SID). 它由域标识符和相对标识符的组合组成。给定域中的每个对象都具有相同的域标识符,因此相对标识符是使对象唯一的原因。每个 DC 都有一个要使用的相对 ID 池,因此当该 DC 创建一个新对象时,它会附加一个它尚未使用的 RID。由于 DC 是非重叠池,因此每个 RID 在域的生命周期内都应保持唯一。当 DC 在其池中剩余约 100 个 RID 时,它会向 RID 主机请求一个新池。如果 RID 主机长时间处于离线状态,则对象创建可能会失败。

    PDC Emulator——最后,我们谈到了所有这些角色中被最广泛误解的角色,即 PDC Emulator 角色。每个域有一个 PDC 仿真器。如果身份验证尝试失败,则会将其转发给 PDC 仿真器。如果一个 DC 上的密码已更新但尚未复制到其他 DC,PDC 仿真器将充当“决胜局”。PDC 仿真器也是控制跨域时间同步的服务器。所有其他 DC 从 PDC 模拟器同步它们的时间。所有客户端都从他们登录的 DC 同步他们的时间。重要的是一切都保持在 5 分钟以内,否则 Kerberos 会崩溃,当这种情况发生时,每个人都会哭泣。

    需要记住的重要一点是,运行这些角色的服务器并不是一成不变的。移动这些角色通常是微不足道的,因此虽然一些 DC 比其他 DC 做得稍微多一些,但如果它们短时间停机,通常一切都会正常运行。如果他们长时间宕机,很容易透明地转移角色。它比 NT4 PDC/BDC 时代好多了,所以请停止使用那些旧名称来调用您的 DC。:)

    那么,嗯……如果 DC 可以彼此独立运作,它们如何共享信息?

    当然是复制。默认情况下,同一站点中属于同一域的 DC 将以 15 秒的间隔相互复制它们的数据。这可确保所有内容都相对最新。

    有一些“紧急”事件会触发立即复制。这些事件是:帐户因登录失败次数过多而被锁定、域密码或锁定策略发生更改、LSA 机密已更改、DC 计算机帐户的密码已更改或 RID 主机角色已转移到一个新的 DC。这些事件中的任何一个都将触发立即复制事件。

    密码更改介于紧急和非紧急之间,并且是唯一处理的。如果用户的密码已更改,DC01并且用户尝试登录到DC02复制发生之前正在对其进行身份验证的计算机,您会认为这会失败,对吧?幸运的是,这不会发生。假设这里还有一个称为DC03PDC 仿真器角色的第三个 DC。当DC01使用用户的新密码更新时,该更改会立即复制到DC03also。当你的身份验证尝试DC02失败时,DC02则将该身份验证尝试转发给DC03,验证它确实是好的,并且允许登录。

    让我们谈谈 DNS

    DNS 对于正常运行的 AD 至关重要。Microsoft 的官方官方说法是,只要设置正确,任何 DNS 服务器都可以使用。如果您尝试使用 BIND 来托管您的 AD 区域,那您就上瘾了。严重地。坚持使用 AD 集成 DNS 区域,并在必要时为其他区域使用条件或全局转发器。您的客户端应全部配置为使用您的 AD DNS 服务器,因此在此处进行冗余很重要。如果您有两个 DC,请让它们都运行 DNS 并将您的客户端配置为使用它们来进行名称解析。

    此外,如果您拥有多个 DC,您还需要确保它们不会首先列出自己以进行 DNS 解析。这可能会导致它们位于“复制孤岛”上,与 AD 复制拓扑的其余部分断开连接并且无法恢复。如果你有两台服务器DC01 - 10.1.1.1和DC02 - 10.1.1.2,那么它们的 DNS 服务器列表应该这样配置:

    服务器:DC01 (10.1.1.1)
    主 DNS - 10.1.1.2
    辅助 DNS - 127.0.0.1

    服务器:DC02 (10.1.1.2)
    主 DNS - 10.1.1.1
    辅助 DNS - 127.0.0.1

    好的,这看起来很复杂。为什么我要使用 AD?

    因为一旦你知道自己在做什么,你的生活就会变得无限美好。AD 允许用户和计算机管理的集中化,以及资源访问和使用的集中化。想象一下办公室里有 50 个用户的情况。如果您希望每个用户在每台计算机上都有自己的登录名,则必须在每台 PC 上配置 50 个本地用户帐户。使用 AD,您只需创建一次用户帐户,默认情况下它可以登录域中的任何 PC。如果你想加强安全性,你必须这样做 50 次。有点像噩梦,对吧?还假设您有一个文件共享,您只希望其中一半的人访问。如果您不使用 AD,您要么需要在服务器上手动复制他们的用户名和密码以提供无缝访问,要么您 d 必须创建一个共享帐户并为每个用户提供用户名和密码。一种方式意味着您知道(并且必须不断更新)用户的密码。另一种方式意味着您没有审计线索。不好,对吧?

    当您设置了 AD 时,您还可以使用组策略。组策略是一组链接到 OU 的对象,这些 OU 为这些 OU 中的用户和/或计算机定义设置。例如,如果您想让 500 台实验室 PC​​ 的开始菜单上不出现“关机”,您可以在组策略中的一个设置中执行此操作。无需花费数小时或数天时间手动配置正确的注册表项,您只需创建一个组策略对象,将其链接到正确的一个或多个 OU,而无需再考虑它。可以配置的GPO多达数百种,组策略的灵活性是微软在企业市场占据主导地位的重要原因之一。

    • 164
  2. MDMarra
    2014-01-29T09:06:40+08:002014-01-29T09:06:40+08:00

    注意:此答案已从另一个询问森林、子域、树、站点和 OU 之间差异的不同问题合并到此问题中。这最初并不是作为对这个特定问题的回答而写的。


    森林

    当您需要安全边界时,您想创建一个新林。例如,您可能有一个希望使用 AD 管理的外围网络 (DMZ),但出于安全原因,您不希望内部 AD 在外围网络中可用。在这种情况下,您可能希望为该安全区域创建一个新林。如果您有多个彼此不信任的实体,您可能还需要这种分离——例如,一个包含独立运营的个体企业的空壳公司。在这种情况下,您希望每个实体都有自己的森林。


    子域

    真的,你不再需要这些了。很少有很好的例子说明您何时需要子域。一个遗留原因是因为不同的密码策略要求,但这不再有效,因为自 Server 2008 以来有可用的细粒度密码策略。如果您的区域网络连接极差并且您想要大幅减少复制流量 - 带有卫星 WAN 连接的游轮就是一个很好的例子。在这种情况下,每艘游轮都可以是它自己的子域,以便相对独立,同时仍然能够利用与同一公司的其他域位于同一森林中的好处。


    树

    这是一个奇怪的球。当您希望保持单个林的管理优势但在新的 DNS 名称空间中有一个域时,可以使用新树。例如corp.example.com,可能是林根,但您可以ad.mdmarra.com在同一林中使用新树。此处适用针对子域的相同规则和建议 - 谨慎使用它们。现代广告通常不需要它们。


    地点

    站点应代表网络中的物理或逻辑边界。例如,分支机构。站点用于为不同区域的域控制器智能选择复制伙伴。在不定义站点的情况下,所有 DC 都将被视为位于同一物理位置,并在网状拓扑中进行复制。实际上,大多数组织在逻辑上都配置为中心辐射型,因此站点和服务的配置应反映这一点。

    其他应用程序也使用站点和服务。DFS 使用它进行名称空间引用和复制伙伴选择。Exchange 和 Outlook 使用它来查找“最近的”全局编录以进行查询。您加入域的计算机使用它来定位“最近”的 DC 以进行身份​​验证。没有它,您的复制和身份验证流量就像狂野的西部一样。


    组织单位

    这些应该以反映您的组织对权限委派和组策略应用程序的需求的方式创建。许多组织每个站点都有一个 OU,因为他们以这种方式应用 GPO - 这很愚蠢,因为您也可以从站点和服务将 GPO 应用到一个站点。其他组织按部门或职能划分 OU。这对很多人来说是有意义的,但真正的 OU 设计应该满足您的需求并且相当灵活。没有“一种方法”可以做到这一点。

    一家跨国公司可能拥有, , , 的顶级 OU,以便他们可以North America根据大陆授予管理权限。其他组织可能拥有、 、 等顶级 OU ,如果这对他们来说更有意义的话。其他组织的策略需求极少,并使用仅包含和的“平面”布局。这里真的没有正确答案,只要能满足您公司的需求即可。EuropeAsiaSouth AmericaAfricaHuman ResourcesAccountingSalesEmployee UsersEmployee Computers

    • 24

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve