前面几篇分别把 ESXi、AD 域控、GPO、VLAN 练了一遍。这几天把它们拼到了一起,在一台 ESXi 上用几台虚拟机搭出一个完整的域实验环境:AD + DNS + DHCP + 文件共享 + 组策略下发,网络侧用 VLAN 做了隔离。这篇是完整的搭建记录和一份资源开销清单,给同样想在家练手的同学参考。
一、实验目标与拓扑
想模拟一个小型企业网络:
- 一台域控,同时承担 DNS 和 DHCP;
- 一台文件服务器,提供部门共享;
- 两台 Windows 10 客户端,加域后接受组策略管理;
- 网络侧划分 VLAN:服务器 VLAN 10、办公 VLAN 20、访客 VLAN 30。
[ESXi 192.168.1.10]
├── DC01 Windows Server 2022 域控+DNS+DHCP 192.168.10.10 VLAN10
├── FS01 Windows Server 2022 文件服务器 192.168.10.11 VLAN10
├── PC01 Windows 10 办公客户端 DHCP VLAN20
└── PC02 Windows 10 办公客户端 DHCP VLAN20
网关:VLAN10 → 192.168.10.1
VLAN20 → 192.168.20.1
(由三层交换机 / 路由器的子接口承担)二、宿主机侧的资源分配
宿主机 32GB 内存,我这样分的:
DC01 2 vCPU / 4GB / 60GB
FS01 2 vCPU / 4GB / 80GB(共享盘给大一点)
PC01 2 vCPU / 4GB / 60GB
PC02 2 vCPU / 4GB / 60GB合计 16GB,剩下 16GB 给宿主机和后续扩展。实际跑起来后观察:Server 2022 带桌面体验空闲时占 1.5~2GB,Win10 占 2~2.5GB,所以 4GB 是够用的下限,再低会开始卡。这里插一句,实际企业里域控一般给 4~8GB,配 Server Core 安装可以压到 2GB 以内,但学习阶段还是用带界面的,方便对照图形工具和 PowerShell 命令。
三、ESXi 网络:用端口组承接 VLAN
这一步把上一篇的 VLAN 知识用上了。ESXi 里新建两个端口组:
PG-Server,VLAN ID = 10PG-Office,VLAN ID = 20
虚拟机的网卡挂到对应端口组,就等于插到了对应 VLAN 的 access 口上。交换机连 ESXi 的那个物理口配成 trunk 放行 10/20/30。
坑:ESXi 的管理网络(VMkernel 口)默认 VLAN ID 是 0(不打标签)。如果你把它改成了某个 VLAN ID,一定要确认交换机 trunk 的 native VLAN 和它一致,否则改完立刻连不上管理页面。我第一次改的时候直接把自己锁在外面,最后只能去机器前面接显示器,在 DCUI 里把网络配置改回来。
四、DC01:AD + DNS + DHCP 三件套
装域控的流程和上一篇一样,这里只记增量部分。
1. 建立林和域
Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Install-ADDSForest -DomainName "jikegang.lab" `
-DomainNetbiosName "JIKEGANG" `
-InstallDns `
-SafeModeAdministratorPassword (ConvertTo-SecureString "P@ssw0rd!23" -AsPlainText -Force) `
-Force装完重启,先做体检:
dcdiag /v
netdom query fsmo
Get-ADDomain | Select DNSRoot, DomainMode
Get-ADForest | Select Name, ForestMode2. DNS 转发器
这一步很多人漏。域控的 DNS 只负责 jikegang.lab 这个区域,解析外网域名时需要转发给上游。不配的话,域内机器访问互联网会解析失败。
# 图形:DNS 管理器 → 服务器 → 属性 → 转发器
# 命令行:
dnscmd 127.0.0.1 /ResetForwarders 223.5.5.5 114.114.114.1143. DHCP 服务器
Install-WindowsFeature DHCP -IncludeManagementTools
# 授权(关键!域环境下不授权 DHCP 不会服务)
Add-DhcpServerInDC -DnsName "dc01.jikegang.lab" -IPAddress 192.168.10.10
# 建作用域:办公网段
Add-DhcpServerv4Scope -Name "Office-VLAN20" `
-StartRange 192.168.20.100 -EndRange 192.168.20.200 `
-SubnetMask 255.255.255.0
# 选项:网关 + DNS(DNS 必须指向域控!)
Set-DhcpServerv4OptionValue -ScopeId 192.168.20.0 `
-Router 192.168.20.1 `
-DnsServer 192.168.10.10 `
-DnsDomain "jikegang.lab"三个必踩的坑:
- 不授权 DHCP 不工作:,域环境下的安全机制,装完必须
Add-DhcpServerInDC,否则客户端拿不到地址,服务器管理器里 DHCP 会显示红色未授权状态。 - DNS 选项指向域控:填成路由器或者公网 DNS,客户端就找不到域,加域时提示"找不到域控制器"。
- 跨 VLAN 需要 DHCP 中继:DHCP 靠广播工作,广播过不了三层。客户端在 VLAN 20、服务器在 VLAN 10,必须在网关设备上配
ip helper-address 192.168.10.10(思科)或dhcp select relay+dhcp relay server-ip 192.168.10.10(华为)。这一步忘了,PC 会拿到 169.254.x.x 的 APIPA 地址。
五、组织结构与用户(按 AGDLP 思路)
我按真实公司的样子建了 OU 结构,而不是把所有用户丢进 Users:
jikegang.lab
├── 公司
│ ├── 部门
│ │ ├── 技术部
│ │ ├── 财务部
│ │ └── 行政部
│ ├── 用户(按部门分)
│ └── 计算机
│ ├── 办公机
│ └── 公用机
└── 服务器权限设计用的是 AGDLP:账号加入全局组(Global),全局组加入域本地组(Domain Local),权限赋给域本地组。这样跨部门调岗时,只需要改全局组成员,资源服务器上的 NTFS 权限不用动。这套模型在小环境里看不出优势,但它是能讲清楚的设计原则,面试时也常被问到。
批量建号(CSV + 循环)跑完 10 个测试账号:
Import-Csv C:\users.csv | ForEach-Object {
New-ADUser -Name $_.Name `
-SamAccountName $_.SamAccountName `
-UserPrincipalName "$($_.SamAccountName)@jikegang.lab" `
-Path $_.OU -Department $_.Dept `
-AccountPassword (ConvertTo-SecureString "Init@2026" -AsPlainText -Force) `
-Enabled $true -ChangePasswordAtLogon $true
Add-ADGroupMember -Identity $_.Group -Members $_.SamAccountName
}六、FS01:文件服务器与共享
FS01 加域后,建共享文件夹,权限按 共享权限 Everyone 完全控制 + NTFS 权限做细粒度控制 的经典做法:
- 共享权限:
Everyone - 完全控制(图省事,实际收口在 NTFS) - NTFS 权限:去掉继承,只给
DL_技术部_RW(修改)、DL_财务部_R(读取)、Domain Admins(完全控制)
用 GPO 的驱动器映射把 \\FS01\技术部 挂成 Z: 盘,按安全组做项目级目标定位,不同部门的人登录拿到不同的盘。这一条在上一篇 GPO 里写过,这次是真的在两台 PC 上验证通过了:用技术部账号登录拿到 Z 盘,换财务部账号登录 Z 盘自动变成财务共享。
七、整体验证清单
环境搭完,我按这张表逐项验证,全绿才算完成:
☑ PC01/PC02 能自动获取 192.168.20.x 地址
☑ 能 ping 通网关 192.168.20.1
☑ 能 ping 通 192.168.10.10(跨 VLAN 互通)
☑ nslookup jikegang.lab 能解析到域控
☑ 加域成功,重启后可用域账号登录
☑ 登录后 Z: 盘自动映射
☑ gpresult /r 显示 GPO 已应用
☑ 密码策略生效(改密码时长度不足被拒绝)
☑ 域账号登录 FS01 共享正常,越权访问被拒
☑ dcdiag /v 全部通过八、下一步
这套环境留着继续用,接下来打算在上面练:
- 加第二台域控,做 AD 复制和 FSMO 角色迁移演练;
- 域控的系统状态备份与权威还原(这是数据库备份恢复那一块里我最想补齐的实操);
- Windows Server Backup 定时备份到 NAS;
- 接一台物理交换机进来,把 ESXi 的端口组和真实 trunk 打通,验证上一篇的 VLAN 配置。
小结
四天时间,从裸机到一套能跑通登录、认证、策略下发、文件权限的完整域环境。最大的体会是:这些技术单看文档都"懂",但只有真的串起来跑一遍,才会发现 DHCP 的 DNS 选项填错一格,整个加域流程就全崩。运维的价值就在于知道这一格在哪——这也是我把它完整记下来的原因。