Active Directory 工具学习笔记(10.9):AdInsight——命令行选项与自动化采集模板

Active Directory 工具学习笔记(10.9):AdInsight------命令行选项与自动化采集模板

Active Directory 工具学习笔记(10.9):AdInsight------命令行选项与自动化采集模板

目标:把 GUI 点点点变成一键批量可复现剧本 。本文汇总 AdInsight 的常见命令行开关(以工具 /? 为准),并给出开箱即用的自动化模板。


适用场景

  • 变更窗口里,预先开抓、到点自动收官并落盘。
  • 大规模联调时,用统一过滤器与字段集输出可计算数据。
  • 突发事件时,脚本一跑,采集→保存→打包→校验→上送全流程闭环。

常见启动参数速览(以你环境中 AdInsight.exe /? 为准)

不同版本参数名可能略有差异,下列为高频能力模型 (对应功能与常见命名)。若你想精准对照,请以你手头版本的 /? 帮助为准对映。

能力 典型开关(示例命名) 作用与要点
接受协议 -accepteula 首次静默接受 EULA,便于无人值守。
立即开始/停止 /start/stop 启动后立刻捕获;脚本尾部调用 /stop 收官。
设定时长 /duration:<mm:ss>/runfor:<seconds> 指定持续时间,到时自动停止并保存。
过滤器 /loadfilter:<path>/savefilter:<path> 复用 GUI 里保存的过滤规则;统一团队视图。
输出格式 `/save:<.session .csv
列集/视图 /view:<path> 载入列顺序、强调色、分组等视图模板。
时间设置 /utc/localtime 统一导出 UTC;口头沟通再换本地时区。
文件切片 /maxsize:<MB>/autosplit 控制大文件体积,滚动切片保存。
采样/性能 `/profiling:<on off>/buffers:`
提示静默 /quiet 无窗口/静默运行(配合计划任务)。

心法:少即是多。预设过滤 + 固定列集 + UTC 时间 + 切片策略,能让协作和复盘成本陡降。


模板一:30 分钟抓取 + 双轨落盘(会话 + TSV)

PowerShell:

powershell 复制代码
$tool   = "C:\Tools\AdInsight\AdInsight.exe"
$outDir = "D:\AdInsight\captures\$(Get-Date -Format yyyyMMdd_HHmmss)"
New-Item $outDir -ItemType Directory -Force | Out-Null

$session = Join-Path $outDir "adinsight.session"
$data    = Join-Path $outDir "adinsight.tsv"
$filter  = "C:\Tools\AdInsight\filters\LoginSlow.json"
$view    = "C:\Tools\AdInsight\views\OpsView.json"

Start-Process -FilePath $tool -ArgumentList @(
  "-accepteula",
  "/start",
  "/duration:00:30:00",
  "/loadfilter:`"$filter`"",
  "/view:`"$view`"",
  "/utc",
  "/maxsize:256",
  "/autosplit",
  "/save:`"$session`"",
  "/save:`"$data`""
) -Wait

# 可选:计算校验和,便于取证留痕
Get-ChildItem $outDir | Get-FileHash -Algorithm SHA256 | `
  Format-Table Path, Hash | Out-String | Set-Content (Join-Path $outDir "sha256sum.txt")

模板二:登录波峰"时间窗"抓包(计划任务)

触发器 :工作日 08:55 启动,抓 20 分钟。
操作 :Program 指向 AdInsight.exe,参数:

复制代码
-accepteula /start /duration:00:20:00 /utc /loadfilter:"C:\Filters\BindAndSearch.json" /save:"D:\AD\Morning.session" /save:"D:\AD\Morning.tsv"

结合"任务计划程序"的按需运行,就能把高峰抓取做成常规体检。


模板三:长时间运行 + 自动切片(滚动留痕)

CMD:

cmd 复制代码
set TOOL=C:\Tools\AdInsight\AdInsight.exe
set OUT=D:\AdInsight\rolling
if not exist "%OUT%" mkdir "%OUT%"

"%TOOL%" -accepteula /start /utc /loadfilter:"C:\Filters\ErrorsOnly.json" ^
  /maxsize:128 /autosplit /save:"%OUT%\rolling.session" /save:"%OUT%\rolling.tsv"

maxsize + autosplit 避免单文件爆炸;配合计划任务定时清理 7 天前切片


模板四:批量采集(多服务器统一收集)

一台"跳板机"远程触发各成员服务器的 AdInsight(建议以域控播放脚本,权限合规且留痕完备)。

powershell 复制代码
$servers = Get-Content .\gc_list.txt   # 每行一个 GC/DC 名称
$tool    = "C:\Tools\AdInsight\AdInsight.exe"
$filter  = "\\share\filters\OpsBaseline.json"
$view    = "\\share\views\TeamView.json"
$baseOut = "\\share\captures\$(Get-Date -Format yyyyMMdd_HHmmss)"

foreach ($s in $servers) {
  Invoke-Command -ComputerName $s -ScriptBlock {
    param($tool,$filter,$view,$baseOut,$server)
    $dir = Join-Path $baseOut $server
    New-Item $dir -ItemType Directory -Force | Out-Null
    Start-Process -FilePath $tool -ArgumentList @(
      "-accepteula","/start","/duration:00:10:00","/utc",
      "/loadfilter:`"$filter`"","/view:`"$view`"",
      "/save:`"$dir\capture.session`"","/save:`"$dir\capture.tsv`""
    ) -Wait
  } -ArgumentList $tool,$filter,$view,$baseOut,$s
}

模板五:事件现场"一条龙"打包上送

PowerShell:

powershell 复制代码
$out = "D:\AdInsight\incident\$(Get-Date -Format yyyyMMdd_HHmmss)"
New-Item $out -ItemType Directory -Force | Out-Null

# 1) 采集
& "C:\Tools\AdInsight\AdInsight.exe" -accepteula /start /duration:00:15:00 /utc `
  /loadfilter:"C:\Filters\Incident.json" `
  /save:"$out\incident.session" /save:"$out\incident.tsv"

# 2) 校验
Get-ChildItem $out | Get-FileHash -Algorithm SHA256 |
  Export-Csv "$out\sha256.csv" -NoTypeInformation -Encoding UTF8

# 3) 打包
Compress-Archive -Path "$out\*" -DestinationPath "$out.zip" -Force

过滤器与视图的团队协作

  • 过滤器(Filter) :把"我们关心什么"固化成文件并版本化(如 Bind/Modify/Search、错误码白名单等)。
  • 视图(View):把"我们怎么看"固化(列顺序、强调色、分组、时间精度)。
  • 共享规则filters/views/ 放统一共享盘,配合 Git 做审计与回滚。

输出与命名规范(可直接抄)

复制代码
AdInsight_[CASE-YYYYMMDD]_Site-[EastGC]_Win-[2019]_UTC-[0900-0930]_[Filtered-Bind].tsv
AdInsight_[CASE-YYYYMMDD]_Full.session
Filters_[LoginSlow]_v3.json
View_[OpsBaseline]_v2.json
  • UTC 时间窗站点/角色是否过滤版本号 让文件一眼可懂。

与计划任务/EDR 的配合

  • 计划任务:触发器 = 时间/登录/开机;操作 = 传参启动;条件 = 市电/网络可用。
  • EDR/AV 白名单:允许 AdInsight 可执行文件与输出目录;避免运行期被阻断。
  • 最小权限:仅在必要服务器上以批准账户运行,日志留痕。

常见坑与规避

  • 忘加 -accepteula → 无人值守下卡在 EULA 弹窗。
  • 抓太久无切片 → 单文件巨无霸,Excel/脚本都吃不动;务必 maxsize + autosplit
  • 时区混乱 → 统一 /utc 导出;共享时再转换本地时间。
  • 只导出过滤后数据 → 证据链不完整;请同时 保留 .session 全量会话。

结语

命令行把 AdInsight 从"手艺活"升级为"流水线"。上面 5 套模板覆盖了日常长跑、时间窗、批量、事故一条龙等主战场。下一篇我们收尾 AdRestore ,讲清意外删除对象的恢复快照对比,把 AD 救援链条补齐。

相关推荐
wdfk_prog1 分钟前
[Linux]学习笔记系列 -- [fs]pipe
linux·笔记·学习
d111111111d10 分钟前
STM32 DMA传输配置详解:数据宽度与传输方向设置指南
笔记·stm32·单片机·嵌入式硬件·学习
0思必得019 分钟前
[Web自动化] Requests模块请求参数
运维·前端·python·自动化·html
じ☆冷颜〃27 分钟前
二分查找的推广及其在排序与链表结构中的关联
网络·windows·经验分享·笔记·算法·链表
幽络源小助理30 分钟前
SpringBoot+Vue智能学习平台系统源码 | 教育类JavaWeb项目免费下载 – 幽络源
vue.js·spring boot·学习
爱吃生蚝的于勒1 小时前
【Linux】零基础深入学习动静态库+深入学习地址
linux·运维·服务器·c语言·数据结构·c++·学习
崎岖Qiu1 小时前
【设计模式笔记26】:深入浅出「观察者模式」
java·笔记·观察者模式·设计模式
Noushiki1 小时前
RabbitMQ 基础 学习笔记1
笔记·学习·rabbitmq
知识分享小能手1 小时前
Ubuntu入门学习教程,从入门到精通, Ubuntu 22.04中的任务计划详解(16)
linux·学习·ubuntu
小笔学长1 小时前
持续集成与持续部署(CI/CD):自动化流程
自动化·项目实战·后端开发·ci/cd自动化·jenkins工具