在Active Directory(AD)域控环境下,推送安装软件并实现静默安装,通常有几种方法可以实现。根据你的需求,这里介绍几种常见的方式,它们支持EXE、MSI等多种安装包格式,并且可以实现静默安装。
Active Directory (AD) 完整解构
范畴:Windows Server Active Directory Domain Services AD DS(核心域服务),区分 Azure AD / Entra ID。定位:微软企业级目录服务 + 身份访问控制 + 分布式数据库 + 组策略管理平台;基于 LDAP、Kerberos、DNS、RPC、SMB 构建。
一、基础定义
- 域 Domain:管理边界,命名空间
contoso.com - DC:域控制器,运行 AD DS 服务、托管数据库
- AD Database (NTDS.dit):底层数据库文件
- GC 全局编录:森林内跨域对象索引
- SYSVOL:组策略、登录脚本共享存储
- FSMO 五大操作主机角色:域内唯一职能角色
- 复制(Replication):DC 之间同步对象变更
二、底层原理
1. 技术协议栈(AD 依赖标准协议)
- LDAP v3:目录查询、对象读写(默认端口 389;加密 LDAPS 636)
- Kerberos v5:主要身份认证协议(端口 88)
- DNS:AD 强制依赖 DNS,定位 DC、SRV 记录(_ldap._tcp、_kerberos._tcp)
- RPC / RPC over TCP:DC 之间复制、域管理通讯(135 + 动态端口)
- SMB2/3:访问 SYSVOL 共享(445)
- NTLM:兼容旧客户端备用认证(不推荐新建环境依赖)
2. 数据库模型
NTDS.dit
- 事务型数据库、支持回滚、日志先行(Write-Ahead Log)
- 多主复制模型:任意 DC 可接收写入,变更通过复制同步到所有 DC
- 对象结构:DN(可分辨名称)唯一标识对象(用户、计算机、组)
ntds.dit:主数据库edb.log:事务日志edb*.chk:检查点文件res1.log、res2.log:预留日志(崩溃保护)
3. 认证原理两条主线
(1)Kerberos 标准流程(现代 AD 默认)
客户端 → KDC(DC) AS_REQ → 获取TGT票据
客户端携带TGT → KDC → 获取服务票据ST
客户端携带ST → 目标服务器(文件服务器/应用)
服务器验证票据,完成登录授权
(2)NTLM(兼容遗留)
4. AD 复制原理
- 复制单元:属性级别变更(Attribute-level replication),不是整个对象
- 复制拓扑:由 知识一致性检查器 KCC 自动生成站点间 / 站点内复制链路
- 元数据:USN 更新序列号、InvocationID、时间戳,解决多主冲突
- 分区:
- 域分区(Domain Naming Context)本域用户计算机
- 配置分区(Configuration)森林全局拓扑
- 架构分区(Schema)对象属性定义(森林唯一)
- 应用程序分区(可选,DNS 分区等)
5. FSMO 五大角色(解决 “多主模型中必须单一写入” 场景)
- 架构主机 Schema Master:修改 AD 架构
- 域命名主机 Domain Naming Master:新增 / 删除域
6. 全局编录 GC Global Catalog
三、依赖文件、服务、目录(Windows DC)
1. 核心二进制与数据库路径
C:\Windows\NTDS\
├─ ntds.dit
├─ edb.log
├─ edb.chk
├─ res1.log, res2.log
C:\Windows\SYSVOL\sysvol
2. AD DS 核心系统服务
| 服务名称 | 显示名称 | 作用 |
|---|---|---|
NTDS |
Active Directory Domain Services | AD 核心目录服务(DC 标识) |
DNS |
DNS Server | AD 集成 DNS(推荐同机部署) |
Netlogon |
Net Logon | 域注册、SRV 注册、身份通道、定位 DC |
DFSR |
DFS Replication | SYSVOL 复制(Win2008+,替代旧 FRS) |
Kerberos Key Distribution Center KdcSvc |
KDC 票据分发 | Kerberos 认证 |
旧系统:Windows 2003 使用 FRS 复制 SYSVOL;新系统强制 DFSR。
3. 强制外部依赖
- DNS 服务
AD 无法脱离 DNS 运行;DC 自动注册 SRV 记录,客户端依靠 DNS 寻找 DC。
- 系统时间同步
Kerberos 要求客户端与 DC 时间偏差 ≤5 分钟;PDC 模拟器为域时间源。
- 网络端口连通
DC 之间、客户端 ↔ DC 全套端口开放(53,88,135,389,445,464,636 等)
四、完整逻辑链路(典型场景)
场景 1:域成员计算机加入域
PC启动 → Netlogon查询DNS _ldap._tcp SRV记录 → 找到可用DC
PC与DC建立LDAP连接
PC提交计算机账号创建请求(管理员权限)
DC写入NTDS.dit计算机对象,分配SID
计算机本地注册表标记为域成员
重启后使用计算机账号向DC认证
场景 2:域用户登录 Windows 工作站
用户输入账号密码
工作站 → DNS查找DC → 联系KDC(DC)
Kerberos AS_REQ 请求TGT
DC验证密码哈希,下发TGT缓存本地
工作站请求本地登录服务票据
使用ST完成本地登录
读取用户组策略(从SYSVOL拉GPO)
应用桌面、脚本、权限配置
场景 3:两台 DC 之间 AD 复制
KCC生成复制伙伴列表
DC之间建立RPC复制通道
某DC上用户密码修改 → 产生新USN变更
变更条目通过RPC推送给复制伙伴
接收DC比对USN,合并属性更新
写入本地ntds.dit,记录事务日志
五、配套技术链(AD 周边生态)
核心配套组件
- DNS(AD 集成区域)
区域数据存储在 AD 数据库,随 DC 自动复制;区别独立文件 DNS。
- SYSVOL / DFSR
组策略对象 GPO、登录脚本、域公共脚本共享。
- 组策略 GPO
AD 最重要管控载体;注册表策略、软件部署、安全策略、脚本分发。
- AD Sites & Services 站点服务
定义物理子网、控制复制流量、让客户端优先连接本地 DC(跨地域多分支机构)。
上层管理工具链
dsa.mscActive Directory 用户和计算机adsiedit.msc底层 LDAP 编辑器(直接操作对象属性)gpmc.msc组策略管理控制台dnsmgmt.mscDNS 管理器repadmin.exe复制状态诊断dcdiag.exeDC 健康综合检测ntdsutil.exeAD 数据库维护、授权还原、转移 FSMO- PowerShell ActiveDirectory 模块(
Import-Module ActiveDirectory)
扩展配套(企业常见)
- AD CS:证书服务,部署 PKI、LDAPS、智能卡登录
- AD FS:联合身份,实现 SSO、与第三方系统联邦登录
- NPS:网络策略服务器,结合 AD 做 802.1X、VPN 认证
- Azure AD Connect:本地 AD 同步到 Entra ID(云身份打通)
六、关键约束与底层风险点
- NTDS.dit 包含所有账号 NT 哈希
一旦文件泄露,可离线爆破密码;DC 必须高强度防护。
- 复制拓扑故障
KCC 失效、端口阻断 → DC 数据不一致,出现账号不同步。
- SYSVOL 复制故障(DFSR 停滞)
最常见运维故障:GPO 无法同步,策略不生效。
- 时间漂移
超过 5 分钟 Kerberos 直接拒绝登录。
- FSMO 角色丢失
架构主机宕机无法修改架构;RID 主机宕机无法新建用户 / 计算机。
- USN 回滚风险
快照还原 DC 容易引发 USN 冲突,造成复制永久断裂。
七、简易对比:AD DS vs Entra ID(Azure AD)
| 项目 | 本地 AD DS | Entra ID(原 Azure AD) |
|---|---|---|
| 存储 | NTDS.dit ESE 数据库 | 云端分布式存储 |
| 认证 | Kerberos、NTLM | OAuth2.0、OIDC、SAML,无原生 Kerberos |
| 寻址 | LDAP | Graph API |
| 资源管控 | 组策略 GPO | Intune、MDM |
| 网络 | 依赖内网 DC、端口较多 | 基于 HTTPS 出站访问云端 |
| 复制 | DC 之间多主复制 | 云端自动多副本 |
AD 核心诊断命令清单表格
1. dcdiag.exe 域控制器综合诊断
作用:批量检测 DC 健康、DNS、复制、FSMO、SYSVOL、Netlogon、Kerberos
| 命令 | 关键参数 | 描述 | 应用场景 | 实例 |
|---|---|---|---|---|
| dcdiag | 无参数 | 执行全套默认测试,输出摘要 | 日常巡检 DC 基础健康 | dcdiag |
| dcdiag | /c |
运行全部测试(包含可选扩展测试) | 深度故障排查 | dcdiag /c |
| dcdiag | /v |
详细模式,打印每一步明细 | 定位具体失败项 | dcdiag /v |
| dcdiag | /q |
仅输出错误(静默模式) | 脚本批量巡检 | dcdiag /q |
| dcdiag | /test:DNS |
仅执行 DNS 相关测试 | SRV 注册、DNS 解析故障 | dcdiag /test:DNS /v |
| dcdiag | /test:Replications |
仅测试 AD 复制链路 | 复制不通、数据不同步 | dcdiag /test:Replications |
| dcdiag | /test:SysVolCheck |
检测 SYSVOL/DFSR 状态 | 组策略不生效排查 | dcdiag /test:SysVolCheck |
| dcdiag | /test:Netlogon |
测试 Netlogon 服务与 DC 注册 | 客户端无法找到域控 | dcdiag /test:Netlogon |
| dcdiag | /s:<DC名称> |
指定远程 DC 检测 | 跨服务器巡检 | dcdiag /s:DC01.contoso.com |
| dcdiag | /f:log.txt |
输出日志到文件 | 留存报告用于分析 | dcdiag /v /f:dcdiag_report.txt |
2. repadmin.exe AD 复制专用工具
作用:查看复制伙伴、触发同步、查看 USN、排查复制冲突
| 命令 | 关键参数 | 描述 | 应用场景 | 实例 |
|---|---|---|---|---|
repadmin /showrepl |
/v |
查看入站复制伙伴、复制状态、上次成功时间 | 检查 DC 是否正常接收复制 | repadmin /showrepl DC01 |
repadmin /showrepl |
/errorsonly |
只列出复制失败链路 | 快速定位断复制链路 | repadmin /showrepl /errorsonly |
repadmin /syncall |
/e /A |
向所有伙伴强制触发同步(所有分区) | 变更需要立刻同步 | repadmin /syncall DC01 /e /A |
repadmin /sync |
/force |
两台 DC 之间手动单向同步 | 点对点紧急同步 | repadmin /sync DC01 DC02 |
repadmin /showutdvec |
无附加 | 查看 DC 最高 USN 序列,比对复制差异 | 判断两台 DC 数据差距 | repadmin /showutdvec DC01 contoso.com |
repadmin /showmeta |
对象 DN | 查看对象复制元数据、修改来源 DC | 排查属性冲突、重复对象 | repadmin /showmeta "cn=user1,ou=staff,dc=contoso,dc=com" |
repadmin /removelingeringobjects |
/advis |
清理 “延迟对象(幽灵对象)” | 长期离线 DC 重连产生残留对象 | repadmin /removelingeringobjects |
repadmin /queue |
无附加 | 查看当前等待复制队列 | 复制拥堵、大量变更堆积 | repadmin /queue |
3. ntdsutil.exe AD 数据库维护工具(交互式)
适用场景:数据库修复、快照挂载、授权还原、FSMO 角色转移、清理元数据
| 操作模块 | 子命令 | 描述 | 应用场景 | 操作示例 |
|---|---|---|---|---|
| ntdsutil | activate instance ntds |
激活 NTDS 实例(必须先执行) | 所有数据库维护前置步骤 | 交互式输入:activate instance ntds |
| ntdsutil | files |
进入文件维护模式,离线压缩、完整性检查 | ntds.dit 膨胀、碎片整理 | ntdsutil → activate instance ntds → files |
| ntdsutil | semantic database analysis |
语义数据库校验(逻辑损坏检查) | 数据库逻辑错误、对象异常 | semantic database analysis → go |
| ntdsutil | metadata cleanup |
清理离线强制下线 DC 残留元数据 | DC 非正常卸载,元数据残留无法复制 | metadata cleanup 图形 / 文本清理 |
| ntdsutil | roles |
FSMO 角色转移 / 占用(seize 抢占) | FSMO 主机永久宕机强制夺取角色 | roles → connections 连接 DC 后转移 |
| ntdsutil | snapshot |
创建 / 挂载 AD 快照 | 离线查看历史 AD 数据,不影响生产 | snapshot create;mount snapshot |
⚠️ seize(强制夺取 FSMO)仅原主机永久故障时使用,正常迁移使用transfer!
第二部分:AD DC 端口清单 Markdown
AD 客户端 ↔ DC、DC ↔ DC 必需端口
| 端口 | 协议 | 用途 | 备注 |
|---|---|---|---|
| 53 | UDP/TCP | DNS | SRV 记录解析、域名查询,AD 强依赖 |
| 88 | UDP/TCP | Kerberos KDC 认证 | 用户 / 计算机票据申请 |
| 135 | TCP | RPC 终结点映射器 | RPC 复制、域管理调用;搭配动态端口 |
| 389 | UDP/TCP | LDAP(明文) | LDAP 查询、对象读写;生产建议启用 636 |
| 636 | TCP | LDAPS(SSL 加密 LDAP) | 加密目录访问,推荐业务使用 |
| 445 | TCP | SMB2/3 | 访问 SYSVOL 共享、组策略文件 |
| 464 | UDP/TCP | Kerberos 密码变更 (kpasswd) | 修改域账号密码 |
| 3268 | TCP | GC 全局编录(明文) | 跨域 LDAP 查询 |
| 3269 | TCP | GC SSL 加密 | 加密全局编录查询 |
DC 之间复制附加端口(RPC 动态端口范围)
- Win2008 及以上:TCP
49152 ~ 65535可通过注册表 / 组策略固定 RPC 端口,防火墙策略更容易管控。
第三部分:AD 数据库备份 + 授权还原完整操作流程
重要区分:非授权还原:普通恢复,接收其他 DC 复制覆盖本机数据(DC 常规故障恢复)授权还原:恢复后本机变更拥有更高优先级,强制复制给其他 DC(误删账号 / GPO 回滚必备)⚠️ 禁止快照直接回滚 DC(极易触发 USN 回滚,破坏复制!优先使用系统状态备份)
前置条件
- 备份类型:Windows 服务器「系统状态备份」(包含 ntds.dit + SYSVOL + 注册表)
- 还原操作必须进入 目录服务还原模式 DSRM
- 需要 DSRM 管理员密码(DC 部署时设置)
- 多域环境:还原期间关闭其他 DC,或还原完成后执行授权标记
步骤 1:创建 AD 系统状态备份(wbadmin)
# 创建系统状态备份至D:\AD_Backup
wbadmin start systemstatebackup -backuptarget:D:
步骤 2:DC 重启进入【目录服务还原模式 DSRM】
msconfig→ 引导 → 安全引导 → 勾选【目录服务修复】- 重启服务器;登录账号使用 DSRM 本地管理员账号(非域账号)
bcdedit /set safeboot dsrepair
# 重启进入DSRM;修复完成后关闭安全模式
bcdedit /deletevalue safeboot
步骤 3:执行系统状态还原
# 查询可用备份版本
wbadmin get versions
# 执行系统状态还原(替换备份版本标识符)
wbadmin start systemstaterecovery -version:03/15/2026-02:00
步骤 4:【关键】授权还原操作(只在需要回滚误删除对象时执行)
如果只是普通硬件故障恢复,跳过此步,直接重启(非授权还原)
- DSRM 环境下启动 ntdsutil
ntdsutil
activate instance ntds
authoritative restore
场景 A:整域全部对象授权还原(慎用!全域数据强制覆盖)
authoritative restore: restore database
场景 B:仅单独 OU / 用户授权还原(推荐,最小影响)
restore subtree "ou=Staff,dc=contoso,dc=com"
填入要恢复 OU、用户、组的完整 DN
步骤 5:重启服务器,退出 DSRM 模式
bcdedit /deletevalue safeboot
shutdown /r /t 5
步骤 6:校验恢复与复制状态
repadmin /syncall /e /A
repadmin /showrepl /errorsonly
dcdiag /v
⚠️ 高危红线清单
- 不要对多复制环境随意执行全域授权还原,极易覆盖其他 DC 新增数据;优先使用子树授权还原。
- 虚拟机快照回滚 DC ≠ 备份还原,存在 USN 回滚风险,微软不推荐生产使用。
- 授权还原完成前禁止重启,否则变成普通非授权还原,删除对象会再次被复制同步丢失。
- RID 主机宕机未处理前,还原后可能无法新建域对象。
- 大型域还原前,建议先暂停 DFSR 复制,防止 SYSVOL 冲突。
(AD DS 域控制器)
一、Active Directory 的依赖文件有哪些?
C:\Windows\NTDS\、C:\Windows\SYSVOL\1. NTDS 数据库核心文件(域控核心)
| 文件名 | 作用 |
|---|---|
ntds.dit |
AD 主数据库,存储所有域对象(用户、计算机、组、权限、架构);ESE Jet 数据库载体 |
edb.log |
事务日志。所有写入先写日志,再刷入 ntds.dit;崩溃恢复依靠此日志 |
edb.chk |
检查点文件,记录日志已经写入数据库的位置 |
res1.log、res2.log |
预留事务日志;磁盘写满时,保证数据库可以正常关闭,防止数据损坏 |
edb*.log(edb00001.log 等) |
滚动归档事务日志 |
2. SYSVOL 配套文件(DFSR 复制承载)
C:\Windows\SYSVOL\sysvol\域名- GPO 文件夹:组策略对象、注册表策略、脚本
- 登录 / 注销脚本、域公共配置文件
Win2008+ 使用 DFSR 同步 SYSVOL;旧系统 FRS(淘汰)
3. 系统层面依赖文件 / 组件
- 注册表:存储 NTDS 服务配置、DSRM 参数、站点信息
- 系统根证书文件:用于 LDAPS、AD CS 证书校验
- 系统 DNS 区域文件(AD 集成 DNS 区域数据保存在 ntds.dit 内,不再是独立文本 zone 文件)
⚠️ 关键:ntds.dit 包含全部账号 NTLM 哈希,泄露存在极高安全风险
二、Active Directory 的逻辑链路是怎样的?
链路 1:域成员 用户登录完整逻辑链路
域工作站开机 → Netlogon服务查询DNS SRV记录(_ldap._tcp、_kerberos._tcp)
↓
定位可用域控制器DC
↓
1. Kerberos流程:客户端向DC(KDC)发起AS_REQ请求TGT票据
2. DC校验账号凭据,下发TGT票据
↓
客户端使用TGT,向KDC申请本地登录服务票据ST
↓
工作站验证ST,完成身份登录
↓
工作站通过LDAP读取用户属性、所属组
↓
从DC SYSVOL共享拉取对应GPO组策略
↓
应用桌面策略、脚本、安全配置
链路 2:多 DC 之间 AD 复制逻辑链路
管理员在DC01新建/修改用户对象 → 产生新USN变更号
↓
KCC(知识一致性检查器)自动生成复制拓扑伙伴
↓
DC之间通过RPC通道传输属性级变更(只同步改动属性,非完整对象)
↓
接收DC写入本地edb事务日志 → 落地ntds.dit
↓
冲突依靠USN、时间戳自动解决多主写入冲突
↓
SYSVOL内容依靠DFSR同步到所有域控
链路 3:LDAP 查询链路(应用系统对接 AD)
三、如何配置 Active Directory 的依赖关系?
1. Windows 服务启动依赖(NTDS 核心服务)
-
NTDS(Active Directory Domain Services)服务依赖:
- DNS Server、Netlogon、RPC
查看 / 修改方式:
cmdsc qc ntds不建议手动修改 NTDS 内置服务依赖,系统安装 DC 时自动生成 - DNS Server、Netlogon、RPC
-
配套服务依赖关系
- Netlogon:依赖 TCP/IP 网络栈,负责 DC DNS 注册、域定位
- DFSR:依赖 NTDS,用于 SYSVOL 复制
- KdcSvc (KDC):跟随 NTDS 一同启停
2. 网络与 DNS 强制依赖配置(最重要)
- DC 网卡 DNS 首选必须指向自身或同域其他 DC,禁止公网 DNS 作为主 DNS
- 确认 DC 自动注册 SRV 记录;可手动执行:
cmd
net stop netlogon && net start netlogon - 防火墙开放 AD 全套端口(53、88、389、445、636、RPC 动态端口)
3. AD 站点与服务(Sites and Services)配置复制依赖
- 创建站点、关联子网(物理网段映射站点)
- 创建站点链接,配置复制间隔、首选复制路径
- KCC 依据站点配置自动生成复制拓扑;可手动禁用自动拓扑自定义链路(极少使用)
4. 时间同步依赖配置(Kerberos 硬性要求,偏差≤5 分钟)
- 域内所有 PC / 成员服务器:自动向域内 DC 同步时间
- 域内 PDC 模拟器角色 DC:向外同步公网 NTP 源
# PDC模拟器配置外部NTP
w32tm /config /manualpeerlist:"ntp.aliyun.com" /reliable:yes /syncfromflags:manual
5. 高可用依赖规划配置(运维层面)
- 部署多台域控,避免单点故障;FSMO 角色合理分配
- 规划 GC 全局编录服务器,优化跨域查询
- 业务系统对接 AD,优先配置多 DC 故障转移(应用填写多个 LDAP 地址)
补充重要说明
DNS 先行 → 网络连通 → Kerberos/LDAP 认证 → AD 复制 / GPO 下发所有调整围绕:DNS、网络端口、站点复制拓扑、时间同步、服务启停顺序。
ActiveDirectory PowerShell 模块高频命令清单表
前置条件:域控制器 / 安装「远程服务器管理工具 RSAT-AD-PowerShell」导入模块:Import-Module ActiveDirectory执行权限:域管理员、账号操作员等对应 AD 权限
| 命令 | 关键参数 | 功能描述 | 典型应用场景 | 实操示例 | |
|---|---|---|---|---|---|
| Get-ADUser | -Filter、-Properties、-SearchBase、-Enabled |
查询域用户对象,可扩展读取自定义属性 | 导出用户清单、查找禁用 / 过期账号 | Get-ADUser -Filter {Enabled -eq $true} -Properties EmailAddress,LastLogonDate -SearchBase "OU=Staff,DC=contoso,DC=com" |
|
| New-ADUser | -Name、-SamAccountName、-UserPrincipalName、-Path、-AccountPassword、-Enabled |
新建域用户账号 | 批量创建员工账号 | $pwd=ConvertTo-SecureString "Pass@123" -AsPlainText -Force; New-ADUser -Name "张三" -SamAccountName zhangsan -UserPrincipalName zhangsan@contoso.com -Path "OU=Staff,DC=contoso,DC=com" -AccountPassword $pwd -Enabled $true |
|
| Set-ADUser | -Identity、-EmailAddress、-Department、-Title、-ChangePasswordAtLogon |
修改用户属性、部门、邮箱、登录强制改密 | 人员岗位调整、信息更新 | Set-ADUser zhangsan -Department "研发部" -ChangePasswordAtLogon $true |
|
| Remove-ADUser | -Identity、-Confirm:$false |
删除域用户 | 员工离职清理账号 | Remove-ADUser zhangsan -Confirm:$false |
|
| Unlock-ADAccount | -Identity |
解锁被锁定的域账号 | 员工密码输错锁定应急处理 | Unlock-ADAccount zhangsan |
|
| Set-ADAccountPassword | -Identity、-NewPassword |
重置域用户密码 | 员工忘记密码 | $newPwd=ConvertTo-SecureString "NewPass@456" -AsPlainText -Force; Set-ADAccountPassword zhangsan -NewPassword $newPwd -Reset |
|
| Enable-ADAccount / Disable-ADAccount | -Identity |
启用 / 禁用域账号 | 员工离职禁用、新账号启用 | Disable-ADAccount zhangsan |
|
| Search-ADAccount | -AccountDisabled、-AccountExpired、-PasswordExpired、-LockedOut |
专项检索:过期账号、锁定账号、密码过期账号 | 定期安全巡检 | Search-ADAccount -LockedOut |
|
| Get-ADComputer | -Filter、-Properties LastLogonDate、-SearchBase |
查询域内计算机对象,查询设备登录时间 | 梳理僵尸计算机、终端资产盘点 | `Get-ADComputer -Filter * -Properties LastLogonDate | Select Name,LastLogonDate` |
| New-ADComputer | -Name、-SamAccountName、-Path |
预创建计算机账号(提前预埋,支持无人加域) | 桌面标准化部署 | New-ADComputer -Name PC-TEST01 -Path "OU=PC,DC=contoso,DC=com" |
|
| Remove-ADComputer | -Identity |
删除域计算机对象 | 报废设备清理 | Remove-ADComputer PC-TEST01$ -Confirm:$false |
|
| Get-ADGroup | -Filter、-Properties Member |
查询安全组 / 通讯组,查看组成员 | 权限梳理、组清单导出 | Get-ADGroup "研发部全员" -Properties Member |
|
| New-ADGroup | -Name、-GroupCategory、-GroupScope、-Path |
新建 AD 组(安全组 / 通讯组) | 权限规划新建用户组 | New-ADGroup -Name "研发读写权限" -GroupCategory Security -GroupScope Global -Path "OU=Groups,DC=contoso,DC=com" |
|
| Add-ADGroupMember | -Identity、-Members |
向组添加用户 / 计算机 | 分配资源访问权限 | Add-ADGroupMember "研发部全员" -Members zhangsan,lisi |
|
| Remove-ADGroupMember | -Identity、-Members |
从组移除成员 | 人员岗位变动回收权限 | Remove-ADGroupMember "研发部全员" -Members zhangsan -Confirm:$false |
|
| Get-ADOrganizationalUnit | -Filter、-Properties |
查询 OU 组织单元结构 | 梳理域组织架构 | `Get-ADOrganizationalUnit -Filter * | Select Name,DistinguishedName` |
| New-ADOrganizationalUnit | -Name、-Path |
新建 OU,用于分层管理对象 | 域架构规划 | New-ADOrganizationalUnit -Name "市场部" -Path "DC=contoso,DC=com" |
|
| Get-ADDomainController | -Filter、-Discover |
查询域控制器信息、自动发现可用 DC | 巡检 DC 状态、排查客户端寻址问题 | Get-ADDomainController -Discover |
|
| Get-ADDomain | 无必填参数 | 查询当前域信息、PDC 模拟器、RID 主机等 FSMO 信息 | 域基础信息核查 | Get-ADDomain contoso.com |
|
| Get-ADForest | 无必填参数 | 查询森林信息、森林级别、架构主机、域命名主机 | 多域森林环境运维 | Get-ADForest contoso.com |
|
| Move-ADObject | -Identity、-TargetPath |
移动用户 / 计算机 / 组对象到其他 OU | 人员调整、对象 OU 迁移 | Move-ADObject -Identity "CN=zhangsan,OU=Staff,DC=contoso,DC=com" -TargetPath "OU=Dev,DC=contoso,DC=com" |
|
| Get-ADObject | -LDAPFilter、-Properties |
通用底层 LDAP 查询,可查询任意类型 AD 对象(含特殊对象) | 高级查询、查找已删除对象、元数据排查 | Get-ADObject -LDAPFilter "(objectClass=group)" |
|
| Get-ADReplicationPartnerMetadata | -Target |
获取 DC 复制元数据,等价 repadmin 信息 | PowerShell 方式排查复制同步 | Get-ADReplicationPartnerMetadata -Target DC01 |
|
| Get-ADObject –IncludeDeletedObjects | -Filter |
查询 AD 回收站已删除对象(开启回收站可用) | 误删账号临时恢复排查 | Get-ADObject -Filter {Deleted -eq $true} -IncludeDeletedObjects |
|
| Restore-ADObject | -Identity |
恢复 AD 回收站中已删除对象 | 误删用户、OU 快速恢复 | Restore-ADObject -Identity "CN=zhangsan\0ADEL:xxxxxxx,..." |
常用综合脚本片段(可直接改造)
- 导出所有启用用户 + 邮箱 + 最后登录时间
Get-ADUser -Filter {Enabled -eq $true} -Properties EmailAddress,LastLogonDate `
| Select Name,SamAccountName,UserPrincipalName,EmailAddress,LastLogonDate `
| Export-Csv -Path C:\AD_UserList.csv -Encoding UTF8 -NoTypeInformation
- 查询 90 天未登录僵尸计算机
$time = (Get-Date).AddDays(-90)
Get-ADComputer -Filter {LastLogonDate -lt $time} -Properties LastLogonDate `
| Select Name,LastLogonDate
补充运维重要提示
-Properties *会读取对象全部属性,生产环境慎用,性能较差;按需指定属性。- 大域查询建议增加
-SearchBase指定 OU 缩小查询范围,降低 DC 负载。 - AD 回收站需要森林功能级别 Win2008R2 及以上手动启用,才能使用 Restore-ADObject。
- 批量操作建议先不带
-Confirm:$false预览结果,确认无误再执行删除 / 移动。
Active Directory (AD) 协议、标准和技术文档,主要来源如下:
1. Active Directory 概述
Active Directory(AD)是由微软开发的一种目录服务,广泛用于组织内的身份管理、认证、授权和目录查询。它使用多种协议来支持其功能,包括 LDAP、Kerberos、DNS、RPC 等。
2. Active Directory 协议
-
LDAP (Lightweight Directory Access Protocol)
- 用于访问和管理目录信息服务。AD 使用 LDAP 协议作为与客户端和其他服务器进行通信的基础。
- RFC 4511 — Lightweight Directory Access Protocol (LDAP): Version 3
- LDAP 安全性:Active Directory 通过使用 LDAPS(LDAP over SSL/TLS)来提供加密保护通信。
-
Kerberos
- 用于验证身份的协议,是 Active Directory 中实现身份验证的主要协议。Kerberos 提供了强大的安全性,并通过票据交换机制(TGT)来实现身份验证。
- RFC 4120 — The Kerberos Network Authentication Service (V5)
-
DNS (Domain Name System)
- AD依赖DNS来进行服务发现和域名解析,尤其是用于查找域控制器(DC)的位置。
- RFC 1034 和 RFC 1035 — DNS协议
-
RPC (Remote Procedure Call)
- 通过RPC协议,Active Directory 实现了远程方法调用功能,允许不同机器上的程序进行通信。
- RFC 1831 — Remote Procedure Call (RPC) Protocol Specification
-
SMB (Server Message Block)
- 用于文件共享和网络通信,Active Directory 依赖于 SMB 协议来实现文件和打印机共享。
- RFC 4452 — The SMB Protocol
3. Active Directory 标准和技术文档
-
微软官方文档
- 微软为 Active Directory 提供了详细的技术文档和部署指南,包括如何配置、管理、故障排除和优化AD环境。
- Microsoft AD Documentation
-
Windows Server Active Directory:包括有关AD架构、域控制器、组策略、身份验证、DNS集成、用户和计算机管理的详细信息。
- Windows Server AD Documentation
-
Microsoft Kerberos 文档
- 详细介绍了 Kerberos 认证协议的实现,以及它如何与 Active Directory 配合使用。
- Microsoft Kerberos 文档
-
AD 和 LDAP 集成指南
- Active Directory 与 LDAP 协议集成,AD 支持LDAP协议,可以让外部系统与AD进行目录服务交互。
- LDAP Protocols in AD: LDAP and Active Directory Integration
-
AD 域与信任管理
- 描述了AD如何管理域信任、跨域认证等方面的技术文档,帮助管理员进行跨域或跨林的身份验证和权限配置。
- Domain Trusts in AD
-
Active Directory LDAP 查询与操作
- 包括对AD目录的查询、数据检索、修改和管理等操作。
- Active Directory LDAP Operations
4. 其他技术资源和工具
-
IETF(Internet Engineering Task Force)
- IETF标准为 AD 使用的协议(如 LDAP 和 Kerberos)提供了正式的技术规范。
- IETF官方网站
-
OpenLDAP
- 虽然是一个开源实现,但 OpenLDAP 是 LDAP 协议的实现之一,对于理解 AD 中的 LDAP 协议有很大的帮助。
- OpenLDAP Documentation
-
Samba
- Samba 是一个开源项目,可以让 Linux 系统充当 Active Directory 域控制器,适用于混合环境的 AD 集成。
- Samba Documentation
-
Wireshark
- 用于网络协议分析工具,Wireshark 是研究 AD 协议(如 Kerberos、LDAP、RPC 和 SMB)的重要工具。
- Wireshark Official Site
5. 其他标准文档
-
RFC 3241 — X.500 Directory Access Protocol (DAP)
- 描述了 X.500(与 LDAP 相关的协议)目录服务的访问协议。
- RFC 3241 - X.500 Directory Access Protocol
-
RFC 5766 — Traversal Using Relays around NAT (TURN)
- TURN协议对于AD环境中的远程桌面和其他网络服务可能有帮助,尤其是在 NAT 网络中的通信。
- RFC 5766 - TURN
通过这些资源,您可以深入了解 Active Directory 的实现原理、协议标准以及如何在不同环境中部署和管理 AD 系统。
AD 域环境通过组策略推送软件静默安装完整解构
主流两种方案:GPO 软件部署(MSI 指派 / 发布)、GPO 启动脚本静默安装(EXE/MSI 通用)底层载体:SYSVOL、组策略客户端引擎、Windows Installer 服务
一、基础概念
- 方案 A:组策略「软件安装」扩展(原生 MSI 部署),仅支持
.msi安装包 - 方案 B:计算机启动脚本 / 用户登录脚本,支持 MSI、EXE,通用性更强(企业最常用)
一、底层原理
1. 方案 A:GPO 软件安装(软件分配 / 发布,仅 MSI)
- 域管理员在 GPO 编辑器中导入 MSI 包,策略信息写入 AD 数据库 (NTDS.dit)
- MSI 安装包存放于SYSVOL 共享目录(所有域成员可读取)
- 计算机开机:计算机配置→指派软件;用户登录:用户配置→发布 / 指派软件
- 客户端
gpclient.exe(组策略客户端)拉取 GPO 策略 - 客户端调用 Windows Installer 服务(msiexec) 执行静默部署
- 安装状态回写本地注册表,策略检测是否已安装,避免重复部署
核心限制:不支持 EXE 程序,只能原生 MSI;无法自定义复杂前置依赖校验。
2. 方案 B:GPO 启动脚本(推荐,MSI/EXE 全兼容)
域计算机开机 → 网络就绪 → 客户端定位DC(DNS SRV+Kerberos/LDAP)
→ gpclient.exe 请求下载对应GPO
→ 读取【计算机配置-脚本-启动脚本】
→ 从SYSVOL共享读取批处理/PowerShell脚本
→ 本地执行脚本,调用msiexec / 第三方静默参数安装软件
→ 脚本可增加判断:检测软件是否已安装、版本校验、前置组件安装
- 执行身份:本地系统账户(NT AUTHORITY\SYSTEM),拥有管理员权限,适合系统级软件安装
- 执行时机:登录前,无用户交互,完美满足静默要求
3. 关键底层组件
- Group Policy Client(gpsvc):组策略核心客户端服务,拉取、解析、应用 GPO
- Windows Installer (
msiexec.exe):MSI 包静默安装引擎 - DFSR:保证 SYSVOL 在多域控之间同步脚本、安装包、GPO 文件
- Netlogon:协助客户端定位域控制器、建立安全通道
二、依赖文件、目录
1. 核心存储目录(域控 DC)
- SYSVOL 共享(强制依赖)
路径:
C:\Windows\SYSVOL\sysvol\<contoso.com>\scripts\
规范做法:所有脚本、安装程序统一存放此处,域计算机默认具备读取权限
SYSVOL
├─scripts
│ ├─install_7zip.bat # 启动脚本
│ └─Software
│ └─7z2301-x64.msi # 安装源包
- GPO 本体文件
C:\Windows\SYSVOL\sysvol\<域名>\Policies\{GPO-GUID}\
GPT.ini:GPO 版本标记Machine\Scripts\Startup:计算机启动脚本存放目录User\Scripts\Logon:用户登录脚本存放目录
- AD 数据库
ntds.dit:保存 GPO 属性、范围、链接 OU 信息;GPO 元数据随 AD 复制同步到所有 DC
2. 客户端依赖文件
gpsvc.dll组策略客户端模块msiexec.exeMSI 安装程序- 本地注册表:记录已应用 GPO 版本、软件安装状态
路径:
HKLM\Software\Microsoft\Windows\CurrentVersion\Group Policy
3. 权限依赖
- 域计算机机器账号(
DOMAIN\PC01$)必须拥有 SYSVOL 目录读取权限 - 禁止给安装包 / 脚本设置管理员专属权限,否则开机无法读取文件
三、依赖关系梳理
1. 服务依赖顺序(必须满足)
- DNS 服务正常 → 客户端查询 DC 地址
- Netlogon 服务启动 → 建立域安全通道
- Group Policy Client (gpsvc) 启动 → 拉取 GPO 策略
- Windows Installer 服务 (msiserver) 就绪 → 执行软件静默安装
2. 网络依赖端口
⚠️ 445 端口至关重要!客户端依靠 SMB 访问 SYSVOL 读取脚本与安装包,防火墙拦截直接导致部署失败。
3. AD 复制依赖
dcdiag /test:sysvolcheck4. 系统版本依赖
- Windows 10/11、Server 2016+ 默认支持组策略启动脚本;
- 客户端必须加入域、时间和 DC 偏差<5 分钟(Kerberos 认证)
5. 软件包依赖
- MSI:标准
msiexec /i xxx.msi /qn /norestart - EXE:需查阅软件文档
Setup.exe /S /verysilent /install等厂商专属参数
四、完整逻辑链路(启动脚本方案,最常用)
域计算机开机
TCP/IP栈启动,Netlogon查询DNS SRV记录寻找DC
域计算机开机
TCP/IP栈启动,Netlogon查询DNS SRV记录寻找DC
补充:GPO 软件指派(MSI 原生方式)链路
五、配套技术链(周边配套工具与运维手段)
1. 管理工具
gpmc.msc组策略管理控制台:创建、编辑、链接 GPO 到 OUgpedit.msc本地组策略编辑器(客户端调试)- PowerShell ActiveDirectory 模块:批量创建、链接 GPO
New-GPO -Name "软件部署-7zip"
New-GPLink -Name "软件部署-7zip" -Target "OU=WorkPC,dc=contoso,dc=com"
2. 客户端调试命令(排错必备)
# 强制刷新组策略
gpupdate /force
# 查看组策略应用结果,定位失败策略
gpresult /r
# 输出详细HTML策略报告
gpresult /h C:\gpreport.html
3. 日志配套
应用程序和服务日志 → Microsoft → Windows → GroupPolicyOperational
4. 扩展配套方案
- WMI 筛选:针对特定系统版本(仅 Win11 部署),精细化控制哪些 PC 执行安装
- Item 级别目标:GPO 首选项配合脚本,区分不同部门终端
- WSUS:配合软件补丁更新
- SCCM/MECM:大型企业进阶方案(替代纯 GPO,支持带宽控制、断点续传、进度监控)
六、两种方案优缺点对比
| 方案 | 支持包 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| GPO 原生软件安装(指派 MSI) | 仅 MSI | AD 原生,无需编写脚本;可在控制面板卸载托管程序 | 不支持 EXE;无法自定义前置校验;容错弱 | 标准化 MSI 商业软件,环境简单 |
| GPO 计算机启动脚本 | MSI+EXE 全支持 | 高度灵活,可增加检测逻辑、依赖安装、版本判断 | 需要自行编写脚本;卸载需要额外脚本 | 绝大多数企业,推荐首选 |
七、标准静默安装脚本模板(BAT,直接放入 SYSVOL)
@echo off
::检测7-Zip是否安装,通过注册表判断
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\7-Zip" >nul 2>&1
if %errorlevel% equ 0 goto end
::未安装,执行MSI静默安装
msiexec /i "\\contoso.com\SYSVOL\contoso.com\scripts\Software\7z2301-x64.msi" /qn /norestart
:end
exit
八、常见风险点
- SYSVOL 权限不足:计算机账号无法读取共享文件,脚本完全不运行
- 445 端口被防火墙拦截 → 无法访问脚本
- 脚本使用用户登录脚本:仅用户登录执行;系统级软件务必使用【计算机启动脚本】
- 缺少安装静默参数 → 弹出安装窗口,无人交互卡住
- 多域控 SYSVOL DFSR 复制故障,部分站点拿不到安装包
- 未做注册表检测,反复循环安装,开机缓慢
在Active Directory(AD)域控环境下,推送安装软件并实现静默安装,通常有几种方法可以实现。根据你的需求,这里介绍几种常见的方式,它们支持EXE、MSI等多种安装包格式,并且可以实现静默安装。
1. 组策略(Group Policy)部署
组策略是AD域环境中部署软件的一种常见方式。它特别适合MSI安装包。可以通过组策略将软件自动推送到指定的计算机上。
步骤:
-
创建共享文件夹:首先,将安装包(.MSI 或 .EXE)放置在网络共享文件夹中,确保所有目标计算机都能访问到该文件夹。
-
打开“组策略管理”控制台:
- 在域控制器上,打开“组策略管理”(
gpmc.msc)。
- 在域控制器上,打开“组策略管理”(
-
创建新组策略对象(GPO):
- 在“组策略管理”控制台中,右键点击目标组织单位(OU)或者整个域,选择“创建一个GPO并在此链接”。
-
配置软件部署:
- 右键点击新创建的GPO,选择“编辑”。
- 导航至:
计算机配置→软件设置→软件安装。 - 右键点击“软件安装”,选择“新建” → “包”。
- 输入共享文件夹中的MSI安装包路径,选择“分配”或“发布”。
- “分配”:软件将自动安装。
- “发布”:用户可以选择安装。
-
推送安装:
- 完成配置后,GPO将会推送软件到目标计算机。计算机会在下次启动时(或者在强制更新组策略后)自动安装软件。
注意事项:
- 该方法主要适用于MSI格式的安装包。如果是EXE格式的文件,可以考虑使用“包装”工具将其转换为MSI格式,或者使用其他方法(如脚本)。
2. 使用脚本(例如批处理、PowerShell脚本)
如果你需要安装EXE格式的文件,或者MSI包的安装需要特定的参数(如静默安装),可以使用批处理文件(.bat)或PowerShell脚本进行静默安装。
步骤:
-
创建批处理文件(.bat)或PowerShell脚本(.ps1):
- 对于EXE安装包,常见的静默安装命令通常类似于:
Copy Code
setup.exe /silent /quiet /install - 对于MSI安装包,静默安装命令通常为:
Copy Code
msiexec /i "setup.msi" /quiet /norestart
- 对于EXE安装包,常见的静默安装命令通常类似于:
-
通过组策略或任务计划推送脚本:
- 通过组策略:可以使用组策略将脚本分发到目标计算机,操作步骤类似于上述的组策略软件部署方法。将脚本放在共享文件夹中,并通过GPO的“脚本”设置分发。
- 通过任务计划:你也可以在目标计算机上创建一个任务计划,指定批处理文件或PowerShell脚本的执行。可以使用
at命令或Task Scheduler来计划任务执行。
3. 使用System Center Configuration Manager (SCCM)
如果你的环境中部署了System Center Configuration Manager(SCCM),它是一个强大的工具,可以用于推送软件、管理更新和进行静默安装。SCCM支持多种格式的软件包,包括EXE、MSI等。
步骤:
-
创建应用程序包:
- 在SCCM控制台中,创建一个新的应用程序,并选择对应的安装包格式(如MSI、EXE)。
-
配置静默安装命令:
- 设置安装命令行,如:
- 对于EXE文件:
setup.exe /silent - 对于MSI文件:
msiexec /i "setup.msi" /quiet /norestart
- 对于EXE文件:
- 设置安装命令行,如:
-
部署软件:
- 将应用程序包部署到指定的计算机组或集合。
4. 通过远程桌面或管理工具
如果需要在少量计算机上执行推送安装,可以考虑通过远程桌面或其他远程管理工具(如PDQ Deploy)进行手动或批量的静默安装。
步骤:
-
准备安装包:将EXE或MSI包上传到目标机器。
-
使用远程管理工具:例如,使用PDQ Deploy等工具可以非常方便地进行批量软件安装,并支持静默安装命令。
静默安装命令参考
-
MSI格式的静默安装:
Copy Codemsiexec /i "setup.msi" /quiet /norestart/i:安装/quiet:静默安装/norestart:安装后不重启
-
EXE格式的静默安装(命令因软件不同而异):
- 常见命令:
Copy Code
setup.exe /S /quiet setup.exe /silent setup.exe /verysilent
根据不同软件的需求,安装参数有所不同,可以参考软件的安装文档。
- 常见命令:
在AD域环境下推送静默安装软件,可以使用组策略(适用于MSI安装包)、脚本(适用于EXE或定制安装)、SCCM等工具。不同的方式根据环境的规模和需求不同而选择,最常用的还是组策略和脚本方法,尤其适合小到中型的网络环境。
在Active Directory (AD) 域控环境中,推送和静默安装软件的任务可以通过多种第三方软件来完成。这些软件通常支持多个安装包格式,包括 .exe、.msi 等,并且可以批量部署,适合大规模企业环境。以下是一些常见的第三方软件,它们支持在AD环境下推送和静默安装软件。
1. PDQ Deploy
PDQ Deploy 是一款非常流行的 Windows 软件部署工具,它能够通过网络远程推送软件,并支持静默安装。它支持多种安装包格式,包括 .exe、.msi、.bat 和 .ps1 脚本等。该工具提供了一个简洁的图形用户界面,可以方便地配置和管理部署任务。
主要特点:
- 多种文件格式支持:支持
.exe、.msi、.bat等安装包。 - 静默安装:能够以静默方式安装软件,无需用户交互。
- 批量部署:可以选择多个目标计算机进行软件推送和安装。
- 定时任务:支持定时安排任务,例如每天/每周自动执行安装。
- 远程执行:可以远程在其他计算机上执行安装,不需要在每台机器上手动操作。
使用方法:
- 创建一个部署任务,选择安装包(.exe、.msi)。
- 配置静默安装参数(如果没有自动提供,手动设置)。
- 选择目标计算机或组织单位(OU)。
- 执行任务。
官网:
2. ManageEngine Desktop Central
ManageEngine Desktop Central 是一款强大的 IT 管理和软件部署工具,可以帮助管理员管理和推送软件到 Windows 计算机。它支持静默安装,能够通过单一控制台远程部署应用。
主要特点:
- 支持多种格式:包括
.exe、.msi、.bat、.ps1等。 - 定时任务和自动化:支持定期部署和更新软件。
- 策略驱动部署:可以基于设备、用户、位置或组织单位选择目标设备进行部署。
- 远程控制和修复:支持在部署后对计算机进行远程故障排除。
- 全面的软件管理:支持软件清单、许可证管理、补丁管理等。
使用方法:
- 配置“软件分发”策略,选择需要安装的文件格式和目标计算机。
- 配置静默安装命令行选项。
- 指定部署时间,开始部署。
官网:
3. KACE Systems Management Appliance (KACE SMA)
KACE SMA 是 Quest Software 提供的一款企业级 IT 管理工具,能够进行批量软件部署、操作系统管理、补丁管理等。它支持多个安装格式,并能够通过自动化和策略驱动部署。
主要特点:
- 支持多种格式:包括
.exe、.msi、.zip 等安装包。 - 静默安装:可以通过定义静默参数自动进行安装。
- 集中管理:支持集中化管理多台计算机,轻松推送软件。
- 部署任务定时和自动化:支持定期执行安装任务。
- 软件更新和补丁管理:不仅支持软件部署,还可以自动推送操作系统补丁和软件更新。
使用方法:
- 创建软件分发任务,上传安装包并配置静默参数。
- 指定目标计算机或计算机组。
- 配置任务定时执行,或者手动启动任务。
官网:
KACE Systems Management Appliance
4. NinjaRMM
NinjaRMM 是一款基于云的远程管理和监控工具,专门为中小型企业提供 IT 运维解决方案。它支持通过静默方式远程推送软件,并支持多种安装包格式。
主要特点:
- 跨平台支持:支持 Windows 和 macOS 的软件部署。
- 静默安装:支持静默安装和远程执行命令。
- 远程桌面支持:可以通过远程桌面功能进行故障排查。
- 自动化任务:能够定期或按需执行安装和更新任务。
使用方法:
- 选择需要部署的软件包,上传到 NinjaRMM。
- 配置静默安装命令。
- 选择目标计算机并推送软件。
官网:
5. SolarWinds Patch Manager
SolarWinds Patch Manager 主要用于管理和推送 Windows 更新和软件补丁,但它也支持部署常见的软件包,包括静默安装的 .exe 和 .msi 文件。其强大的集中管理功能和灵活的自动化设置,使其成为许多企业 IT 部门的首选工具。
主要特点:
- 软件分发和补丁管理:能够集中管理 Windows 更新、应用补丁和软件部署。
- 自动化部署:可以自动推送静默安装任务和更新补丁。
- 跨平台支持:支持 Windows 和部分其他操作系统的管理。
- 报告和监控功能:提供详细的部署日志和状态监控。
使用方法:
- 在 SolarWinds 控制台中配置软件部署任务。
- 上传所需的软件包,并为其配置静默安装命令。
- 设置部署时间,并选择目标设备。
官网:
6. Ivanti Endpoint Manager (EPM)
Ivanti Endpoint Manager 是一款功能强大的 IT 管理平台,支持软件部署、补丁管理、远程控制等功能。它能够通过多种方式在企业环境中分发软件,包括静默安装。
主要特点:
- 全面的管理功能:除了软件部署外,还支持硬件管理、补丁管理等。
- 支持多个文件格式:支持
.exe、.msi、.bat、.ps1等。 - 自动化部署和更新:可以设置任务自动运行或按需执行。
- 报告和跟踪:提供详细的部署报告和计算机健康状态监控。
使用方法:
- 配置软件分发策略,并选择需要部署的软件包。
- 配置静默安装参数和安装顺序。
- 选择目标设备进行部署。
官网:
以上工具都能够帮助在 AD 环境下实现软件的远程静默安装,并支持多种安装格式(如 .exe、.msi)。不同的工具有不同的特性,选择哪一款取决于你的需求,比如管理的规模、预算以及需要的额外功能(如补丁管理、远程支持等)。如果你只需要基本的软件推送,PDQ Deploy 和 NinjaRMM 是比较轻量且易用的选择;如果你需要更强大的功能集成,可以考虑 ManageEngine Desktop Central 或 Ivanti Endpoint Manager 等。
7. Zookeeper
Zookeeper 是一个较轻量级的 IT 管理平台,专门设计用于中小型企业环境。它提供了一些实用的功能,如远程软件部署、自动化任务和实时监控。它支持在 Windows 环境中进行静默安装,并能够跨多个机器进行批量操作。
主要特点:
- 批量部署:支持将软件推送到多个目标计算机上,并进行静默安装。
- 易于使用:操作界面简洁,适合非专业人士使用。
- 支持脚本:可以通过
.bat或.ps1脚本来定制安装过程,适用于一些特殊需求。 - 自动化任务:能够设置定时任务,定期推送和更新软件。
使用方法:
- 创建部署任务,选择目标计算机。
- 配置静默安装命令行(如果需要自定义参数)。
- 设置任务的执行频率或手动触发执行。
官网:
8. Calyptix AccessEnforcer
Calyptix AccessEnforcer 主要专注于提供网络安全和远程管理解决方案,它包括了软件部署的功能。通过集成 Active Directory,用户可以轻松地管理远程计算机并推送软件。
主要特点:
- 基于 AD 集成:与 Active Directory 深度集成,易于管理计算机和用户。
- 远程软件部署:支持多种软件安装格式,并允许管理员通过控制台进行部署。
- 高安全性:提供企业级的安全功能,确保推送过程的安全性。
- 跨平台支持:除了 Windows,还支持一些常见的操作系统,如 macOS 和 Linux。
使用方法:
- 配置与 Active Directory 的集成,识别网络中的计算机。
- 创建软件部署任务,选择安装包并配置静默安装参数。
- 选择目标设备,并开始部署。
官网:
9. BatchPatch
BatchPatch 是一个功能强大的 Windows 批量软件部署工具,允许管理员通过远程操作推送和管理软件。它专为 Windows 环境设计,能够高效地进行静默安装,并支持多个安装包格式。
主要特点:
- 批量操作:支持批量部署和管理多个 Windows 主机。
- 远程控制:允许管理员通过远程桌面会话对计算机进行控制和修复。
- 支持自动化:能够自动化部署和更新过程。
- 定制化安装:可以自定义静默安装命令行参数,支持多种安装格式(.exe、.msi)。
使用方法:
- 创建批量部署任务,并选择安装包和静默参数。
- 选择目标主机或计算机组,设置部署时间。
- 监控安装过程并生成部署报告。
官网:
10. Radmin Deployment Tool
Radmin 是一个远程管理工具,它的部署工具可以帮助管理员批量推送和安装软件。与其他工具相比,Radmin 更专注于远程控制和支持静默安装,因此它更适合需要同时执行软件部署和远程维护的环境。
主要特点:
- 远程控制:除了软件推送外,Radmin 还允许管理员远程控制计算机,进行修复和故障排除。
- 静默安装支持:可以设置静默安装命令,使得软件在用户不知情的情况下自动安装。
- 批量部署:支持批量推送软件,节省时间和资源。
- 低延迟:Radmin 的远程连接非常快速,适合大规模的操作环境。
使用方法:
- 配置目标计算机并上传安装包。
- 配置静默安装命令行(如
/quiet、/silent)。 - 开始部署任务,并监控安装过程。
官网:
11. Group Policy (GPO) 配合脚本
如果你希望通过 Microsoft 原生工具来实现软件推送和静默安装,可以结合 Group Policy (GPO) 和 脚本 来进行操作。这种方法适用于已经在 Active Directory 中管理的环境。
主要特点:
- 集成于 AD 环境:通过 GPO,软件可以在域控环境中自动推送到目标计算机。
- 无需额外软件:利用现有的 Windows 功能,避免使用额外的第三方软件。
- 支持 MSI 安装:可以直接通过 GPO 配置 MSI 包进行静默安装。
- 可与脚本结合:如果需要部署的不是 MSI 文件,可以通过 PowerShell 脚本或批处理脚本实现静默安装。
使用方法:
- 将安装文件(.msi 或 .exe)上传到共享文件夹。
- 在 GPO 中创建新的软件安装策略。
- 配置静默安装参数,并选择部署的计算机范围。
- 在目标计算机登录后自动执行安装。
官方文档:
Group Policy Software Installation
12. System Center Configuration Manager (SCCM)
Microsoft 的 System Center Configuration Manager (SCCM) 是一款企业级 IT 管理解决方案,广泛应用于大型企业环境中。它能够进行软件部署、操作系统管理、补丁管理等多种任务。SCCM 支持 Windows 系统上的软件静默安装,并且能够在大量计算机上执行批量任务。
主要特点:
- 企业级管理:适用于大规模企业环境,能够集中管理数千台设备。
- 自动化和定制化:支持自动化软件部署和更新,能够根据不同需求定制部署策略。
- 集成 AD 和其他 Microsoft 服务:与 Active Directory 和其他 Microsoft 服务无缝集成。
- 详细报告:提供详细的部署进度和安装状态报告。
使用方法:
- 使用 SCCM 控制台创建软件部署任务。
- 上传软件安装包并配置静默安装命令。
- 选择目标计算机并启动部署。
官网:
System Center Configuration Manager
在 AD 环境中推送和静默安装软件,除了 Microsoft 自带的 GPO 和 SCCM 外,还有许多功能强大、易于使用的第三方工具可以选择。每种工具都有其特点,适合不同规模的企业以及不同的 IT 管理需求。以下是一些选择指南:
- 轻量级企业/小型公司:PDQ Deploy、NinjaRMM 和 Zookeeper 提供了简单易用的界面,适合快速部署和维护。
- 大规模部署/企业级:System Center Configuration Manager (SCCM)、ManageEngine Desktop Central 和 Ivanti Endpoint Manager 适用于大规模企业,有更强的自定义和自动化功能。
- 跨平台支持:如果你的环境中有 Windows 以外的操作系统,Calyptix AccessEnforcer 和 SolarWinds Patch Manager 提供了跨平台支持。
- 远程管理与修复:Radmin 和 BatchPatch 提供了强大的远程控制功能,适合需要频繁进行故障排除的环境。
这些工具可以帮助你在 AD 环境中高效地进行软件部署、更新和管理,减少人工操作,提高 IT 管理效率。
13. Kaseya VSA
Kaseya VSA 是一款强大的 IT 自动化和远程管理工具,广泛应用于中大型企业以及 MSP(托管服务提供商)环境。它不仅可以进行远程监控和管理,还支持跨平台的应用程序部署,包括 Windows、macOS 以及 Linux 系统。Kaseya VSA 提供了丰富的功能和灵活的配置选项,可以帮助管理员以高度自动化的方式推送软件并进行静默安装。
主要特点:
- 自动化工作流:支持通过自动化工作流来批量部署和更新软件,减少人工干预。
- 远程桌面支持:提供远程桌面功能,帮助管理员在远程计算机上执行修复任务。
- 跨平台支持:支持 Windows、macOS、Linux 操作系统的管理。
- 强大的报告和监控功能:可以生成详细的部署报告和监控系统状态,帮助管理员跟踪部署进度。
使用方法:
- 配置 Kaseya VSA 控制台并连接到目标计算机。
- 上传软件安装包,并根据需要设置静默安装参数。
- 使用自动化工作流部署软件,并根据需要生成报告。
官网:
14. Atera
Atera 是一款基于云的 IT 管理平台,专为 MSP 和 IT 管理员设计,提供自动化管理、远程控制、软件部署等功能。它结合了监控、修复和软件推送功能,适合需要集中管理和监控的环境。
主要特点:
- 基于云管理:作为一个 SaaS 平台,Atera 可以随时随地进行管理,不需要本地服务器。
- 自动化和批量部署:支持自动化软件部署,管理员可以设置推送策略,一键完成批量安装。
- 强大的远程控制功能:提供远程控制、远程桌面功能,帮助管理员进行远程故障排除。
- 实时监控:具备实时系统监控功能,帮助管理员及时发现和修复问题。
使用方法:
- 通过 Atera 控制台连接到目标计算机。
- 创建软件部署任务,上传安装包并设置静默安装参数。
- 配置自动化策略或手动推送软件,监控安装进度。
官网:
15. PDQ Inventory
PDQ Inventory 是一款强大的 Windows 系统管理工具,专注于硬件和软件清单管理。它与 PDQ Deploy 配合使用,能够有效地进行软件部署和静默安装。PDQ Inventory 不仅能够收集目标计算机的硬件和软件信息,还可以通过 PDQ Deploy 将软件推送到计算机中。
主要特点:
- 软件清单管理:能够快速扫描并生成目标计算机的软件清单,帮助管理员了解哪些计算机需要安装哪些软件。
- 与 PDQ Deploy 集成:可以与 PDQ Deploy 完美集成,提供完整的部署、更新和报告功能。
- 灵活的静默安装:支持静默安装,并能够为不同的软件设置不同的安装选项。
- 自定义报告:支持自定义报告,帮助管理员分析和跟踪软件部署状态。
使用方法:
- 使用 PDQ Inventory 扫描目标计算机并生成软件清单。
- 在 PDQ Deploy 中配置静默安装任务,并将其部署到目标计算机。
- 通过 PDQ Inventory 生成报告,检查软件部署情况。
官网:
16. Absolute Manage
Absolute Manage 是一款面向中大型企业的 IT 管理平台,提供设备管理、软件部署、资产跟踪和安全管理等功能。它与 Active Directory 集成,可以帮助管理员在 Windows 和 macOS 环境中进行软件部署和静默安装。
主要特点:
- 跨平台管理:支持 Windows、macOS 等多平台设备管理。
- 集中化管理:所有设备和软件部署任务都可以通过一个集中管理平台进行控制。
- 静默安装:支持静默安装,并可以远程部署应用程序。
- 资产和安全管理:除了软件部署,Absolute Manage 还提供硬件资产跟踪和安全管理功能,帮助管理员保护设备免受安全威胁。
使用方法:
- 配置 Absolute Manage 平台并连接到目标设备。
- 上传软件安装包,配置静默安装命令。
- 使用自动化部署功能批量推送软件并监控部署状态。
官网:
17. LANDesk (Ivanti)
Ivanti(前身为 LANDesk)是一款提供 IT 资产管理、软件部署、远程支持、补丁管理等功能的企业级解决方案。它支持 Windows 和其他平台的设备,能够通过集中管理界面进行软件的静默部署。
主要特点:
- 集成化管理:Ivanti 提供全面的 IT 管理解决方案,集成软件部署、补丁管理、远程支持等功能。
- 跨平台支持:支持 Windows、macOS 和 Linux 等操作系统。
- 自动化部署:提供自动化的静默安装和软件部署功能。
- 全面的资产管理:可以全面管理 IT 资产,并提供详细的报告和监控功能。
使用方法:
- 配置 Ivanti 控制台并连接到目标设备。
- 创建软件部署任务,上传安装包并设置静默安装参数。
- 执行部署任务,并监控安装进度。
官网:
18. GFI LanGuard
GFI LanGuard 是一款全面的 IT 管理和补丁管理工具,它集成了软件部署功能,可以在多台 Windows 计算机上批量进行静默安装。GFI LanGuard 主要用于系统的安全漏洞扫描和修复,但也可以用来进行软件部署。
主要特点:
- 补丁管理:提供强大的补丁管理功能,自动检测并修复操作系统和应用程序的安全漏洞。
- 软件部署:支持远程软件部署,能够将应用程序批量推送到多个目标计算机。
- 详细报告和监控:提供详细的部署报告,帮助管理员跟踪软件安装进度和状态。
- 跨平台支持:除了 Windows,还支持 macOS 和 Linux 系统的管理。
使用方法:
- 使用 GFI LanGuard 配置目标计算机并上传软件安装包。
- 设置静默安装命令,并选择部署的目标计算机。
- 启动部署任务并监控安装进度。
官网:
不同的企业和 IT 管理环境适合不同的软件推送和静默安装工具。以下是一些选择建议:
- 中小型企业:可以考虑使用 PDQ Deploy、NinjaRMM 或 Zookeeper 这样的工具,它们简单易用,价格相对亲民,适合快速部署和自动化任务。
- 大型企业或 MSP:如果你的环境比较复杂,拥有大量计算机,建议选择像 SCCM、Ivanti 或 Kaseya VSA 这样的企业级解决方案,它们提供强大的管理和自动化功能,能够处理大规模部署。
- 跨平台环境:对于需要管理 Windows、macOS 和 Linux 设备的环境,Calyptix AccessEnforcer 和 Absolute Manage 提供了多平台支持,适合需要跨系统部署的软件。
- IT 资产管理和安全:如果你还需要集成 IT 资产管理和安全补丁管理功能,GFI LanGuard、Ivanti 和 Kaseya VSA 是不错的选择,它们可以帮助你同时管理软件部署和系统安全。
选择合适的工具,结合自动化部署,可以大幅提高软件管理的效率,减少 IT 管理员的工作负担,提高系统的稳定性和安全性。

浙公网安备 33010602011771号