1. 信任类型概述
| 信任类型 | 方向 | 传递性 | 适用场景 |
|---|---|---|---|
| 父子信任 | 双向 | 传递 | 同一林内,自动创建 |
| 树根信任 | 双向 | 传递 | 同一林内不同树之间,自动创建 |
| 快捷信任 | 单向/双向 | 传递/不传递 | 同一林内,优化跨树认证速度 |
| 外部信任 | 单向/双向 | 不传递 | 不同林之间(Windows 2000 以前兼容) |
| 林信任 | 双向 | 传递 | 两个林之间的全局信任 |
| 领域信任 | 单向/双向 | 不传递 | AD 与 Kerberos V5 领域之间 |
2. 创建快捷信任
当两个域在同一林内但位于不同树中,用户频繁跨域访问资源时,创建快捷信任可以避免认证请求层层传递。
PowerShell - 快捷信任
# 前提:假设林中存在 iehang.cn 和 corp.iehang.cn 两个域树
# 创建双向快捷信任
New-ADTrust `
-Name "corp.iehang.cn" `
-SourceParent "DC=iehang,DC=cn" `
-Direction "Bidirectional" `
-TrustType "Shortcut"
# 验证信任
Test-NetConnection -ComputerName "corp.iehang.cn"
Get-ADTrust -Filter "*" | Format-Table Name, Direction, TrustType"
3. 创建林信任
林信任连接两个独立的 AD 林,使两个林中的用户可以跨林访问资源(需要 DNS 解析互相可达)。
PowerShell - 林信任
# 在林 A(iehang.cn)上创建到林 B(partner.com)的林信任
$credB = Get-Credential "PARTNER\Administrator"
New-ADTrust `
-Name "partner.com" `
-SourceParent "DC=iehang,DC=cn" `
-Direction "Bidirectional" `
-TrustType "Forest" `
-ForestTrust $true
# 验证林信任
Get-ADTrust -Filter {TrustType -eq "Forest"}
Test-ADTrustRelationship -Source "iehang.cn" -Target "partner.com"
4. SID 筛选与 SIDHistory
⚠️ SID 安全
- SID 筛选:默认对外部信任启用,阻止来自信任域的 SID 被接受,防止"SID 历史攻击"
- SIDHistory:允许用户在迁移后保留旧 SID 的访问权限,但有安全风险
- 林信任中 SID 筛选默认关闭,建议在不需要 SIDHistory 时启用
5. 常见问题
Q1:信任关系突然失效
常见原因:1) 密码(信任密码)过期或不同步;2) DNS 无法解析对端域名;3) 防火墙阻止了 RPC 端口。使用 Test-ADTrustRelationship 诊断,必要时用 Reset-ADTrustPassword 重置信任密码。
Q2:信任关系能否跨 NAT 建立
不推荐。AD 信任需要稳定的双向网络连通性和 DNS 互相解析,NAT 后的 DC 不适合建立信任。如必须跨网络,建议使用 VPN。