Windows AD Practice Day8
Day 8|基础命令与结果判断(15 题)
本篇按“题目 → 我的回答 → 批改 → 正确答案与思路”逐题整理,原始答案保留,订正直接跟在对应题目后面,不再集中到文末查找。
原计划的 Q16 账户反复锁定综合题因时间不足暂缓,移出今日练习,留作明天的候选题,不计错题。本篇仅复盘 Q1~Q15,不考跨域/跨林信任。
作答方式未完整标记,也没有附本轮完整 VM 原始输出,因此不把写出的命令算作实测成功,不据此评估闭卷熟练程度。本文参考答案不是在 VM 新执行的结果。
今天的总体评价
核心命令与基础概念整体较稳。本轮最值得加强的不是再背一遍查询入口,而是补齐关键字段、使用规范参数,并让结论不超过输出提供的证据。
重点复习 Q5、Q10、Q11、Q12、Q14、Q15:复制摘要的范围、锁定来源字段、回收站启用依据、空间单位、裸 SID 与 GPO 实际应用判断。
Q1|用户与账户:额外属性(简单·先闭卷)
查询用户 qianyue 的 Name、SamAccountName 和 Department,只显示这三个字段。写出完整 PowerShell 命令。想一想:获取额外属性和选择显示列,分别靠哪个参数/命令?
我的回答:
Get-ADUser -Identity 'qianyue' -Properties Department | Select-Object Name, SamAccountName, Department额外属性:-Properties 选择显示:Select-Object
批改:正确。额外属性用 -Properties 获取,显示列用 Select-Object 选择,二者区分清楚。
正确答案与思路:
Get-ADUser -Identity 'qianyue' -Properties Department | Select-Object Name,SamAccountName,Department-Properties 负责取值,Select-Object 负责展示。
Q2|组与成员:看组类型(简单·先闭卷)
查询 QYNET-Admin 的 Name、GroupScope、GroupCategory。如果要把这个组加到文件夹 ACL,GroupCategory 应是什么?
我的回答:
Get-ADGroup -Identity 'QYNET-Admin' | Select-Object Name, GroupScope, GroupCategory加到文件夹 ACL,应该为 Security。
批改:正确。查询字段和 Security 判断均准确;GroupScope 是作用域,GroupCategory 才决定安全组/通讯组。
正确答案与思路:
Get-ADGroup -Identity 'QYNET-Admin' | Select-Object Name,GroupScope,GroupCategory用于文件夹 ACL 授权应为 Security,不是 Distribution。
Q3|计算机:确认所在 OU(简单·先闭卷)
查 QYNET-USER01 的 Name、Enabled 和 DistinguishedName,用于确认计算机账户是否启用、对象放在哪里。写一条命令即可。
我的回答:
Get-ADComputer -Identity 'QYNET-USER01' | Select-Object Name, Enabled, DistinguishedName批改:正确。Enabled 判断账户是否启用,DistinguishedName 用于确认对象所在路径;不代表设备在线。
正确答案与思路:
Get-ADComputer -Identity 'QYNET-USER01' | Select-Object Name,Enabled,DistinguishedName根据完整 DN 确认 OU;对象存在、账户启用与设备在线是三件不同的事。
Q4|域控与 FSMO:查持有者(简单·先闭卷)
今天允许使用 netdom:写出一次查询五个 FSMO 角色持有者的命令。再说说:正常退役一台持有 FSMO 的 DC,应选择 transfer 还是 seize?
我的回答:
netdom query fsmo应选择 transfer
批改:正确。查询五个角色的命令与正常退役使用 transfer 的判断均正确。
正确答案与思路:
netdom query fsmo原角色持有者在线且可以正常交接时使用 transfer。先确认接收 DC 与复制健康,再转移、核验并正常降级旧 DC;不要为正常退役使用 seize。
Q5|复制健康:只看错误(简单·先闭卷)
使用 repadmin 查看复制摘要,要求只列出发生错误的内容。写命令即可;如果实测结果没有错误行,应如何简短记录?
我的回答:
repadmin /replsummary /errorsonly若没有错误行,我会记录: 带一个时间戳记录DC无错误、例如: 2026-10-09 复制摘要:/errorsonly 无输出,所有 DC 无复制错误。
批改:基本正确。命令和记录时间的习惯很好;结论需要限定为本次成功查询覆盖的 DC,不能扩大成任何时候全域都无故障。
正确答案与思路:
repadmin /replsummary /errorsonly建议记录:“在实际查询时间,本次成功查询覆盖的复制摘要未列出失败项;另行记录是否有 DC 查询失败。”没有失败行,不等于命令完全没有标题/时间信息,也不是对所有时间和所有 DC 的保证。
Q6|DCDiag:先检查什么(简单·先闭卷)
DC 出现异常,你准备先检查连通性,再检查 DNS。分别写出对应的 dcdiag 命令,不需要背其他测试名。
我的回答:
dcdiag /test:Connectivitydcdiag /test:DNS批改:正确。先连通性、再 DNS 的检查入口选对了;Connectivity 也涉及 DC 定位和 LDAP/RPC,不是单纯 Ping。
正确答案与思路:
dcdiag /test:Connectivitydcdiag /test:DNS先根据 Connectivity 的错误缩小定位与连接问题,再做 DNS 专项检查;一次失败不能直接证明服务器关机。
Q7|DNS 与 SPN:查服务身份(简单·先闭卷)
想知道 HTTP/testweb.qy.net 这个 SPN 注册到了哪个 AD 账户上,应该怎样用 setspn 查询?只查,不添加或删除;如果查不到,是不是就应该马上随便找个账号添加?说明一句理由。
我的回答:
setspn -Q HTTP/testweb.qy.net并不能直接随便加。SPN 必须注册到实际运行该服务的账户上,随便找账号添加会让 KDC 用错误的账户密钥加密服务票据,目标服务解不开,Kerberos 认证照样失败,还可能制造重复 SPN。
批改:正确。查询命令与不能随便注册 SPN 的解释都准确。
正确答案与思路:
setspn -Q HTTP/testweb.qy.net先确定服务实际使用的身份,再判断 SPN 是否应注册到该账户。不能随意挑账号添加,否则服务可能无法解密票据。
Q8|Kerberos 与票据:看当前缓存(简单·先闭卷)
写出查看当前登录会话中 Kerberos 票据的命令。再判断:把用户加入安全组后,仅清空 Kerberos 票据,是否一定会更新现有 Windows 登录令牌里的组身份?
我的回答:
klist并不一定更新登录令牌,一般来说需要注销后重新登陆才会刷新令牌。
批改:正确。已区分 Kerberos 票据缓存与现有 Windows 登录访问令牌。
正确答案与思路:
klist仅清空票据不保证更新当前 Windows 登录令牌;需要刷新组身份时,通常让用户注销并重新登录,而不是只做 klist purge。
Q9|时间同步:查来源与状态(简单·先闭卷)
写出查看本机时间源和时间同步状态的两条 w32tm 命令。本题只看状态,不修改时间配置。
我的回答:
w32tm /query /statusw32tm /query /source批改:正确。两条命令都准确,先后顺序不影响;时间源名称不单独证明时间偏差在允许范围内。
正确答案与思路:
w32tm /query /sourcew32tm /query /status分别看来源与状态;若排查时钟偏差,还需比较客户端与实际处理认证的 DC 的时间。
Q10|事件日志:查锁定记录(简单·先闭卷)
在 DC 上查询 Security 日志中最近 20 条账户锁定事件。写出带 FilterHashtable 的 Get-WinEvent 命令,再写出你会重点查看的“来源计算机”字段名称。
我的回答:
Get-WinEvent -FilterHashtable @{LogName='Security'; id=4740} -MaxEvents 20批改:命令正确,漏答字段。应补 Caller Computer Name,即调用方计算机名。
正确答案与思路:
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4740} -MaxEvents 20重点看 Caller Computer Name/调用方计算机名,事件 XML 字段通常是 CallerComputerName。它提供来源机器线索,不直接指出哪个任务或进程;为空时不能推测填补。
Q11|备份与恢复:回收站是否启用(简单·可查)
准备处理误删测试用户时,先查询 AD 回收站功能。写出查询命令,并说明要看哪个字段,才能区分“功能对象存在”和“功能已经启用”。本题不执行开启或恢复操作。
我的回答:
这里闭卷说一下如何通过 GUI 查看: 在 AD 管理中心中查看是否存在 Delect Objects 项目。
开卷查询:
Get-ADOptionalFeature -Filter 'Name -eq "Recycle Bin Feature"' | Select-Object Name,EnabledScopes批改:开卷查询正确,判断依据未写完整。GUI 思路基本正确,容器名称应为 Deleted Objects,不是 Delect Objects。
正确答案与思路:
Get-ADOptionalFeature -Filter 'Name -eq "Recycle Bin Feature"' | Select-Object Name,EnabledScopes在连接正确林、权限足够且查询成功的前提下,看 EnabledScopes:空集合表示未启用;非空则核对启用范围。仅查到功能名称不等于已启用。GUI 可打开 AD 管理中心(dsac.exe),选择相应域查看 Deleted Objects/已删除对象 容器。微软:Get-ADOptionalFeature
Q12|磁盘与性能:查看 C 盘空间(简单·可查)
用 Get-PSDrive 查询 C 盘,只显示 Used 与 Free。写命令即可;输出数值的原始单位是什么?不要求换算 GB。
我的回答:
Get-PSDrive C | Select Used, Free批改:命令正确,漏答单位。原始 Used 和 Free 数值单位是字节(Bytes)。Select 是 Select-Object 的别名,不扣分。
正确答案与思路:
Get-PSDrive C | Select-Object Used,Free原始单位为 Bytes。若以后要按 GiB 显示,可以除以 PowerShell 的 1GB(1024³ 字节);本题不要求换算。
Q13|站点与服务:查子网归属(简单·可查)
查询 AD 中定义的所有子网,显示 Name 和 Site。再说明:如果客户端所在网段没有定义对应的 AD 子网,可能对它定位合适 DC 有什么影响?不需要展开 KCC 或 ISTG。
我的回答:
Get-ADReplicationSubnet -Filter * | Select-Object Name,Site,Location会缺少一个关键依据。后果的话,会导致登陆变慢,组策略拉的慢,文件访问慢,Kerberos 获取变慢等等。
批改:基本正确。多显示 Location 没问题;未映射子网可能导致选择远端 DC,但不能断言所有访问必然变慢。
正确答案与思路:
Get-ADReplicationSubnet -Filter * | Select-Object Name,Site没有对应子网映射时,客户端缺少正确判断站点的重要依据,可能选择不合适的远端 DC,进而增加登录、认证或组策略处理延迟。具体影响还取决于网络与服务位置。
Q14|清理与维护:裸 SID 能直接删吗(简单·可查)
文件夹 ACL 中有一项显示为 S-1-5-21-……,没有解析成账号名称。能否仅凭这一点就断定“账号已删除”,并直接移除这项权限?写一句结论,再列出一个应该先核对的原因或信息即可。
我的回答: 不能,先核对:这个 SID 是否能在全局编录、受信任域或 AD 回收站中解析到有效对象,或它是否来自其他域、属于 sIDHistory 等未删除但当前无法解析的情况。
批改:核心原则正确。不因裸 SID 直接删权限是对的;回收站中的对象已删除,不能归为当前有效活动账户,GC 也不能代表任意受信任林。
正确答案与思路:
**不能直接删。**先检查 DC/DNS/信任连通性,再核对 SID 来源域、活动对象、sIDHistory 与资源用途。回收站只能辅助确认删除历史,不证明账号仍处于活动状态。即使确认对象已删除,移除 ACE 前也要核对业务影响并保留原 ACL。
Q15|GPO:客户端是否应用(简单·可查)
在 QYNET-USER01 的 qianyue 登录会话中,用 gpresult 查看用户范围的文本结果,判断是否出现 Policy-User。写出命令或等效 GUI 检查路线。管理端查到这个 GPO 对象,是否就能证明客户端已应用它?
我的回答:
gpresult /r /scope:usergpresult /r /scope:user | findstr /i "Policy-User"不能证明客户端已应用,Get-GPO -Name “Policy-User” 只能证明这个 GPO 对象存在于 AD 里。要证明“已应用”,必须有客户端本地的 gpresult / rsop 结果。
批改:概念正确,参数写法与取证方式需补强。参考答案按官方语法使用 /scope user;仅匹配到 GPO 名称不能证明它位于已应用列表。
正确答案与思路:
# 在 USER01 的 qianyue 登录会话中执行gpresult /scope user /r检查“已应用的组策略对象”区域是否列出 Policy-User,并对照“被筛选排除”的区域。findstr 只能定位文字,不能独立证明应用状态。管理端 Get-GPO 只证明对象存在;若要证明某项设置生效,还要核对具体设置与客户端行为。这里按微软 gpresult 文档使用空格写法;本次未连接 VM,不推断原冒号写法在你的机器上的运行结果。
掌握度与下一次练习安排
- **本轮答得较完整:**额外属性与显示列、组类型、计算机 OU、FSMO 正常交接、基础 DCDiag、SPN 身份、票据与登录令牌、时间源查询。
- **需要补齐:**Q10 的来源字段、Q11 的启用判断、Q12 的字节单位;这些是漏答/判断未展开,不能直接等同于完全不会。
- **需要纠正:**Q14 不把已删除对象当作活动账户;Q15 看已应用区域,而不是全文出现名称就算生效。
- **需要收紧结论:**Q5 说明查询覆盖范围;Q13 使用“可能导致”,不将风险写成必然结果。
- **后续出题:**减少重复默写用户/计算机查询,增加短输出判断、补全结论和简短 GUI 核对题。账户反复锁定综合题留作下一次练习候选。
- **待实测:**Q11 在 AD 管理中心与 PowerShell 对照回收站状态;Q15 在用户会话中读懂 gpresult 的已应用/被筛选排除区域。未标为已经完成。
这次的主要进步是能说出“为什么这样查”;下一步练习重点是“查完以后,哪些结论能下,哪些还不能下”。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!













