ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

GOAD 靶场 VMware 部署指南:依赖检查、交互式与命令行安装全流程

GOAD 靶场 VMware 部署指南:依赖检查、交互式与命令行安装全流程 网络安全渗透测试【免费下载链接】GOADgame of active directory项目地址https://gitcode.com/gh_mirrors/go/GOAD点击查看免费下载GOADGame of Active Directory是一套用于练习 Active Directory 攻击与防御技术的开源靶场环境。本文聚焦VMware 平台下的 GOAD 部署从前置依赖清单、check依赖体检到交互式控制台与纯命令行两种安装方式并深入 Vagrantfile 模板与 Python 源码说明 VMware 模式下虚拟机如何被定义、创建与配置。读完本文你将能独立在一台装有 VMware Workstation 的主机上完整部署 GOAD / GOAD-Light 靶场并掌握故障排查时依赖自查与实例管理的全套方法。前置条件Providing 与 Provisioning 两阶段依赖GOAD 的安装分三个阶段Templating生成模板、Providing创建虚拟机与 Provisioning用 Ansible 配置靶场内容。VMware 模式下Providing 依赖 Vagrant 驱动 VMwareProvisioning 依赖 Python 与 Ansible。官方要求如下Providing 依赖VMware Workstation Pro虚拟机运行平台需通过 Broadcom 官方渠道获取下载。Vagrant虚拟机生命周期管理工具负责根据 Vagrantfile 创建、启动、停止虚拟机。VMware Utility Drivervagrant-vmware-utilityVagrant 与 VMware 之间的桥梁服务为vmware_desktopprovider 提供底层支持。Vagrant 插件vagrant-reload在虚拟机创建过程中触发重启Windows 模板首次引导后常需重启继续配置vagrant-vmware-desktopVagrant 官方 VMware provider 插件winrm、winrm-fs、winrm-elevatedGOAD 的所有 Windows 虚拟机都通过 WinRM 通道被 Vagrant/Ansible 管理这三个插件负责连接、文件传输与提权执行。从源码看VmwareProvider.check() 会在基类 VagrantProvider.check()检查 Vagrant、磁盘、内存、Ansible 与vagrant-reload插件之上追加三项 VMware 专属检查check_vmware()、check_vmware_utility()与check_vagrant_plugin(vagrant-vmware-desktop, True)——这也是下文check命令输出中红色/黄色依赖项的直接来源。Provisioning 依赖Python3 3.8GOAD 的管理脚本goad.py是 Python 程序。启动脚本 goad.sh 会先校验 Python 版本低于 3.11 使用requirements.yml3.11 及以上使用requirements_311.yml对应不同版本的 ansible-core 与 setuptools 组合。goad requirementsgoad.sh首次运行会自动创建~/.goad/.venv虚拟环境并执行pip install -r requirements.yml主要包含 rich、psutil、Jinja2、pyyaml、ansible_runner、pywinrm 等详见 安装文档。ansible-galaxy goad requirementsgoad.sh会在ansible/目录下执行ansible-galaxy install -r requirements.yml拉取各 lab 编排所需的 Ansible collection 与角色。依赖检查check命令配置好依赖后先运行检查确认环境完备./goad.sh -p vmware GOAD/vmware/local/192.168.56.X check这里-p vmware指定 provider进入交互控制台后输入check触发体检。GOAD/vmware/local/192.168.56.X是当前上下文标识GOAD为 lab 名、vmware为 provider、local为 provisioning 方法、192.168.56.X为 IP 段。检查结果中红色项为必需依赖黄色项为非必需但强烈建议补齐。以仓库中实际检查截图为证常见黄色项包括磁盘空间不足GOAD 全量 lab 需要较大磁盘余量缺失winrm、winrm-fs、winrm-elevated插件缺失会导致 Windows 虚拟机无法被自动配置。绿色[]项代表通过如vagrant、Ansible、vmrun、vagrant-vmware-desktop插件等。检查逻辑的源码依据Linux 下 LinuxCommand.check_vmware() 检查vmrun是否在 PATHLinuxCommand.check_vmware_utility() 通过systemctl is-active vagrant-vmware-utility确认 VMware Utility 服务处于运行状态Windows 下 WindowsCommand.check_vmware() 检查c:\Program Files (x86)\VMware\VMware Workstation\vmrun.exeWindowsCommand.check_vmware_utility() 检查c:\Program Files\VagrantVMwareUtility\vagrant-vmware-utility.exe。若存在缺失依赖请回到 安装文档 按你的操作系统对应章节补齐Linux 或 Windows 均提供逐步指南。注意非必需依赖的黄色项也应尽量满足因为其缺失与否取决于具体操作系统与 lab 需求。安装交互式控制台依赖检查通过后即可安装。进入交互模式./goad.sh -p vmware GOAD/vmware/local/192.168.56.X set_lab lab # 选择要部署的 labGOAD / GOAD-Light / NHA / SCCM GOAD/vmware/local/192.168.56.X set_ip_range ip_range # 设置 IP 段只填前三段例如 192.168.56 GOAD/vmware/local/192.168.56.X install # 执行安装install会依次执行在workspaces/下创建 lab 实例目录 → 用 Vagrant 创建虚拟机Providing→ 运行当前 lab 的全部 Ansible playbookProvisioning。执行前会显示当前配置lab / provider / provisioning 方法 / IP 段并要求确认Create lab with theses settings ? (y/N)。交互控制台还提供完整的实例生命周期管理命令详见 交互模式文档实例级status查看状态、start/stop启停整个 lab、destroy销毁虚拟机危险操作、provision_lab重跑全部 playbook、provision_lab_from playbook.yml从指定 playbook 续跑安装中断续跑很有用单机级start_vm vm_name、stop_vm vm_name、restart_vm vm_name、destroy_vm vm_name扩展list_extensions、install_extension extension如 elk、wazuh、exchange 等见 extensions 目录、provision_extension extension配置set_provider、set_provisioning_methodlocal/runner/docker/remoteVMware 默认 local、config查看当前配置、labs查看可用 lab 与 provider。安装纯命令行参数模式不进入交互界面直接一条命令完成安装./goad.sh -t install -p vmware -l lab -ip ip_range_to_use各参数含义同 安装文档-t任务类型install为安装也可用check做依赖检查-pprovider此处固定vmware-llab 名称GOAD / GOAD-Light / NHA / SCCM / MINILAB-ipIP 段前三段如192.168.56-m可选provisioning 方法local/runner/docker/remote绝大多数场景保持默认的 local 即可。底层原理Vagrantfile 如何定义 VMware 虚拟机VMware 模式下Vagrant 使用vmware_desktopprovider。GOAD 的每个 lab 都自带一份虚拟机清单定义例如GOAD 的 Vagrantfile定义 5 台 Windows 虚拟机DC01、DC02、DC03、SRV02、SRV03均使用StefanScherer/windows_2019或StefanScherer/windows_2016官方 box内存 3GB6GBGOAD-Light 的 Vagrantfile精简为 3 台DC01、DC02、SRV02。这些清单最终渲染进统一的 Vagrantfile 模板模板中几个与 VMware 强相关的关键点ENV[VAGRANT_DEFAULT_PROVIDER] vmware_desktop强制使用 VMware providerv.force_vmware_license workstation规避部分 vagrant 插件在 Workstation 授权上的兼容问题每台机器通过v.vmx[memsize]/v.vmx[numvcpus]写入 VMX 配置精确分配内存与 CPU禁用StefanSchererbox 继承的 3389 端口转发避免冲突config.vm.boot_timeout 600、config.winrm.retry_limit 30、config.winrm.retry_delay 10Windows 引导与 WinRM 连接的高容错参数应对冷启动慢的问题Windows 机器会按顺序执行 Install-WMF3Hotfix.ps1、ConfigureRemotingForAnsible.ps1并在 VMware 环境下追加执行 fix_ip.ps1 修正静态 IPVMware 私有网络下网卡配置与 VirtualBox 不同必须单独修复。创建完成后Provisioning 由 VagrantProvider 层统一调度安装即vagrant up之后stop/start/destroy/snapshot分别映射到vagrant halt/up/destroy/snapshot push整个 lab 可用命令行或交互控制台随时启停与快照回滚。部署后的日常运维再次进入交互控制台直接./goad.sh启动控制台会用?输出帮助load instance可加载已有实例默认全局配置保存在$HOME/.goad/goad.ini首次启动自动生成可在其中修改默认 lab、provider、provisioner 与ip_range默认192.168.56详见 安装文档的配置说明全局 Ansible 覆盖参数位于仓库根目录的 globalsettings.ini可调整键盘布局、代理、路由、DNS forwarder 等它总是被追加到 inventory 末尾以覆盖默认值安装过程中若某个 playbook 失败不必全部重来用provision_lab_from playbook.yml从失败处续跑即可。常见问题提示vagrant-vmware-utility未运行Linux 下需确保该 systemd 服务处于 active 状态Windows 下确认VagrantVMwareUtility程序路径存在再重新执行checkwinrm系列插件缺失执行vagrant plugin install winrm winrm-fs winrm-elevated后重跑check磁盘空间黄色告警GOAD 全量 lab 虚拟机磁盘占用较高建议预留充足空间如截图所示 69GB 可用空间仍被判定不足时应扩容或换用 GOAD-LightIP 冲突set_ip_range只接受前三段数字如192.168.10请避免与现有网络重叠否则 Windows 的fix_ip.ps1静态 IP 配置会失败。提示若不想在本地安装 Python 依赖可使用 goad_docker.sh 走 Docker 方式执行 Ansible provisioning需先sudo docker build -t goadansible .构建镜像详见 安装文档。赞分享网络安全渗透测试【免费下载链接】GOADgame of active directory项目地址https://gitcode.com/gh_mirrors/go/GOAD点击查看免费下载相关推荐Voicecord 开源项目教程Voicecord 开源项目教程 项目介绍 Voicecord 是一个旨在使Discord账号能够24/7保持在线并连接于语音频道的工具。该仓库由SealedS网络安全渗透测试在 Ludus 上部署 GOAD基于 Ludus Provider 的 Active Directory 靶场安装与配置实战在 Ludus 上部署 GOAD基于 Ludus Provider 的 Active Directory 靶场安装与配置实战 本文以 GOADGame of网络安全渗透测试Crawl4AI 安装指南Python 包、可选依赖、Docker 部署与安装验证全流程Crawl4AI 安装指南Python 包、可选依赖、Docker 部署与安装验证全流程 本篇指南覆盖 Crawl4AI当前仓库版本 v0.9.0见 cr网页爬虫RAG人工智能AI 应用上一篇如何在Vue项目中高效集成Fuse.js实现轻量级模糊搜索的完整指南下一篇Xiaomusic深度解析打造智能音箱音乐播放系统的专业指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表