{
  "projects/windows-admin-center-lab": {
    "title": "Windows Admin Center Lab Management",
    "description": "Centralized Windows administration backed by connectivity, authentication, and remote-management validation.",
    "body": "<div class=\"page-heading\"><p class=\"eyebrow\">Project 04 / Infrastructure</p><h1>Windows Admin Center Lab Management</h1><p class=\"lead\">Centralized Windows administration backed by connectivity, authentication, and remote-management validation.</p><div class=\"tags\"><span class=\"status\">COMPLETE</span><span class=\"tag\">Validated lab work</span></div><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/windows-admin-center-lab.html\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub documentation <span aria-hidden=\"true\">↗</span></a><a href=\"https://jeremyfontenot.online/windows-admin-center-lab.html\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original portfolio <span aria-hidden=\"true\">↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Evidence library</a></div></div><div class=\"case-layout\"><aside class=\"case-toc\"><p class=\"eyebrow\">Inside this case study</p><a href=\"#overview\" data-anchor=\"overview\">Overview</a><a href=\"#scenario\" data-anchor=\"scenario\">Operational scenario & objectives</a><a href=\"#environment\" data-anchor=\"environment\">Environment & technologies</a><a href=\"#architecture\" data-anchor=\"architecture\">Architecture</a><a href=\"#implementation\" data-anchor=\"implementation\">Implementation & administration</a><a href=\"#troubleshooting\" data-anchor=\"troubleshooting\">Troubleshooting</a><a href=\"#validation\" data-anchor=\"validation\">Validation & results</a><a href=\"#evidence\" data-anchor=\"evidence\">Evidence</a><a href=\"#skills\" data-anchor=\"skills\">Skills demonstrated</a><a href=\"#limitations\" data-anchor=\"limitations\">Limitations & claim boundaries</a><a href=\"#next\" data-anchor=\"next\">Next milestones</a></aside><article><section class=\"content-block\" id=\"overview\"><h2>Overview</h2><p>Centralized Windows administration backed by connectivity, authentication, and remote-management validation.</p><p><strong>Classification:</strong> Validated lab work.</p></section><section class=\"content-block\" id=\"scenario\"><h2>Operational scenario & objectives</h2><p>Establish centralized administration and isolate management-tool slowness from connectivity, authentication, and server-health issues.</p></section><section class=\"content-block\" id=\"environment\"><h2>Environment & technologies</h2><p>Administrative laptop running Windows Admin Center, connecting to Windows servers and endpoints through controlled management paths.</p><div class=\"tags\"><span class=\"tag\">Windows Admin Center</span><span class=\"tag\">WinRM</span><span class=\"tag\">PowerShell</span></div></section><section class=\"content-block\" id=\"architecture\"><h2>Architecture</h2><p>Administrative laptop running Windows Admin Center, connecting to Windows servers and endpoints through controlled management paths.</p><div class=\"doc-grid\"></div><a href=\"#architecture\" data-route=\"architecture\" class=\"\">Explore infrastructure architecture →</a></section><section class=\"content-block\" id=\"implementation\"><h2>Implementation & administration</h2><div class=\"imported\"><section class=\"page-hero\"><div class=\"wrap\"><p class=\"eyebrow\">Project 04 · COMPLETE</p><h2>Windows Admin Center Lab Management</h2><p class=\"lead\">Centralized Windows administration with connectivity testing, PowerShell remoting, and evidence-based troubleshooting.</p><div class=\"actions\"><a class=\"button primary\" data-route=\"projects\" href=\"#projects\">Back to projects</a><a class=\"button\" data-route=\"evidence\" href=\"#evidence\">Review proof index</a></div></div></section><section class=\"section\"><div class=\"wrap\"><div class=\"metric-strip\"><div class=\"metric\"><strong>WAC</strong><span>Management</span></div><div class=\"metric\"><strong>WinRM</strong><span>Remote path</span></div><div class=\"metric\"><strong>PowerShell</strong><span>Validation</span></div><div class=\"metric\"><strong>Scoped</strong><span>Firewall rules</span></div></div></div></section><section class=\"section\"><div class=\"wrap case-layout\"><article><section class=\"content-block\" id=\"source-b26697ea-scope\"><p class=\"eyebrow\">Scope</p><h2>Centralized Windows management</h2><p>Windows Admin Center is used from the administrative laptop to manage Windows Server and endpoint systems in the lab over controlled remote-management paths.</p></section><section class=\"content-block\" id=\"source-b26697ea-validation\"><p class=\"eyebrow\">Validation</p><h2>Connectivity before configuration</h2><p>WinRM reachability, PowerShell remoting, host resource state, and management-path behavior were validated before changing server configuration.</p></section><section class=\"content-block\" id=\"source-b26697ea-troubleshooting\"><p class=\"eyebrow\">Troubleshooting</p><h2>Slow management isolated from server health</h2><p>When WAC felt slow, direct tests separated network reachability, authentication overhead, and actual server resource state instead of assuming a server-performance problem.</p></section><section class=\"content-block\" id=\"source-b26697ea-evidence\"><p class=\"eyebrow\">Evidence</p><h2>Sanitized validation</h2><ul class=\"evidence-list\"><li><a data-route=\"evidence\" href=\"#evidence\">Home Lab proof summary<span>Supporting infrastructure claim summary</span></a></li><li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/README.html\" rel=\"noopener noreferrer\" target=\"_blank\">Home Lab evidence<span>Current validated infrastructure state</span></a></li></ul></section></article><aside class=\"case-nav panel\"><p class=\"eyebrow\">Case study</p><a data-route=\"projects/windows-admin-center-lab\" href=\"#projects/windows-admin-center-lab\">Centralized Windows management</a><a data-route=\"projects/windows-admin-center-lab\" href=\"#projects/windows-admin-center-lab\">Connectivity before configuration</a><a data-route=\"projects/windows-admin-center-lab\" href=\"#projects/windows-admin-center-lab\">Slow management isolated from server health</a><a data-route=\"projects/windows-admin-center-lab\" href=\"#projects/windows-admin-center-lab\">Validation links</a></aside></div></section></div><details><summary>Current Validated State <small> / README.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/README.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/85e602a93ca1\" data-route=\"documentation/85e602a93ca1\" class=\"\">Open document page</a></div><h2>Current Validated State</h2>\n<p>This public evidence folder summarizes reviewer-safe records from the private home-lab operations repository without exposing private repository links. Public claims use stable classifications instead of date-based proof labels. The <code>direct-evidence/</code> folder contains sanitized direct artifacts for the current infrastructure claims.</p>\n<h2>Document</h2>\n<ul>\n<li>Title: Jeremy Fontenot’s On-Premises Home Lab Documentation</li>\n<li>Filename: <code>Jeremy-Fontenot-On-Premises-Home-Lab-Documentation.docx</code></li>\n<li>Download description: Download the Professional Home Lab Documentation (.docx)</li>\n<li>SHA-256: <code>D7E81A06DCFBD2E91EB8F52A02BDC795AC5B7084A70F343233F1104CCD297BDB</code></li>\n</ul>\n<h2>Source Commits</h2>\n<ul>\n<li>Website source commit at generation: <code>effdbeb0ed8d632a0b0c93328cd593cf85c3eb46</code></li>\n<li>Home-lab source commit for direct evidence: <code>fb6c286873285778d88d6d5cfde0b9bd00b96f36</code></li>\n</ul>\n<h2>Supported Public Claims</h2>\n<ul>\n<li>Personal nonproduction lab hosted on Dell PowerEdge R710 with Proxmox VE 9.2.3.</li>\n<li>pfSense, DC01, WS01, and Linux01 are the primary lab VMs described by current records.</li>\n<li>Linux01 current supported placement is VLAN 30 at <code>10.10.30.20/24</code>; older <code>10.10.20.x</code> Linux01 evidence is historical.</li>\n<li>DC01 direct evidence supports Windows Server 2022, AD DS, DNS, DHCP, Group Policy Management, Global Catalog status, FSMO ownership, and DC01 IP.</li>\n<li>WS01 direct evidence supports Windows 10 Pro, domain membership, secure channel, and current network state.</li>\n<li>Linux01 direct evidence supports Ubuntu 26.04 LTS, kernel, VLAN 30, current IP/gateway/DNS, current-versus-historical address boundary, and directly proven domain integration indicators.</li>\n<li>Linux01 SSSD remediation is documented as remediated and validated for Linux01 only.</li>\n<li>Backup job configuration and retained backup counts are supported; all-recent-backups-succeeded, recurring disaster-recovery assurance, RTO, and RPO are not claimed.</li>\n<li>One isolated Linux01 restore drill is supported; it does not prove recurring restore assurance.</li>\n</ul>\n<h2>Direct Evidence Links</h2>\n<ul>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-platform-inventory.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct Proxmox inventory</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-backup-configuration.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct backup configuration</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-backup-inventory.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct backup inventory</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-restore-validation.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct restore validation</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/dc01-system-and-role-validation.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct DC01 validation</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/ws01-system-and-domain-validation.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct WS01 validation</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-system-network-domain-validation.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct Linux01 validation</a></li>\n<li><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-sssd-remediation-validation.md\" rel=\"noopener noreferrer\" target=\"_blank\">Open direct SSSD remediation validation</a></li>\n</ul>\n<h2>Limitations</h2>\n<p>Personal lab evidence does not represent employer production administration, client infrastructure ownership, enterprise scale, guaranteed uptime, full firewall assurance, or full security assurance. Timeout observations remain timeout observations. The restore evidence is one isolated Linux01 restore drill only and does not establish recurring restore assurance, RTO, RPO, SLA, or disaster-recovery readiness.</p></div></details><details><summary>DC01 System and Role Validation <small> / dc01-system-and-role-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/dc01-system-and-role-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/313d07c59108\" data-route=\"documentation/313d07c59108\" class=\"\">Open document page</a></div><h2>DC01 System and Role Validation</h2>\n<h2>Claim supported</h2>\n<p>Direct DC01 inventory supports Windows Server, installed role, domain, Global Catalog, FSMO, and DC01 IP claims for the personal nonproduction lab.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Operating system: Microsoft Windows Server 2022 Standard Evaluation.</li>\n<li>Version: 10.0.20348.</li>\n<li>Build number: 20348.</li>\n<li>Active Directory Domain Services installed: AD-Domain-Services, InstallState 1.</li>\n<li>DNS Server installed: DNS, InstallState 1.</li>\n<li>DHCP Server installed: DHCP, InstallState 1.</li>\n<li>Group Policy Management installed: GPMC, InstallState 1.</li>\n<li>Domain DNS root: ad.jeremyfontenot.online.</li>\n<li>NetBIOS domain: JFAD.</li>\n<li>Domain controller host: DC01.ad.jeremyfontenot.online.</li>\n<li>DC01 IPv4 address: 10.10.20.10.</li>\n<li>Global Catalog: true.</li>\n<li>FSMO roles on DC01: PDC Emulator, RID Master, Infrastructure Master, Schema Master, and Domain Naming Master.</li>\n</ul>\n<h2>Source command or source object</h2>\n<p>Authenticated DC01 target-local inventory result objects: OperatingSystem, InstalledRolesFeatures, Domain, Forest, and DomainControllers.</p>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<p><code>inventories/dc01-inventory-20260626-022543.json</code></p>\n<h2>Source file SHA-256</h2>\n<p><code>inventories/dc01-inventory-20260626-022543.json</code>: F60A6DD8C9EE42E90B02B210B1B1A775F89E5C3DED26618B593DEE1362C6DE42</p>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed executing account, privileged group details, SIDs, object GUIDs, GPO GUIDs, unrelated installed features, event details, raw time values not needed for the claim, and unrelated command output. Retained DC01 IP because it is already part of the current public home-lab evidence boundary.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>This artifact validates collected DC01 inventory values only.</li>\n<li>It does not prove ongoing Active Directory health, production readiness, security assurance, employer-system administration, or service availability beyond the captured inventory.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Validated</p></div></details><details><summary>Linux01 SSSD Remediation Validation <small> / linux01-sssd-remediation-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-sssd-remediation-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/bb9fe57b6085\" data-route=\"documentation/bb9fe57b6085\" class=\"\">Open document page</a></div><h2>Linux01 SSSD Remediation Validation</h2>\n<h2>Claim supported</h2>\n<p>Direct Linux01 remediation evidence supports a narrow Linux01-only SSSD responder/socket conflict remediation and post-remediation validation.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Initial condition: SSSD NSS, PAM, and PAC sockets were enabled and failed.</li>\n<li>Initial condition: SSSD was configured for direct responder activation through <code>services = nss, pam</code>.</li>\n<li>Initial condition: <code>config_file_version = 2</code> was rejected by SSSD 2.12 config validation.</li>\n<li>Remediation action: removed only the rejected <code>config_file_version = 2</code> directive.</li>\n<li>Remediation action: disabled conflicting NSS, PAM, and PAC sockets.</li>\n<li>Remediation action: restarted sssd.service.</li>\n<li>Remediation action: cleared failed-unit state.</li>\n<li>Post-remediation service state: sssd.service enabled and active/running.</li>\n<li>Post-remediation failed-unit state: zero failed units.</li>\n<li>SSSD configuration validation: passed.</li>\n<li>AD identity lookup: passed.</li>\n<li>New AD-authenticated SSH session: passed.</li>\n<li>Initial diagnostic SHA-256: 3CAD0FB73202D777D41DEE40D6F4D19D4019B9AD30552B37970B55A5CA5AB3BB.</li>\n<li>Original/backup configuration SHA-256: 23ACE1BECA5FF6F7D58200EFE054EA8E5A938E02F37FCE25B1CA1B5D2F05BD14.</li>\n<li>Post-remediation diagnostic SHA-256: FD55604BFB94487B86FBF631703FA995B9726471689385CCB2D277492AA7CBEE.</li>\n</ul>\n<h2>Source command or source object</h2>\n<p>Linux01 SSSD remediation evidence record.</p>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<p><code>evidence/linux01-sssd-remediation-20260626-110159.md</code></p>\n<h2>Source file SHA-256</h2>\n<p><code>evidence/linux01-sssd-remediation-20260626-110159.md</code>: 04773570FBE305353F5EB370B8F9629AC335E35A7BEF7151A2CBB98D7371CC49</p>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed diagnostic artifact paths, backup filesystem path, account context, raw command history, and implementation details not needed to support the remediation claim. Retained hashes because they are part of the validation evidence.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>Linux01 only.</li>\n<li>This does not claim that all Linux domain-authentication paths were tested.</li>\n<li>This does not prove production readiness, employer-system administration, or recurring assurance.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Validated</p></div></details><details><summary>Linux01 System, Network, and Domain Validation <small> / linux01-system-network-domain-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-system-network-domain-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/f442266b3082\" data-route=\"documentation/f442266b3082\" class=\"\">Open document page</a></div><h2>Linux01 System, Network, and Domain Validation</h2>\n<h2>Claim supported</h2>\n<p>Direct Linux01 inventory, Proxmox inventory, and source reconciliation evidence support Linux01 VM association, Ubuntu version, kernel, VLAN, IP addressing, DNS, gateway, current-versus-historical address boundary, and directly proven domain integration state.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Proxmox VM association: VM 400 name linux01, running.</li>\n<li>Operating system: Ubuntu 26.04 LTS.</li>\n<li>Kernel: Linux 7.0.0-22-generic.</li>\n<li>Architecture: x86_64.</li>\n<li>VLAN: 30, from current source reconciliation.</li>\n<li>Interface state: ens18 UP.</li>\n<li>Current IPv4 address: 10.10.30.20/24.</li>\n<li>Default gateway: 10.10.30.1.</li>\n<li>DNS server: 10.10.20.10.</li>\n<li>DNS domain: ad.jeremyfontenot.online.</li>\n<li>Current-versus-historical boundary: current Linux01 address is 10.10.30.20/24; older Linux01 10.10.20.x evidence is historical.</li>\n<li>Domain integration state: realmd reports ad.jeremyfontenot.online configured as a Kerberos member, server software active-directory, client software SSSD, and domain identity resolution returned <code>resolved</code>.</li>\n<li>Kerberos configuration: present.</li>\n</ul>\n<h2>Source command or source object</h2>\n<ul>\n<li>Authenticated Linux01 target-local inventory result objects: Distribution, Kernel, IP addresses, Routes, DNS, realmd, Domain identity resolution, and Kerberos config.</li>\n<li>Proxmox read-only inventory object: <code>virtualMachines[]</code> entry for VM 400.</li>\n<li>Source reconciliation table for Linux01 VLAN and current-versus-historical address boundary.</li>\n</ul>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<ul>\n<li><code>inventories/linux01-inventory-20260626-084312.json</code></li>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code></li>\n<li><code>evidence/home-lab-source-reconciliation-20260626-012606.md</code></li>\n</ul>\n<h2>Source file SHA-256</h2>\n<ul>\n<li><code>inventories/linux01-inventory-20260626-084312.json</code>: 75F82AF4882FA9C869C78C1AC127C5D4F37C5CB62F4E8894361A352695EFC40D</li>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code>: D652D1EF753E14242C07F84F19FBF09F642F07C3B09CFE2E98AA7F2B176ADE3D</li>\n<li><code>evidence/home-lab-source-reconciliation-20260626-012606.md</code>: 2D377A7A6703F8C3C5FBB77AA093569806DDB7939CFA88FD6A0ECF801484C3EE</li>\n</ul>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed executing account, machine identifiers, link-local IPv6 address, raw boot/session identifiers, unrelated package/service details, unnecessary filesystem paths, and distro metadata not needed for the public claim.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>Domain integration is limited to the directly observed realmd, SSSD client, Kerberos config, and identity-resolution indicators.</li>\n<li>This artifact does not claim that all Linux domain-authentication paths were tested.</li>\n<li>Timeout or listener observations are not complete firewall validation.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Validated</p></div></details><details><summary>Proxmox Backup Configuration <small> / proxmox-backup-configuration.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-backup-configuration.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/fa0beca36156\" data-route=\"documentation/fa0beca36156\" class=\"\">Open document page</a></div><h2>Proxmox Backup Configuration</h2>\n<h2>Claim supported</h2>\n<p>Direct Proxmox backup configuration evidence supports the configured weekly snapshot job for primary lab VMs.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Backup job ID: backup-critical-lab-vms.</li>\n<li>Enabled state: enabled.</li>\n<li>Schedule: Sunday 02:00 (<code>sun 02:00</code>).</li>\n<li>Mode: snapshot.</li>\n<li>Compression: zstd.</li>\n<li>Retention: keep-last=4.</li>\n<li>Storage target: backup-hdd.</li>\n<li>Target VMs: 100, 200, 300, and 400.</li>\n</ul>\n<h2>Source command or source object</h2>\n<ul>\n<li>Proxmox read-only inventory object: <code>backupJobs[]</code>.</li>\n<li>Backup and restore validation text: backup job block with prune/retention details.</li>\n</ul>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code></li>\n<li><code>evidence/home-lab-backup-restore-validation-20260629.txt</code></li>\n</ul>\n<h2>Source file SHA-256</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code>: D652D1EF753E14242C07F84F19FBF09F642F07C3B09CFE2E98AA7F2B176ADE3D</li>\n<li><code>evidence/home-lab-backup-restore-validation-20260629.txt</code>: 4637E848C9B318B8C74BB9C6E4569B3CC03E6686CE64FA367CF6DEC05FA52E13</li>\n</ul>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed scheduling metadata not needed for the claim, command context, host details, and any unrelated storage, VM, or task information.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Configuration presence does not prove that every recent backup task succeeded.</li>\n<li>This artifact does not claim successful recent backups for VMs 200 or 300 because no direct recent OK task output is published here.</li>\n<li>This artifact does not prove restore integrity, RTO, RPO, recurring restore assurance, or disaster-recovery readiness.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Configured</p></div></details><details><summary>Proxmox Backup Inventory <small> / proxmox-backup-inventory.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-backup-inventory.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/39f7bbaf9ecb\" data-route=\"documentation/39f7bbaf9ecb\" class=\"\">Open document page</a></div><h2>Proxmox Backup Inventory</h2>\n<h2>Claim supported</h2>\n<p>Direct backup inventory evidence supports active backup-hdd storage, retained archive presence by VM count, and the boundary that archive presence is not the same as recurring restore assurance.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Storage: backup-hdd.</li>\n<li>Storage path retained as claim-relevant evidence: <code>/mnt/pve/backup-hdd</code>.</li>\n<li>Storage status from current inventory: type <code>dir</code>, content <code>backup</code>, total 982,809,350,144 bytes, used 172,812,951,552 bytes, available 759,996,993,536 bytes.</li>\n<li>Backup validation storage view: 916 GB size, 127 GB used, 743 GB available, 15 percent used.</li>\n<li>Retained backup counts: VM 100 count 4, VM 200 count 4, VM 300 count 4, VM 400 count 4.</li>\n<li>No successful recent per-VM vzdump task status is claimed from this artifact.</li>\n<li>Operational limitation retained: Proxmox thin-pool risk is visible. The retained storage source directly shows a 428 GB thin pool and provisioned VM/snapshot thin volumes that exceed that physical thin-pool size. The requested auto-extension warning is retained as a limitation boundary; the retained source set inspected for this publication does not include a separate thin-pool auto-extension configuration dump.</li>\n</ul>\n<h2>Source command or source object</h2>\n<ul>\n<li>Proxmox read-only inventory object: <code>storage[]</code>.</li>\n<li>Backup and restore validation text: backup counts and storage block.</li>\n<li>Retained public storage evidence: Proxmox storage status, logical volume, and thin-pool usage sections.</li>\n</ul>\n<h2>Source repository</h2>\n<ul>\n<li>fontenotjeremy71-hub/jeremy-homelab-ops</li>\n<li>fontenotjeremy71-hub/jeremyfontenot, for the retained older public storage limitation artifact</li>\n</ul>\n<h2>Source commit</h2>\n<ul>\n<li>Operations source: fb6c286873285778d88d6d5cfde0b9bd00b96f36</li>\n<li>Website retained public evidence source: 5813445f3cc828e2146773299c47967292da7fd5</li>\n</ul>\n<h2>Source path</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code></li>\n<li><code>evidence/home-lab-backup-restore-validation-20260629.txt</code></li>\n<li><code>evidence-library/projects/on-prem-home-lab/validated-2026-06-21/text/proxmox-storage-validation.txt</code></li>\n</ul>\n<h2>Source file SHA-256</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code>: D652D1EF753E14242C07F84F19FBF09F642F07C3B09CFE2E98AA7F2B176ADE3D</li>\n<li><code>evidence/home-lab-backup-restore-validation-20260629.txt</code>: 4637E848C9B318B8C74BB9C6E4569B3CC03E6686CE64FA367CF6DEC05FA52E13</li>\n<li><code>evidence-library/projects/on-prem-home-lab/validated-2026-06-21/text/proxmox-storage-validation.txt</code>: 7F069AA31390D90D99F0000D6F6236A2B60F5D28F061668C0BBD5054FA93741F</li>\n</ul>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed PIDs, unrelated filesystems, device identifiers not needed for the claim, snapshot parent names, raw command history, and backup archive filenames. Retained the backup storage path because it is the public claim being validated.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>Backup archive count does not prove backup integrity.</li>\n<li>No claim is made that all recent backup tasks succeeded.</li>\n<li>The thin-pool warning is an operational limitation and is not framed as a failed backup or failed restore.</li>\n<li>No RTO, RPO, production disaster-recovery readiness, or recurring restore assurance is claimed.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Documented / Limitation</p></div></details><details><summary>Proxmox Platform Inventory <small> / proxmox-platform-inventory.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-platform-inventory.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/05a0e7fbeefa\" data-route=\"documentation/05a0e7fbeefa\" class=\"\">Open document page</a></div><h2>Proxmox Platform Inventory</h2>\n<h2>Claim supported</h2>\n<p>Direct Proxmox inventory supports the personal nonproduction lab platform claim for Proxmox VE, primary VM IDs, VM names, running state, allocated vCPU, memory, disk, bridge placement, guest-agent state, and Linux01 VLAN tag where captured.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Proxmox VE version: 9.2.3.</li>\n<li>Proxmox kernel: Linux 7.0.12-1-pve.</li>\n<li>VM 100: pfsense-fw, running, 2 vCPU, 4 GB memory, 32 GB disk, bridges vmbr0 and vmbr1, guest agent not configured and not responding.</li>\n<li>VM 200: dc01, running, 2 vCPU, 4 GB memory, 80 GB disk, bridge vmbr1, guest agent not configured and not responding.</li>\n<li>VM 300: ws01, running, 2 vCPU, 4 GB memory, 80 GB disk, bridge vmbr1, guest agent not configured and not responding.</li>\n<li>VM 400: linux01, running, 2 vCPU, 2 GB memory, 40 GB disk, bridge vmbr1, guest agent configured and responding.</li>\n<li>Linux01 VLAN tag: 30, from the retained source reconciliation record.</li>\n</ul>\n<h2>Source command or source object</h2>\n<ul>\n<li>Proxmox read-only inventory object: <code>version</code>, <code>node.kernel</code>, <code>virtualMachines[]</code>, and <code>storage[]</code>.</li>\n<li>Source reconciliation object: current command/API evidence row for Linux01 Proxmox VM tag.</li>\n</ul>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code></li>\n<li><code>evidence/home-lab-source-reconciliation-20260626-012606.md</code></li>\n</ul>\n<h2>Source file SHA-256</h2>\n<ul>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code>: D652D1EF753E14242C07F84F19FBF09F642F07C3B09CFE2E98AA7F2B176ADE3D</li>\n<li><code>evidence/home-lab-source-reconciliation-20260626-012606.md</code>: 2D377A7A6703F8C3C5FBB77AA093569806DDB7939CFA88FD6A0ECF801484C3EE</li>\n</ul>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed node uptime, repository ID, host resource details not needed for the public claim, snapshot parent names, raw paths unrelated to the platform claim, and any fields not required to prove the listed inventory values.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only; this does not prove ongoing availability.</li>\n<li>Proxmox inventory does not prove guest operating-system health, pfSense firewall policy, Active Directory health, backup restore integrity, or Windows service state.</li>\n<li>Linux01 VLAN tag is supported by the reconciliation source, not by the VM list object alone.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Validated</p></div></details><details><summary>Proxmox Restore Validation <small> / proxmox-restore-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-restore-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/9f8e98caeacd\" data-route=\"documentation/9f8e98caeacd\" class=\"\">Open document page</a></div><h2>Proxmox Restore Validation</h2>\n<h2>Claim supported</h2>\n<p>Direct restore validation evidence supports one isolated Linux01 restore drill from source VM 400 to temporary VM 401.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Source VM: 400.</li>\n<li>Temporary restore VM: 401.</li>\n<li>Restored disk size boundary: VM 400 boot disk shown as 40 GB in the retained restore validation source.</li>\n<li>Temporary VM network isolation: temporary VM network isolated before boot.</li>\n<li>Guest validation: Ubuntu 26.04 LTS boot and QEMU Guest Agent response were validated in the retained restore evidence.</li>\n<li>Cleanup: temporary VM 401 was shut down and purged successfully.</li>\n<li>The source set inspected for this publication does not include a retained per-command restore transcript with archive filename, progress percentage, or literal final <code>TASK OK</code> line; those details are therefore not claimed here.</li>\n<li>Operational limitation retained: Proxmox thin-pool risk remains visible and is not framed as a failed restore.</li>\n</ul>\n<h2>Source command or source object</h2>\n<p>Backup and restore validation text: VM state and restore drill sections.</p>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<p><code>evidence/home-lab-backup-restore-validation-20260629.txt</code></p>\n<h2>Source file SHA-256</h2>\n<p><code>evidence/home-lab-backup-restore-validation-20260629.txt</code>: 4637E848C9B318B8C74BB9C6E4569B3CC03E6686CE64FA367CF6DEC05FA52E13</p>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed PIDs and retained only the VM IDs, restore scope, network isolation, guest identity, guest-agent response, and cleanup outcome needed to support the public claim.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>One isolated Linux01 restore drill only.</li>\n<li>No recurring restore assurance.</li>\n<li>No RTO or RPO claim.</li>\n<li>No disaster-recovery readiness, SLA, production, or employer-system claim.</li>\n<li>Thin-pool warnings are operational limitations and are not evidence of a failed restore.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Tested</p></div></details><details><summary>WS01 System and Domain Validation <small> / ws01-system-and-domain-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/ws01-system-and-domain-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/34b581f1eabe\" data-route=\"documentation/34b581f1eabe\" class=\"\">Open document page</a></div><h2>WS01 System and Domain Validation</h2>\n<h2>Claim supported</h2>\n<p>Direct WS01 inventory and Proxmox inventory support the WS01 system, VM association, domain membership, and network-state claims for the personal nonproduction lab.</p>\n<h2>Directly observed values</h2>\n<ul>\n<li>Proxmox VM association: VM 300 name ws01, running.</li>\n<li>Windows edition: Microsoft Windows 10 Pro.</li>\n<li>Windows version: 10.0.19045.</li>\n<li>Windows build: 19045.</li>\n<li>Domain membership: WS01 is part of domain ad.jeremyfontenot.online.</li>\n<li>Secure channel result: true.</li>\n<li>Network interface: Ethernet.</li>\n<li>IPv4 address: 10.10.20.100.</li>\n<li>Default gateway: 10.10.20.1.</li>\n<li>DNS server: 10.10.20.10.</li>\n<li>DHCP enabled: true.</li>\n<li>DHCP server: 10.10.20.10.</li>\n<li>Current supported OS reconciliation: Windows 10 Pro 10.0.19045 is the supported current value in the retained WS01 inventory.</li>\n</ul>\n<h2>Source command or source object</h2>\n<ul>\n<li>Authenticated WS01 target-local inventory result objects: OperatingSystem, NetworkConfiguration, DomainMembership, and SecureChannel.</li>\n<li>Proxmox read-only inventory object: <code>virtualMachines[]</code> entry for VM 300.</li>\n</ul>\n<h2>Source repository</h2>\n<p>fontenotjeremy71-hub/jeremy-homelab-ops</p>\n<h2>Source commit</h2>\n<p>fb6c286873285778d88d6d5cfde0b9bd00b96f36</p>\n<h2>Source path</h2>\n<ul>\n<li><code>inventories/ws01-inventory-20260626-012952.json</code></li>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code></li>\n</ul>\n<h2>Source file SHA-256</h2>\n<ul>\n<li><code>inventories/ws01-inventory-20260626-012952.json</code>: 1438FA0F72F241E2613C5D35B797492FFC754B0E818A74154DE38DD74082A6B1</li>\n<li><code>inventories/proxmox-inventory-20260626-010601.json</code>: D652D1EF753E14242C07F84F19FBF09F642F07C3B09CFE2E98AA7F2B176ADE3D</li>\n</ul>\n<h2>Public artifact SHA-256</h2>\n<p>Recorded in <code>evidence-library/integrity/evidence-hashes.json</code> for this artifact path. The self-hash is recorded outside this file so the digest does not invalidate itself.</p>\n<h2>Sanitization performed</h2>\n<p>Removed executing account, local administrator membership, SIDs, GUIDs, group policy raw details, software inventory, unrelated services, event data, and local profile or path information.</p>\n<h2>Limitations</h2>\n<ul>\n<li>Personal nonproduction home lab only.</li>\n<li>Captured-state evidence only.</li>\n<li>This artifact validates WS01 inventory values and domain membership state only.</li>\n<li>It does not claim production support, employer-system administration, complete endpoint hardening, or complete application/service validation.</li>\n</ul>\n<h2>Validation date</h2>\n<p>2026-06-30</p>\n<h2>Classification</h2>\n<p>Validated</p></div></details><details><summary>Redaction Log <small> / redaction-log.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/redaction-log.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/78e82a05f0f8\" data-route=\"documentation/78e82a05f0f8\" class=\"\">Open document page</a></div><h2>Redaction Log</h2>\n<p>No credentials, private keys, tokens, cookies, or secrets were copied. Public summaries avoid private repository links and retain only reviewer-safe claim context.</p>\n<p>For the direct evidence artifacts, usernames, executing accounts, MAC addresses, UUIDs, VM generation IDs, UPIDs, PIDs, SIDs, internal object GUIDs, absolute local Windows user paths, unnecessary root paths, unrelated installed features, unrelated command history, unnecessary timestamps, and snapshot parent names were removed or omitted where they were not required to support the stated public claim.</p>\n<p>The Proxmox thin-pool warning is retained as an operational limitation. It is not framed as a failed restore or infrastructure failure.</p></div></details><details><summary>Backup and Restore Validation <small> / backup-and-restore-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/backup-and-restore-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/5b8e4cc34ba2\" data-route=\"documentation/5b8e4cc34ba2\" class=\"\">Open document page</a></div><h2>Backup and Restore Validation</h2>\n<h2>Status</h2>\n<p>Partially validated by retained June 24 documentation. No restore test was repeated during the 2026-06-26 read-only operations run.</p>\n<h2>Current Evidence</h2>\n<p>Read-only Proxmox inventory observed an enabled scheduled backup job:</p>\n<ul>\n<li>Job ID: <code>backup-critical-lab-vms</code></li>\n<li>VMs: <code>100,200,300,400</code></li>\n<li>Storage: <code>backup-hdd</code></li>\n<li>Schedule: <code>sun 02:00</code></li>\n<li>Mode: <code>snapshot</code></li>\n<li>Compression: <code>zstd</code></li>\n</ul>\n<p>Storage inventory observed backup storage named <code>backup-hdd</code> at <code>/mnt/pve/backup-hdd</code>.</p>\n<p>The June 24 IP-address-documented portfolio documentation records isolated startup restore checks for:</p>\n<ul>\n<li>WS01 restored temporarily as VM 500, with the NIC link down before startup.</li>\n<li>Linux01 restored temporarily as VM 600, with the NIC link down before startup.</li>\n</ul>\n<p>The current Proxmox inventory no longer shows VM 500 or VM 600, which is consistent with the documentation stating both temporary restore VMs were removed after validation.</p>\n<h2>Required Future Validation</h2>\n<p>Before claiming recurring restore assurance, perform an approved fresh restore validation that documents:</p>\n<ul>\n<li>Exact VM or test restore target</li>\n<li>Backup file selected</li>\n<li>Restore command or UI action</li>\n<li>Network isolation approach</li>\n<li>Validation checks</li>\n<li>Cleanup steps</li>\n<li>Rollback procedure</li>\n<li>Evidence proving successful boot or file-level recovery</li>\n</ul>\n<h2>Claim Boundary</h2>\n<p>The current operations repository validates backup job configuration visibility and retains documentation of June 24 isolated startup restore checks. It does not validate current backup archive integrity, recurring restore success, RTO, RPO, or disaster-recovery readiness.</p></div></details><details><summary>Centralized Logging Expansion Change Plan <small> / centralized-logging-expansion.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/centralized-logging-expansion.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/f9d38f44ed30\" data-route=\"documentation/f9d38f44ed30\" class=\"\">Open document page</a></div><h2>Centralized Logging Expansion Change Plan</h2>\n<h2>Status</h2>\n<p>Planned. Approval required before implementation.</p>\n<h2>Current State</h2>\n<p>June 24 documentation records pfSense forwarding selected system, firewall, authentication, VPN, and gateway events to Linux01 at <code>10.10.30.20:514</code>, with Linux01 rsyslog listeners and alert-match logging. Current Proxmox metadata validates Linux01 is running on VLAN 30 and QEMU guest agent is responding.</p>\n<p>The June 26 authenticated Linux01 target-local inventory validates rsyslog runtime state from inside the guest. Linux01 reports rsyslog active, TCP and UDP 514 listening on <code>10.10.30.20</code>, remote collector configuration under <code>/etc/rsyslog.d/10-remote-collector.conf</code>, pfSense alert file configuration under <code>/etc/rsyslog.d/05-pfsense-alerts.conf</code>, and rsyslog logrotate configuration under <code>/etc/logrotate.d/rsyslog</code>.</p>\n<h2>Evidence</h2>\n<ul>\n<li>Proxmox current API: Linux01 VM 400 running, <code>tag=30</code>, guest agent responding.</li>\n<li>DNS current command: <code>linux01.ad.jeremyfontenot.online</code> resolves to <code>10.10.30.20</code>.</li>\n<li>June 24 IP-address-documented documentation: pfSense-to-Linux01 rsyslog forwarding and alert logging documented.</li>\n<li>Current reachability check: TCP 514 from the current client path timed out and is not treated as rsyslog service failure.</li>\n<li><code>inventories/linux01-inventory-20260626-020257.json</code>: SSH from the management execution path timed out; guest-side rsyslog state was <code>NOT TESTED</code>.</li>\n<li><code>inventories/linux01-inventory-20260626-084312.json</code>: authenticated target-local Linux01 inventory validates rsyslog service/listener state, route/DNS state, AD integration indicators, disk capacity, and logrotate summary.</li>\n<li><code>evidence/linux01-local-inventory-validation-20260626-035220.md</code>: sanitized evidence for Linux01 target-local inventory import and validation.</li>\n</ul>\n<h2>Target State</h2>\n<p>Expand centralized logging beyond pfSense by adding documented, least-privilege log forwarding or collection for Windows and Proxmox sources without weakening existing firewall policy.</p>\n<p>Candidate target design, pending implementation approval:</p>\n<ul>\n<li>Keep Linux01 as the primary syslog receiver because target-local evidence now confirms available root filesystem capacity, active rsyslog listeners on <code>10.10.30.20:514</code> for TCP and UDP, and rsyslog log rotation. UFW source restrictions still require a clearer privileged summary before any new source is added.</li>\n<li>Evaluate Windows Event Forwarding for DC01 and WS01 with DC01 as the likely Windows Event Collector only if existing domain policy and firewall posture support it safely. Do not make DC01 a collector until a separate change plan covers subscription type, source computers, event channels, retention, and rollback.</li>\n<li>Evaluate Proxmox remote syslog forwarding to Linux01 or another approved receiver only after documenting source IP, destination IP, protocol, port, and retention.</li>\n<li>Keep Linux local logs on Linux01 in local journald/rsyslog paths unless an approved monitoring platform is introduced.</li>\n</ul>\n<h2>Exact Systems</h2>\n<ul>\n<li>Linux01 VM 400</li>\n<li>DC01 VM 200</li>\n<li>WS01 VM 300</li>\n<li>Proxmox host <code>192.168.0.242</code></li>\n<li>pfSense VM 100</li>\n</ul>\n<h2>Exact Commands</h2>\n<p>Discovery and planning only until approved:</p>\n<pre><code class=\"language-powershell\">pwsh -NoProfile -File .\\scripts\\linux\\Get-LinuxReadOnlyInventory.ps1\npwsh -NoProfile -File .\\scripts\\active-directory\\Invoke-DC01LocalReadOnlyCollection.ps1\npwsh -NoProfile -File .\\scripts\\windows-server\\Invoke-WS01LocalReadOnlyCollection.ps1\n</code></pre>\n<p>Implementation commands are intentionally not authorized in this change plan. Linux01 rsyslog state has been validated, but Windows Event Forwarding, Proxmox logging state, pfSense sender configuration, and any firewall or GPO requirements still need a dedicated approved implementation plan.</p>\n<p>Target-local validation commands prepared for the next inventory pass:</p>\n<pre><code class=\"language-bash\">run_id=\"$(date -u +%Y%m%d-%H%M%S)\"\nbash ./Invoke-Linux01LocalReadOnlyCollection.sh \"/tmp/linux01-inventory-${run_id}.json\"\n</code></pre>\n<h2>Required Privileges</h2>\n<ul>\n<li>Read-only collection: existing approved sessions.</li>\n<li>Any logging configuration change: administrative privileges on the target system and explicit approval.</li>\n</ul>\n<h2>Network Requirements</h2>\n<p>No firewall openings are approved by this plan. Any proposed log path must identify source, destination, protocol, port, and existing firewall state before implementation.</p>\n<p>Expected network review before implementation:</p>\n<ul>\n<li>pfSense to Linux01 syslog path: verify existing source restriction, protocol, and port from configuration evidence before changing anything.</li>\n<li>DC01 and WS01 to collector: identify whether Windows Event Forwarding uses existing domain/Kerberos paths or requires new firewall scope. Any firewall or GPO change requires a dedicated approved plan.</li>\n<li>Proxmox to Linux01 syslog: document management-network source, Linux VLAN destination, routing path, and firewall requirements before implementation.</li>\n</ul>\n<h2>Security Impact</h2>\n<p>Positive if implemented carefully: stronger audit trail and troubleshooting visibility. Risk if overbroad: excessive log exposure, sensitive log retention, or unnecessary inter-network access.</p>\n<p>Security controls required in the implementation plan:</p>\n<ul>\n<li>Exclude credentials, private keys, Kerberos tickets, certificate private material, and sensitive raw log excerpts from repository evidence.</li>\n<li>Prefer source-restricted firewall rules over broad subnet acceptance if any new rules are approved.</li>\n<li>Document whether logs are unauthenticated syslog, authenticated Windows Event Forwarding, or locally collected files.</li>\n<li>Define integrity expectations honestly; plain syslog improves visibility but does not provide strong transport integrity by itself.</li>\n</ul>\n<h2>Service-Impact Risk</h2>\n<p>Low for discovery. Medium for configuration changes because logging service reloads or firewall changes could disrupt visibility or access if done incorrectly.</p>\n<p>Implementation must avoid service restarts unless the approved plan explicitly requires them. Prefer configuration validation and reload-only workflows where technically appropriate.</p>\n<h2>Retention, Rotation, and Capacity</h2>\n<p>Linux01 authenticated inventory currently supports:</p>\n<ul>\n<li>Root filesystem capacity: 19 GiB total, 13 GiB available, 29 percent used.</li>\n<li>Current rsyslog listener state: TCP and UDP 514 listening on <code>10.10.30.20</code>.</li>\n<li>Current rsyslog destination templates/configuration: <code>/var/log/remote/%FROMHOST-IP%/messages.log</code> and <code>/var/log/remote/pfsense-alerts.log</code> are configured.</li>\n<li>Current logrotate policy for rsyslog-managed files: weekly rotation, four rotations, compression, missing files tolerated, empty files skipped.</li>\n<li>Disk-use alert threshold. Initial planning threshold: warning at 80 percent used, critical at 90 percent used, pending Jeremy approval.</li>\n<li>Failure behavior if Linux01 is unavailable: sources should continue local logging and must not block authentication, DNS, DHCP, routing, or VM operation.</li>\n</ul>\n<h2>Alerting</h2>\n<p>Alerting remains planned. Candidate non-invasive alerts after receiver validation:</p>\n<ul>\n<li>Linux01 log filesystem above threshold.</li>\n<li>rsyslog service inactive.</li>\n<li>No pfSense log receipt within an expected interval.</li>\n<li>Proxmox backup job failure or missing latest backup.</li>\n<li>Windows Event Forwarding subscription source inactive, if WEF is later approved.</li>\n</ul>\n<h2>Validation</h2>\n<ul>\n<li>Confirm log sender service state.</li>\n<li>Confirm listener state on Linux01.</li>\n<li>Send one controlled non-sensitive test event.</li>\n<li>Confirm event arrives in the expected file or index.</li>\n<li>Confirm no credentials or private data are written to repository evidence.</li>\n</ul>\n<h2>Rollback</h2>\n<ul>\n<li>Revert only the logging configuration added by the approved implementation.</li>\n<li>Restore any exported pre-change configuration where applicable.</li>\n<li>Restart/reload only affected logging services if required and approved.</li>\n</ul>\n<h2>Evidence Capture</h2>\n<ul>\n<li>Timestamped pre-change inventory.</li>\n<li>Sanitized configuration diff or export.</li>\n<li>Exact command transcript with secrets omitted.</li>\n<li>Controlled test-event result.</li>\n<li>Rollback verification.</li>\n</ul>\n<h2>Approval Requirement</h2>\n<p>Explicit Jeremy approval is required before any logging configuration, firewall, service, package, or scheduled-task change.</p>\n<h2>Claim Boundary</h2>\n<p>This plan is implementation-ready documentation only. It does not implement centralized logging expansion, change firewall policy, install software, restart services, or modify any infrastructure system. Linux01 rsyslog receiver state is now validated by target-local inventory; additional sources and alerting remain planned until separately approved and implemented.</p></div></details><details><summary>Home Lab Inventory and Validation Evidence <small> / home-lab-inventory-validation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-inventory-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/509dde796a34\" data-route=\"documentation/509dde796a34\" class=\"\">Open document page</a></div><h2>Home Lab Inventory and Validation Evidence</h2>\n<ul>\n<li>Timestamp: <code>2026-06-26T01:06:01.2273166-05:00</code></li>\n<li>Source workstation: <code>DESKTOP-MR3F9A1</code></li>\n<li>Repository: <code>C:\\Users\\jeremy\\Documents\\projects\\jeremy-homelab-ops</code></li>\n<li>Execution mode: read-only discovery, inventory, and validation</li>\n<li>Infrastructure configuration changes: <code>0</code></li>\n</ul>\n<h2>Commands and Access Paths</h2>\n<ul>\n<li>Proxmox inventory: <code>mcp__home_lab</code> read-only Proxmox tools.</li>\n<li>Repository validation: <code>pwsh -NoProfile -File .\\tests\\Test-RepositoryStructure.ps1 -WriteEvidence</code></li>\n<li>Connectivity validation: <code>pwsh -NoProfile -File .\\scripts\\monitoring\\Test-HomeLabConnectivity.ps1 -TimeoutMilliseconds 1000</code></li>\n<li>DNS validation: <code>Resolve-DnsName ad.jeremyfontenot.online -Server 10.10.20.10</code></li>\n<li>Route validation: <code>route.exe print -4</code></li>\n<li>Domain discovery: <code>nltest /dsgetdc:ad.jeremyfontenot.online</code>, <code>nltest /dclist:ad.jeremyfontenot.online</code>, <code>nltest /sc_query:JFAD</code></li>\n<li>Module availability: <code>Get-Command Get-ADDomain</code>, <code>Get-Command Get-GPO</code>, <code>Get-Command Get-DhcpServerv4Scope</code>, <code>Get-Command Get-DnsServerZone</code></li>\n</ul>\n<h2>Validated Results</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Check</th>\n<th>Status</th>\n<th>Observed result</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Proxmox API inventory</td>\n<td>PASS</td>\n<td>Version <code>9.2.3</code>, node <code>proxmox</code> online, VMs <code>100</code>, <code>200</code>, <code>300</code>, and <code>400</code> running.</td>\n</tr>\n<tr>\n<td>Proxmox storage inventory</td>\n<td>PASS</td>\n<td><code>local-lvm</code>, <code>backup-hdd</code>, and <code>local</code> reported capacity and usage.</td>\n</tr>\n<tr>\n<td>Proxmox backup job inventory</td>\n<td>PASS</td>\n<td>Job <code>backup-critical-lab-vms</code> enabled for VMs <code>100,200,300,400</code>, storage <code>backup-hdd</code>, schedule <code>sun 02:00</code>.</td>\n</tr>\n<tr>\n<td>Proxmox management TCP</td>\n<td>PASS</td>\n<td><code>192.168.0.242:8006</code> connected in <code>67 ms</code>.</td>\n</tr>\n<tr>\n<td>DC01 DNS TCP</td>\n<td>PASS</td>\n<td><code>10.10.20.10:53</code> connected in <code>6 ms</code>.</td>\n</tr>\n<tr>\n<td>Domain DNS resolution</td>\n<td>PASS</td>\n<td><code>ad.jeremyfontenot.online</code> resolved to <code>10.10.20.10</code> using server <code>10.10.20.10</code>.</td>\n</tr>\n<tr>\n<td>VPN route</td>\n<td>PASS</td>\n<td>Route table includes <code>10.10.20.0/24</code> via <code>10.10.40.1</code> from <code>10.10.40.2</code>.</td>\n</tr>\n<tr>\n<td>Repository validation</td>\n<td>PASS</td>\n<td>Repository validation completed with no failing checks.</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Warnings and Inconclusive Results</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Check</th>\n<th>Status</th>\n<th>Observed result</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>pfSense LAN HTTPS TCP</td>\n<td>WARNING</td>\n<td><code>10.10.20.1:443</code> timed out after <code>1000 ms</code>.</td>\n</tr>\n<tr>\n<td>DC01 Kerberos TCP</td>\n<td>WARNING</td>\n<td><code>10.10.20.10:88</code> timed out after <code>1000 ms</code>.</td>\n</tr>\n<tr>\n<td>DC01 LDAP TCP</td>\n<td>WARNING</td>\n<td><code>10.10.20.10:389</code> timed out after <code>1000 ms</code>.</td>\n</tr>\n<tr>\n<td>DC01 SMB TCP</td>\n<td>WARNING</td>\n<td><code>10.10.20.10:445</code> timed out after <code>1000 ms</code>.</td>\n</tr>\n<tr>\n<td>DC01 WinRM TCP</td>\n<td>WARNING</td>\n<td><code>10.10.20.10:5985</code> timed out after <code>1000 ms</code>.</td>\n</tr>\n<tr>\n<td>Domain controller discovery</td>\n<td>INCONCLUSIVE</td>\n<td><code>nltest /dsgetdc:ad.jeremyfontenot.online</code> returned <code>ERROR_NO_SUCH_DOMAIN</code> from the current workstation context.</td>\n</tr>\n<tr>\n<td>Secure channel query</td>\n<td>INCONCLUSIVE</td>\n<td><code>nltest /sc_query:JFAD</code> returned <code>RPC_S_SERVER_UNAVAILABLE</code> from the current workstation context.</td>\n</tr>\n<tr>\n<td>DNS Server module inventory</td>\n<td>NOT TESTED</td>\n<td><code>Get-DnsServerZone</code> is not installed on the management workstation.</td>\n</tr>\n<tr>\n<td>DHCP Server module inventory</td>\n<td>NOT TESTED</td>\n<td><code>Get-DhcpServerv4Scope</code> is not installed on the management workstation.</td>\n</tr>\n<tr>\n<td>Group Policy inventory</td>\n<td>NOT TESTED</td>\n<td><code>Get-GPO</code> is not installed on the management workstation.</td>\n</tr>\n<tr>\n<td>WS01 guest inventory</td>\n<td>NOT TESTED</td>\n<td>No verified WS01 management IP or guest-agent response was available in this run.</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Claim Boundary</h2>\n<p>This evidence records read-only repository validation, Proxmox connector inventory, local route inspection, DNS resolution, and bounded TCP reachability checks. It does not validate pfSense configuration, firewall policy, NAT policy, VPN configuration correctness, Active Directory health, DNS zone health, DHCP scope health, Group Policy processing, WS01 domain relationship, backup restore integrity, or administrative access to Windows guests.</p>\n<p>Timeouts, module absence, and <code>nltest</code> failures are recorded observations only. They are not proof that the corresponding infrastructure components are offline, misconfigured, or unavailable.</p></div></details><details><summary>Home Lab Source of Truth <small> / home-lab-source-of-truth.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-source-of-truth.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/d4b3c3e6c035\" data-route=\"documentation/d4b3c3e6c035\" class=\"\">Open document page</a></div><h2>Home Lab Source of Truth</h2>\n<h2>Status</h2>\n<p>Current as of the 2026-06-26 read-only reconciliation run.</p>\n<h2>Source Precedence</h2>\n<ol>\n<li>Current command output, API output, guest-agent output, or authenticated system query.</li>\n<li>New timestamped evidence collected during this run.</li>\n<li>Current <code>jeremy-homelab-ops</code> inventories and evidence.</li>\n<li>Current <code>main</code> branch of <code>fontenotjeremy71-hub/jeremyfontenot</code>.</li>\n<li>June 24, 2026 IP-address-documented portfolio documentation.</li>\n<li>June 21, 2026 curated historical evidence.</li>\n<li>Currently deployed website content.</li>\n<li>Old prompts, summaries, assumptions, or undocumented memory.</li>\n</ol>\n<h2>Current Supported Architecture</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Component</th>\n<th>Current supported value</th>\n<th>Classification</th>\n<th>Evidence</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Physical host</td>\n<td>Dell PowerEdge R710</td>\n<td>Current documentation</td>\n<td>Portfolio and operations docs</td>\n</tr>\n<tr>\n<td>Hypervisor</td>\n<td>Proxmox VE <code>9.2.3</code></td>\n<td>Current</td>\n<td>Proxmox API</td>\n</tr>\n<tr>\n<td>Proxmox management</td>\n<td><code>192.168.0.242/24</code>, gateway <code>192.168.0.1</code></td>\n<td>Current</td>\n<td>Proxmox API and TCP validation</td>\n</tr>\n<tr>\n<td>pfSense</td>\n<td>VM 100 <code>pfsense-fw</code></td>\n<td>Current</td>\n<td>Proxmox API</td>\n</tr>\n<tr>\n<td>pfSense WAN</td>\n<td><code>192.168.0.205/24</code></td>\n<td>Current documentation, not re-queried from pfSense</td>\n<td>June 24 DOCX</td>\n</tr>\n<tr>\n<td>pfSense LAN</td>\n<td><code>10.10.20.1/24</code></td>\n<td>Current documentation</td>\n<td>June 24 DOCX and topology</td>\n</tr>\n<tr>\n<td>Linux VLAN gateway</td>\n<td><code>10.10.30.1/24</code></td>\n<td>Current documentation</td>\n<td>June 24 DOCX</td>\n</tr>\n<tr>\n<td>OpenVPN network</td>\n<td><code>10.10.40.0/24</code></td>\n<td>Current documentation plus route evidence</td>\n<td>June 24 DOCX and local route</td>\n</tr>\n<tr>\n<td>DC01</td>\n<td>VM 200, <code>10.10.20.10/24</code>, Windows Server 2022 domain controller</td>\n<td>Current authenticated guest inventory</td>\n<td>Proxmox API, DNS/RDP validation, <code>inventories/dc01-inventory-20260626-022543.json</code></td>\n</tr>\n<tr>\n<td>WS01</td>\n<td>VM 300, <code>10.10.20.100/24</code>, Windows domain workstation</td>\n<td>Current authenticated guest inventory</td>\n<td>Proxmox API, <code>inventories/ws01-inventory-20260626-012952.json</code></td>\n</tr>\n<tr>\n<td>Linux01</td>\n<td>VM 400, <code>10.10.30.20/24</code>, VLAN 30, Ubuntu 26.04 LTS domain member</td>\n<td>Current authenticated guest inventory</td>\n<td>Proxmox API, DNS validation, <code>inventories/linux01-inventory-20260626-084312.json</code></td>\n</tr>\n<tr>\n<td>AD domain</td>\n<td><code>ad.jeremyfontenot.online</code></td>\n<td>Current authenticated guest inventory</td>\n<td>DC01 target-local inventory, 2026-06-26</td>\n</tr>\n<tr>\n<td>NetBIOS domain</td>\n<td><code>JFAD</code></td>\n<td>Current authenticated guest inventory</td>\n<td>DC01 target-local inventory, 2026-06-26</td>\n</tr>\n<tr>\n<td>Backup storage</td>\n<td><code>backup-hdd</code> at <code>/mnt/pve/backup-hdd</code></td>\n<td>Current</td>\n<td>Proxmox API</td>\n</tr>\n<tr>\n<td>Backup job</td>\n<td><code>backup-critical-lab-vms</code>, Sunday 02:00, snapshot, zstd, VMs 100/200/300/400</td>\n<td>Current</td>\n<td>Proxmox API</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Historical or Stale Values</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Classification</th>\n<th>Current handling</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Linux01 <code>10.10.20.20/24</code></td>\n<td>Historical</td>\n<td>Retained as pre-VLAN 30 address only</td>\n</tr>\n<tr>\n<td>Linux01 DHCP <code>10.10.20.101</code></td>\n<td>Historical</td>\n<td>Retained as initial setup address only</td>\n</tr>\n<tr>\n<td><code>backup-nvme</code> or <code>/mnt/pve/backup-nvme</code></td>\n<td>Stale or inconclusive</td>\n<td>Not current unless future evidence proves rename/replacement</td>\n</tr>\n<tr>\n<td>Direct WAN-side RDP forwarding</td>\n<td>Historical</td>\n<td>Current design uses OpenVPN-only RDP path</td>\n</tr>\n<tr>\n<td>June 21 restore outstanding limitation</td>\n<td>Historical</td>\n<td>Superseded by June 24 isolated restore documentation, not re-run during this ops pass</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Claim Boundary</h2>\n<p>This file corrects explanatory documentation using current evidence. It does not modify historical evidence and does not claim live guest OS internals unless current command output or explicitly cited retained evidence supports the claim.</p>\n<p>The June 26 target-local workflow imported authenticated DC01 evidence in <code>inventories/dc01-inventory-20260626-022543.json</code> and <code>evidence/dc01-local-inventory-validation-20260626-022811.md</code>. It imported authenticated WS01 evidence in <code>inventories/ws01-inventory-20260626-012952.json</code> and <code>evidence/ws01-local-inventory-validation-20260626-033405.md</code>. It also imported authenticated Linux01 evidence in <code>inventories/linux01-inventory-20260626-084312.json</code> and <code>evidence/linux01-local-inventory-validation-20260626-035220.md</code>.</p></div></details><details><summary>Home Lab Source Reconciliation Evidence <small> / home-lab-source-reconciliation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-source-reconciliation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/759c75076daf\" data-route=\"documentation/759c75076daf\" class=\"\">Open document page</a></div><h2>Home Lab Source Reconciliation Evidence</h2>\n<ul>\n<li>Timestamp: <code>2026-06-26T01:26:06.6980689-05:00</code></li>\n<li>Source workstation: <code>DESKTOP-MR3F9A1</code></li>\n<li>Operations repository: <code>C:\\Users\\jeremy\\Documents\\projects\\jeremy-homelab-ops</code></li>\n<li>Portfolio repository: <code>C:\\Users\\jeremy\\Documents\\projects\\jeremyfontenot</code></li>\n<li>Deployed page inspected: <code>https://jeremyfontenot.online/on-prem-home-lab.html</code></li>\n<li>Infrastructure changes made: <code>0</code></li>\n</ul>\n<h2>Current Command/API Evidence</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Component</th>\n<th>Result</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Proxmox version</td>\n<td><code>9.2.3</code></td>\n</tr>\n<tr>\n<td>VM 100</td>\n<td><code>pfsense-fw</code>, running, vmbr0 and vmbr1</td>\n</tr>\n<tr>\n<td>VM 200</td>\n<td><code>dc01</code>, running, vmbr1</td>\n</tr>\n<tr>\n<td>VM 300</td>\n<td><code>ws01</code>, running, vmbr1, guest agent disabled</td>\n</tr>\n<tr>\n<td>VM 400</td>\n<td><code>linux01</code>, running, vmbr1, <code>tag=30</code>, QEMU guest agent responding</td>\n</tr>\n<tr>\n<td>Backup storage</td>\n<td><code>backup-hdd</code>, path <code>/mnt/pve/backup-hdd</code>, active</td>\n</tr>\n<tr>\n<td>Backup job</td>\n<td><code>backup-critical-lab-vms</code>, enabled, <code>sun 02:00</code>, snapshot, zstd, VMs <code>100,200,300,400</code></td>\n</tr>\n<tr>\n<td>Linux01 DNS</td>\n<td><code>linux01.ad.jeremyfontenot.online</code> resolves to <code>10.10.30.20</code></td>\n</tr>\n<tr>\n<td>Linux01 PTR</td>\n<td><code>10.10.30.20</code> resolves to <code>linux01.ad.jeremyfontenot.online</code></td>\n</tr>\n<tr>\n<td>VPN path</td>\n<td>DC01 DNS TCP 53 and RDP TCP 3389 reachable</td>\n</tr>\n<tr>\n<td>Expected block</td>\n<td>DC01 SMB TCP 445 and pfSense WAN direct RDP TCP 3389 timed out</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Conflicts</h2>\n<div class=\"table-scroll\"><table>\n<thead>\n<tr>\n<th>Component</th>\n<th>Higher-precedence current value</th>\n<th>Lower-precedence conflicting value</th>\n<th>Classification</th>\n<th>Action</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Linux01 IP</td>\n<td><code>10.10.30.20/24</code></td>\n<td>Deployed website and June 21 evidence show <code>10.10.20.20/24</code></td>\n<td>Stale deployed/historical value</td>\n<td>Operations docs now treat <code>10.10.20.20</code> as historical</td>\n</tr>\n<tr>\n<td>Linux01 VLAN</td>\n<td>Proxmox config has <code>tag=30</code></td>\n<td>Deployed website omits VLAN 30 current state</td>\n<td>Stale deployed value</td>\n<td>Operations docs use current Proxmox metadata</td>\n</tr>\n<tr>\n<td>Restore status</td>\n<td>June 24 DOCX records isolated restore checks for VM 500 and 600</td>\n<td>June 21 redaction log says restore outstanding</td>\n<td>Historical difference</td>\n<td>Recovery docs distinguish June 21 historical limitation from June 24 documentation</td>\n</tr>\n<tr>\n<td>Backup storage</td>\n<td>Proxmox API shows <code>backup-hdd</code> at <code>/mnt/pve/backup-hdd</code></td>\n<td>Older prompt/doc values mention <code>backup-nvme</code></td>\n<td>Stale or inconclusive historical value</td>\n<td>Operations docs use <code>backup-hdd</code> and flag <code>backup-nvme</code> as stale unless rename evidence is found</td>\n</tr>\n</tbody>\n</table></div>\n<h2>Claim Boundary</h2>\n<p>Current Proxmox API output and current DNS/RDP checks are treated as current observed state. Portfolio and DOCX records are retained as documentation evidence where live command output cannot validate guest internals from this client path. Historical evidence is not rewritten.</p></div></details><details><summary>Linux01 SSSD Remediation <small> / linux01-sssd-remediation.md</small></summary><div class=\"document\"><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/linux01-sssd-remediation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original source <span aria-hidden=\"true\">↗</span></a><a href=\"#documentation/8f2473febe02\" data-route=\"documentation/8f2473febe02\" class=\"\">Open document page</a></div><h2>Linux01 SSSD Remediation</h2>\n<h2>Summary</h2>\n<ul>\n<li>Target: Linux01</li>\n<li>Date: June 26, 2026</li>\n<li>Domain: ad.jeremyfontenot.online</li>\n<li>Classification: SSSD responder activation conflict</li>\n<li>Result: Remediated and validated</li>\n</ul>\n<h2>Initial Condition</h2>\n<ul>\n<li>sssd-nss.socket, sssd-pam.socket, and sssd-pac.socket were enabled and failed.</li>\n<li>/etc/sssd/sssd.conf used direct responder activation with services = nss, pam.</li>\n<li>config_file_version = 2 was rejected by SSSD 2.12 configuration validation.</li>\n<li>Initial diagnostic: artifacts/target-local-collection/Linux01/linux01-sssd-diagnostic-20260626-094322.json</li>\n<li>Initial SHA-256: 3CAD0FB73202D777D41DEE40D6F4D19D4019B9AD30552B37970B55A5CA5AB3BB</li>\n</ul>\n<h2>Backup</h2>\n<ul>\n<li>Backup: /root/sssd.conf.pre-remediation-20260626-095429.bak</li>\n<li>Original and backup SHA-256: 23ace1beca5ff6f7d58200efe054ea8e5a938e02f37fce25b1ca1b5d2f05bd14</li>\n</ul>\n<h2>Remediation</h2>\n<ol>\n<li>Removed the rejected config_file_version directive.</li>\n<li>Confirmed sssctl config-check completed with zero issues.</li>\n<li>Disabled the NSS, PAM, and PAC SSSD socket units.</li>\n<li>Restarted sssd.service.</li>\n<li>Cleared the historical failed-unit state.</li>\n</ol>\n<h2>Validation</h2>\n<ul>\n<li>sssd.service is enabled, active, and running.</li>\n<li>No failed systemd units remain.</li>\n<li>All three responder sockets report disabled.</li>\n<li>AD identity lookup succeeded.</li>\n<li>A new AD-authenticated SSH session succeeded.</li>\n<li>Post-remediation diagnostic: artifacts/target-local-collection/Linux01/linux01-sssd-diagnostic-20260626-110159.json</li>\n<li>Post-remediation SHA-256: FD55604BFB94487B86FBF631703FA995B9726471689385CCB2D277492AA7CBEE</li>\n</ul>\n<h2>Final Status</h2>\n<p>Linux01 is operating normally using direct SSSD responder activation.</p></div></details></section><section class=\"content-block\" id=\"troubleshooting\"><h2>Troubleshooting</h2><p>Direct tests separated WinRM reachability, authentication overhead, and actual host resources when the WAC experience felt slow. The source does not establish a broader server-performance root cause.</p><div class=\"doc-grid\"></div></section><section class=\"content-block\" id=\"validation\"><h2>Validation & results</h2><p>Windows management and connectivity/remoting validation are documented. The registry does not identify a fully separate WAC evidence directory.</p><div class=\"doc-grid\"><a href=\"#documentation/313d07c59108\" data-route=\"documentation/313d07c59108\" class=\"\">DC01 System and Role Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/dc01-system-and-role-validation.md</small></a><a href=\"#documentation/bb9fe57b6085\" data-route=\"documentation/bb9fe57b6085\" class=\"\">Linux01 SSSD Remediation Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-sssd-remediation-validation.md</small></a><a href=\"#documentation/f442266b3082\" data-route=\"documentation/f442266b3082\" class=\"\">Linux01 System, Network, and Domain Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/linux01-system-network-domain-validation.md</small></a><a href=\"#documentation/9f8e98caeacd\" data-route=\"documentation/9f8e98caeacd\" class=\"\">Proxmox Restore Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-restore-validation.md</small></a><a href=\"#documentation/34b581f1eabe\" data-route=\"documentation/34b581f1eabe\" class=\"\">WS01 System and Domain Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/ws01-system-and-domain-validation.md</small></a><a href=\"#documentation/5b8e4cc34ba2\" data-route=\"documentation/5b8e4cc34ba2\" class=\"\">Backup and Restore Validation<small>evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/backup-and-restore-validation.md</small></a><a href=\"#documentation/509dde796a34\" data-route=\"documentation/509dde796a34\" class=\"\">Home Lab Inventory and Validation Evidence<small>evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-inventory-validation.md</small></a></div></section><section class=\"content-block\" id=\"evidence\"><h2>Evidence</h2><p>STRONG for documented centralized Windows management and connectivity/remoting validation; exact dedicated evidence directory NEEDS VERIFICATION.</p><div class=\"doc-grid\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-backup-configuration.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">proxmox-backup-configuration.md<small>Reviewed backup coverage, archive state, network isolation, temporary restore VMs, validation checkpoints, cleanup, and result boundaries.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/direct-evidence/proxmox-platform-inventory.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">proxmox-platform-inventory.md<small>Reviewed node, VM, storage, bridge, VLAN, guest-agent, snapshot, backup, and lifecycle state.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-source-reconciliation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">home-lab-source-reconciliation.md<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/home-lab-source-of-truth.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">home-lab-source-of-truth.md<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/linux01-sssd-remediation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">linux01-sssd-remediation.md<small>Reviewed Ubuntu networking, SSH, time synchronization, logging, updates, security controls, guest integration, Kerberos, realmd, and SSSD.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/provenance.json\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">provenance.json<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/source-summaries/backup-and-restore-validation.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">backup-and-restore-validation.md<small>Reviewed backup coverage, archive state, network isolation, temporary restore VMs, validation checkpoints, cleanup, and result boundaries.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/provenance.csv\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">provenance.csv<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/manifest.json\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">manifest.json<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/current-validated-state/claim-map.csv\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">claim-map.csv<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a></div><div class=\"source-links\"><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Browse and filter the complete evidence library</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/windows-admin-center-lab.html\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub project source <span aria-hidden=\"true\">↗</span></a></div></section><section class=\"content-block\" id=\"skills\"><h2>Skills demonstrated</h2><div class=\"tags\"><span class=\"tag\">Windows Admin Center</span><span class=\"tag\">WinRM</span><span class=\"tag\">PowerShell</span></div><a href=\"#skills\" data-route=\"skills\" class=\"\">View the complete capability map →</a></section><section class=\"content-block\" id=\"limitations\"><h2>Limitations & claim boundaries</h2><div class=\"note\">Personal lab management. Does not imply production WAC administration or enterprise-scale fleet management.</div></section><section class=\"content-block\" id=\"next\"><h2>Next milestones</h2><p>Revalidate only if the managed server inventory, gateway, authentication path, or remote-management topology materially changes.</p></section></article></div><section class=\"section\"><p class=\"eyebrow\">Continue exploring</p><h2>Related projects</h2><div class=\"grid grid-2\"><article class=\"project-card\" data-project data-category=\"Identity &amp; security\" data-search=\"windows laps &amp; advanced group policy encrypted local administrator passwords, scoped group policy, delegated readers, and positive and negative access tests. windows laps active directory group policy powershell\"><div class=\"card-head\"><span class=\"project-number\">PROJECT 01</span><span class=\"status\">COMPLETE</span></div><h3><a href=\"#projects/windows-laps-gpo\" data-route=\"projects/windows-laps-gpo\" class=\"\">Windows LAPS &amp; Advanced Group Policy</a></h3><p>Encrypted local administrator passwords, scoped Group Policy, delegated readers, and positive and negative access tests.</p><div class=\"tags\"><span class=\"tag\">Windows LAPS</span><span class=\"tag\">Active Directory</span><span class=\"tag\">Group Policy</span><span class=\"tag\">PowerShell</span></div><div class=\"card-footer\"><a href=\"#projects/windows-laps-gpo\" data-route=\"projects/windows-laps-gpo\" class=\"\">Read case study <span class=arrow>↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"text-link\">Evidence</a></div></article><article class=\"project-card\" data-project data-category=\"Infrastructure\" data-search=\"on-premises microsoft home lab a microsoft-centered infrastructure lab with documented directory services, virtualization, networking, and bounded recovery tests. proxmox windows server pfsense linux\"><div class=\"card-head\"><span class=\"project-number\">PROJECT 03</span><span class=\"status\">COMPLETE</span></div><h3><a href=\"#projects/on-prem-home-lab\" data-route=\"projects/on-prem-home-lab\" class=\"\">On-Premises Microsoft Home Lab</a></h3><p>A Microsoft-centered infrastructure lab with documented directory services, virtualization, networking, and bounded recovery tests.</p><div class=\"tags\"><span class=\"tag\">Proxmox</span><span class=\"tag\">Windows Server</span><span class=\"tag\">pfSense</span><span class=\"tag\">Linux</span></div><div class=\"card-footer\"><a href=\"#projects/on-prem-home-lab\" data-route=\"projects/on-prem-home-lab\" class=\"\">Read case study <span class=arrow>↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"text-link\">Evidence</a></div></article></div></section>",
    "active": "Projects"
  },
  "projects/scvmm-2022": {
    "title": "SCVMM 2022 Hyper-V Management",
    "description": "A managed nested Hyper-V host, VMM logical networking, and validated APP01 lifecycle operations.",
    "body": "<div class=\"page-heading\"><p class=\"eyebrow\">Project 05 / Virtualization</p><h1>SCVMM 2022 Hyper-V Management</h1><p class=\"lead\">A managed nested Hyper-V host, VMM logical networking, and validated APP01 lifecycle operations.</p><div class=\"tags\"><span class=\"status\">COMPLETE</span><span class=\"tag\">Validated lab work</span></div><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/tree/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub documentation <span aria-hidden=\"true\">↗</span></a><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original portfolio <span aria-hidden=\"true\">↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Evidence library</a></div></div><div class=\"case-layout\"><aside class=\"case-toc\"><p class=\"eyebrow\">Inside this case study</p><a href=\"#overview\" data-anchor=\"overview\">Overview</a><a href=\"#scenario\" data-anchor=\"scenario\">Operational scenario & objectives</a><a href=\"#environment\" data-anchor=\"environment\">Environment & technologies</a><a href=\"#architecture\" data-anchor=\"architecture\">Architecture</a><a href=\"#implementation\" data-anchor=\"implementation\">Implementation & administration</a><a href=\"#troubleshooting\" data-anchor=\"troubleshooting\">Troubleshooting</a><a href=\"#validation\" data-anchor=\"validation\">Validation & results</a><a href=\"#evidence\" data-anchor=\"evidence\">Evidence</a><a href=\"#skills\" data-anchor=\"skills\">Skills demonstrated</a><a href=\"#limitations\" data-anchor=\"limitations\">Limitations & claim boundaries</a><a href=\"#next\" data-anchor=\"next\">Next milestones</a></aside><article><section class=\"content-block\" id=\"overview\"><h2>Overview</h2><p>A managed nested Hyper-V host, VMM logical networking, and validated APP01 lifecycle operations.</p><p><strong>Classification:</strong> Validated lab work.</p></section><section class=\"content-block\" id=\"scenario\"><h2>Operational scenario & objectives</h2><p>Centralize Hyper-V management without replacing Proxmox; model the lab network, manage existing switches, and validate VM operations.</p></section><section class=\"content-block\" id=\"environment\"><h2>Environment & technologies</h2><p>VMM01 runs SCVMM 2022, managing HVHOST01 as one nested Hyper-V host and APP01 as an observed guest.</p><div class=\"tags\"><span class=\"tag\">SCVMM 2022</span><span class=\"tag\">Hyper-V</span><span class=\"tag\">Logical networking</span></div></section><section class=\"content-block\" id=\"architecture\"><h2>Architecture</h2><p>VMM01 runs SCVMM 2022, managing HVHOST01 as one nested Hyper-V host and APP01 as an observed guest.</p><div class=\"doc-grid\"></div><a href=\"#architecture\" data-route=\"architecture\" class=\"\">Explore infrastructure architecture →</a></section><section class=\"content-block\" id=\"implementation\"><h2>Implementation & administration</h2><div class=\"imported\"><div id=\"source-3022cf34-main\">\n<section aria-labelledby=\"source-3022cf34-scvmm-title\" class=\"page page-hero\"><div class=\"section-head reveal is-visible\"><p class=\"eyebrow kicker-line\">Windows Server · Virtualization management · Logical networking · Remote administration</p><h2 id=\"source-3022cf34-scvmm-title\">SCVMM 2022 management from server build to VMM-managed networking and VM operations.</h2><p class=\"lead\">Built a System Center Virtual Machine Manager environment on VMM01, added HVHOST01 as a managed Hyper-V host, repaired host-agent management credentials, modeled the 10.10.20.0/24 lab in VMM, converted the existing Hyper-V switch to a VMM logical switch, classified APP01 network traffic, and validated lifecycle operations without breaking the isolated lab path.</p><div class=\"actions\"><a class=\"button primary\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/index.html\" rel=\"noopener noreferrer\" target=\"_blank\">Review the networking update</a><a class=\"button\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/index.html\" rel=\"noopener noreferrer\" target=\"_blank\">Inspect screenshots</a><a class=\"button text-button\" data-route=\"projects/on-prem-home-lab\" href=\"#projects/on-prem-home-lab\">Return to the Home Lab</a></div></div></section>\n<section aria-labelledby=\"source-3022cf34-overview-title\" class=\"section\" id=\"source-3022cf34-overview\"><article class=\"project-panel flagship-project reveal\"><div><div class=\"project-card-head\"><span class=\"status-label validated\">Project 05 · COMPLETE · Validated in personal lab</span><span class=\"project-number\">VMM</span></div><h2 id=\"source-3022cf34-overview-title\">Centralize a nested Hyper-V environment without replacing Proxmox.</h2><p>The lab keeps Proxmox as the underlying platform while using VMM01 and SCVMM to manage the nested Hyper-V layer on HVHOST01. The work now covers installation, prerequisite remediation, service identity, host onboarding, Run As credentials, logical network and IP-pool modeling, logical-switch conversion, port classification, VM discovery, lifecycle control, checkpoint handling, interactive console use, and a deliberately scoped remote-management path.</p><div class=\"technology-tags\"><span>Windows Server 2022</span><span>SCVMM 2022</span><span>SQL Server 2022 Developer</span><span>Hyper-V</span><span>Logical Networks</span><span>Logical Switches</span><span>IP Pools</span><span>Run As Accounts</span><span>OpenVPN</span><span>PowerShell</span></div></div><dl class=\"project-facts\"><div><dt>Management server</dt><dd>VMM01 running the SCVMM management server and console.</dd></div><div><dt>Managed host</dt><dd>HVHOST01, a Windows Server 2022 nested Hyper-V host.</dd></div><div><dt>Managed workload</dt><dd>APP01, discovered from the existing Hyper-V inventory and managed through VMM.</dd></div><div><dt>Logical network</dt><dd><code>ad</code> mapped to 10.10.20.0/24 with VMM IP pool 10.10.20.201–10.10.20.220.</dd></div><div><dt>Boundary</dt><dd>Personal nonproduction lab; no clustering, high availability, live migration, or enterprise-scale claim.</dd></div></dl></article></section>\n<section aria-labelledby=\"source-3022cf34-path-title\" class=\"section\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Validated management path</p><h2 id=\"source-3022cf34-path-title\">The tested control chain stayed narrow and reviewable.</h2></div><div aria-label=\"SCVMM management path\" class=\"proof-chain reveal\"><span>Non-domain laptop</span><span>OpenVPN · 10.10.40.0/24</span><span>VMM01 · 10.10.20.100</span><span>HVHOST01 · 10.10.20.102</span><span>APP01 · 10.10.20.103</span></div></section>\n<section aria-labelledby=\"source-3022cf34-implementation-title\" class=\"section\" id=\"source-3022cf34-implementation\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Implementation and troubleshooting</p><h2 id=\"source-3022cf34-implementation-title\">Build, remediate, onboard, and verify.</h2></div><div class=\"project-supporting-grid reveal\">\n<article class=\"project-panel\"><span class=\"tile-code\">01</span><h3>Server and database foundation</h3><p>Prepared VMM01 on Windows Server 2022 and installed SQL Server 2022 Developer as the local database platform for the VMM management server.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">02</span><h3>ADK and WinPE prerequisites</h3><p>Installed Windows ADK Deployment Tools and the Windows PE add-on. When VMM could not locate the Component Studio libraries, verified that the DLLs existed under <code>WSIM\\amd64</code> and copied the WSIM architecture files into the root path expected by Setup.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">03</span><h3>Dedicated service identity</h3><p>Created <code>JFAD\\svc_scvmm</code>, configured the account for the lab service role, added it to VMM01's local Administrators group, and used it for the Virtual Machine Manager service.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">04</span><h3>SCVMM installation</h3><p>Installed both the SCVMM 2022 management server and VMM console, configured the local VMM database and library, retained standard service ports, and verified a successful console connection to VMM01.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">05</span><h3>Hyper-V host onboarding</h3><p>Added HVHOST01 as a trusted-domain Hyper-V host. The first agent deployment exposed an unreachable <code>ADMIN$</code> path; TCP 445 testing isolated the firewall block, File and Printer Sharing was enabled, and the retry completed with host status <strong>OK</strong>.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">06</span><h3>VM discovery and control</h3><p>SCVMM discovered APP01 on HVHOST01. Remote power-on completed successfully, guest information populated, and VM Viewer confirmed an interactive APP01 console session.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">07</span><h3>Laptop console over OpenVPN</h3><p>Installed only the VMM console MSI on the non-domain-joined laptop, connected to VMM01 with domain credentials through OpenVPN, and validated TCP 8100 access plus APP01 control and console viewing.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">08</span><h3>Temporary access cleanup</h3><p>Removed the temporary SCVMM installer SMB share, deleted the laptop's cached SMB connection, and removed the temporary OpenVPN TCP 445 rule. TCP 8100 remains as the scoped VMM console path.</p></article>\n</div></section>\n<section aria-labelledby=\"source-3022cf34-aug15-title\" class=\"section\" id=\"source-3022cf34-aug15-update\"><div class=\"section-head reveal\"><p class=\"eyebrow\">August 15, 2026 operational update</p><h2 id=\"source-3022cf34-aug15-title\">Extended the lab from host management into VMM logical networking and repeatable operations.</h2><p>This working session focused on correcting host-management health, bringing the existing Hyper-V network under VMM control, and exercising APP01 through the VMM abstraction layer while preserving the isolated 10.10.20.0/24 lab behind pfSense.</p></div><div class=\"project-supporting-grid reveal\">\n<article class=\"project-panel\"><span class=\"tile-code\">09</span><h3>Recovered VMM host-agent health</h3><p>HVHOST01 initially reported <strong>Needs Attention</strong> with VMM error 12704 even though <code>vmms</code> and <code>SCVMMAgent</code> were running and both server and agent were version 10.22.1287.0. WinRM tests passed. A VMM Run As account named <code>HVHOST01 Management</code> was created with the validated domain-management credential and assigned under Host Access. After refresh, host status, network, WinRM, agent service, and agent version all reported <strong>OK</strong>.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">10</span><h3>Modeled the isolated AD network</h3><p>Validated the VMM logical network <code>ad</code> and network site <code>AD-10.10.20.0-24</code> for subnet 10.10.20.0/24. The static VMM IP pool spans 10.10.20.201 through 10.10.20.220 and VMM reports the logical network as <strong>Fully compliant</strong>.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">11</span><h3>Resolved logical-switch conversion blockers</h3><p>The existing <code>External-LAN</code> standard switch could not convert while the VMM logical switch used a different minimum-bandwidth mode and uplink teaming mode. The Host management port profile weight was cleared, <code>HomeLab-Logical-Switch</code> was changed to <strong>Absolute</strong> bandwidth mode, and its uplink mode was changed to <strong>No Uplink Team</strong> to match the single-adapter standard switch.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">12</span><h3>Converted to a VMM logical switch</h3><p>Converted <code>External-LAN</code> into <code>HomeLab-Logical-Switch</code> using the <code>HomeLab-Uplink</code> uplink profile. VMM completed the host-change job successfully, Hyper-V reported the new external switch name, and the host management vNIC retained 10.10.20.102/24, gateway 10.10.20.1, and DNS 10.10.20.10.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">13</span><h3>Applied a VM traffic classification</h3><p>Adjusted the built-in Medium Bandwidth Adapter profile so it was compatible with the logical switch's Absolute bandwidth mode, mapped the <strong>Medium bandwidth</strong> classification into <code>HomeLab-Logical-Switch</code>, and assigned that classification to APP01's virtual network adapter.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">14</span><h3>Validated guest network and domain services</h3><p>APP01 remained connected to <code>HomeLab-Logical-Switch</code> with status <strong>Ok</strong>. Inside the guest, 10.10.20.103/24, gateway 10.10.20.1, and DNS 10.10.20.10 remained intact. Gateway ping succeeded, DC01 resolved to 10.10.20.10, and TCP 389 to the domain controller succeeded.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">15</span><h3>Exercised checkpoint lifecycle</h3><p>Created the VMM checkpoint <code>Pre-VMM-Lab-Changes</code> while APP01 remained running, verified the checkpoint in APP01 properties, then deleted it and confirmed the checkpoint list returned to empty.</p></article>\n<article class=\"project-panel\"><span class=\"tile-code\">16</span><h3>Protected resource headroom</h3><p>Measured HVHOST01 at four logical processors and about 8 GB RAM. APP01 Dynamic Memory was already configured with 2048 MB minimum, 4096 MB startup, and 6144 MB maximum; its active assignment had settled to 2 GB with memory status OK. No additional Windows VM was deployed so the nested host retained practical headroom.</p></article>\n</div></section>\n<section aria-labelledby=\"source-3022cf34-results-title\" class=\"section\" id=\"source-3022cf34-results\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Observed results</p><h2 id=\"source-3022cf34-results-title\">The management behaviors were exercised, not inferred.</h2></div><div class=\"lab-proof-detail reveal\">\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Host health</span><h3>HVHOST01 status OK</h3><p>Network, WinRM, Host Agent Service, Host Agent Version, and overall host health were returned to OK after assigning the Run As account.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Logical network</span><h3>10.10.20.0/24 fully compliant</h3><p>The <code>ad</code> logical network, network site, and 20-address VMM pool were recognized as fully compliant.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Logical switch</span><h3>External-LAN converted successfully</h3><p>HVHOST01 now exposes <code>HomeLab-Logical-Switch</code> as the external Hyper-V switch while preserving the existing host management IP path.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">VM networking</span><h3>APP01 classification and connectivity</h3><p>APP01 uses <code>HomeLab-Logical-Switch</code> with the Medium bandwidth classification and retained working gateway, DNS, and LDAP connectivity.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Lifecycle</span><h3>Checkpoint create and delete</h3><p>The VMM checkpoint workflow completed without stopping APP01, and cleanup returned the VM to a checkpoint-free state.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Scoped remote access</span><h3>OpenVPN management retained</h3><p>Remote administration continued through the lab VPN path rather than exposing the isolated 10.10.20.0/24 network directly to the home subnet.</p></article>\n</div></section>\n<section aria-labelledby=\"source-3022cf34-evidence-title\" class=\"section\" id=\"source-3022cf34-evidence-section\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Screenshot evidence</p><h2 id=\"source-3022cf34-evidence-title\">Preserved VMM screenshots anchor the management story.</h2><p>The gallery contains the previously imported SCVMM working-session screenshots. The August 15 update extends the same case study with the validated logical-network, logical-switch, host-health, APP01 classification, connectivity, and checkpoint work recorded during the VMM project session.</p></div><div class=\"evidence-gallery reveal\" id=\"source-3022cf34-evidence\">\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-setup-complete.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-setup-complete.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: SCVMM 2022 Setup Wizard showing successful installation of the VMM management server and VMM console</a></a><figcaption><strong>SCVMM installation completed</strong><span>Both the management server and console show successful status.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-hvhost01-managed.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-hvhost01-managed.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: SCVMM Fabric view showing HVHOST01 with host status OK and one virtual machine</a></a><figcaption><strong>HVHOST01 managed by SCVMM</strong><span>The Hyper-V host reports OK and its virtual-machine count is visible.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-discovered.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-discovered.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: SCVMM VMs and Services view showing stopped APP01 on HVHOST01</a></a><figcaption><strong>APP01 discovered</strong><span>The existing Hyper-V guest appears under HVHOST01 before remote start.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-remote-power.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-remote-power.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: SCVMM console showing APP01 running and the Start virtual machine job completed</a></a><figcaption><strong>Remote power control validated</strong><span>APP01 is running and the start job is 100 percent complete.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-vm-viewer.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-vm-viewer.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Virtual Machine Viewer connected to APP01 with PowerShell confirming the APP01 hostname</a></a><figcaption><strong>Interactive console validated</strong><span>VM Viewer is connected to APP01 on HVHOST01 and the guest hostname is confirmed.</span></figcaption></figure>\n</div><div class=\"inline-actions reveal\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/evidence-manifest.json\" rel=\"noopener noreferrer\" target=\"_blank\">Inspect screenshot hashes and provenance</a><a data-route=\"evidence\" href=\"#evidence\">Trace the public claim</a></div></section>\n<section aria-labelledby=\"source-3022cf34-limits-title\" class=\"section\" id=\"source-3022cf34-limits\"><div class=\"scope-note-card reveal\"><p class=\"eyebrow\">Scope and limitations</p><h2 id=\"source-3022cf34-limits-title\">A working management lab, not an enterprise VMM deployment.</h2><p>The evidence supports a single SCVMM 2022 management server, one managed nested Hyper-V host, one observed guest, a VMM logical network and IP pool, conversion of an existing external switch into a VMM logical switch, VM port classification, remote lifecycle control, checkpoint handling, VM Viewer access, and a scoped OpenVPN management path. It does not prove clustering, high availability, live migration, Storage Spaces Direct, enterprise scale, production availability, security assurance, or management of Proxmox guests through VMM.</p><div class=\"inline-actions\"><a data-route=\"skills\" href=\"#skills\">Review related capability</a><a data-route=\"projects\" href=\"#projects\">Return to Projects</a><a data-route=\"contact\" href=\"#contact\">Discuss role fit</a></div></div></section>\n</div></div><p>The original case-study narrative and linked evidence provide the detailed record for this project.</p></section><section class=\"content-block\" id=\"troubleshooting\"><h2>Troubleshooting</h2><p>The published case study records prerequisite remediation and repaired host-agent management credentials before validating host onboarding and VMM-managed networking.</p><div class=\"doc-grid\"></div></section><section class=\"content-block\" id=\"validation\"><h2>Validation & results</h2><p>One host and an observed guest were managed; logical networking, checkpoint lifecycle, remote power, and VM Viewer behavior are documented.</p><div class=\"doc-grid\"></div></section><section class=\"content-block\" id=\"evidence\"><h2>Evidence</h2><p>VERY STRONG — build, prerequisite remediation, host onboarding, logical networking, logical-switch conversion, VM operations, checkpoint lifecycle, remote console, and screenshots are documented.</p><div class=\"doc-grid\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-hvhost01-managed.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">scvmm-hvhost01-managed.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-setup-complete.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">scvmm-setup-complete.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-discovered.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">scvmm-app01-discovered.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-remote-power.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">scvmm-app01-remote-power.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/index.html\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">index.html<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/evidence-manifest.json\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">evidence-manifest.json<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/screenshots/scvmm-app01-vm-viewer.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">scvmm-app01-vm-viewer.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a></div><div class=\"source-links\"><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Browse and filter the complete evidence library</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/tree/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/scvmm-2022/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub project source <span aria-hidden=\"true\">↗</span></a></div></section><section class=\"content-block\" id=\"skills\"><h2>Skills demonstrated</h2><div class=\"tags\"><span class=\"tag\">SCVMM 2022</span><span class=\"tag\">Hyper-V</span><span class=\"tag\">Logical networking</span></div><a href=\"#skills\" data-route=\"skills\" class=\"\">View the complete capability map →</a></section><section class=\"content-block\" id=\"limitations\"><h2>Limitations & claim boundaries</h2><div class=\"note\">One SCVMM management server, one nested Hyper-V host, and observed APP01 operations in a personal lab. No clustering, HA, live migration, S2D, or enterprise-scale claim.</div></section><section class=\"content-block\" id=\"next\"><h2>Next milestones</h2><p>Maintenance-only unless VMM topology changes; optional future work must not be described as already implemented.</p></section></article></div><section class=\"section\"><p class=\"eyebrow\">Continue exploring</p><h2>Related projects</h2><div class=\"grid grid-2\"><article class=\"project-card\" data-project data-category=\"Virtualization\" data-search=\"app01 hyper-v storage expansion a scoped virtual-disk change with checkpoint handling, guest storage inspection, and final ntfs validation. hyper-v vhdx ntfs\"><div class=\"card-head\"><span class=\"project-number\">PROJECT 07</span><span class=\"status\">COMPLETE</span></div><h3><a href=\"#projects/app01-storage-expansion\" data-route=\"projects/app01-storage-expansion\" class=\"\">APP01 Hyper-V Storage Expansion</a></h3><p>A scoped virtual-disk change with checkpoint handling, guest storage inspection, and final NTFS validation.</p><div class=\"tags\"><span class=\"tag\">Hyper-V</span><span class=\"tag\">VHDX</span><span class=\"tag\">NTFS</span></div><div class=\"card-footer\"><a href=\"#projects/app01-storage-expansion\" data-route=\"projects/app01-storage-expansion\" class=\"\">Read case study <span class=arrow>↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"text-link\">Evidence</a></div></article></div></section>",
    "active": "Projects"
  },
  "projects/azure-arc-hybrid-management": {
    "title": "Azure Arc Hybrid Windows Management",
    "description": "Two Arc-connected Windows Server lab machines, agent validation, and one SQL Server Developer instance.",
    "body": "<div class=\"page-heading\"><p class=\"eyebrow\">Project 06 / Cloud administration</p><h1>Azure Arc Hybrid Windows Management</h1><p class=\"lead\">Two Arc-connected Windows Server lab machines, agent validation, and one SQL Server Developer instance.</p><div class=\"tags\"><span class=\"status\">COMPLETE</span><span class=\"tag\">Validated lab work</span></div><div class=\"source-links\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/tree/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub documentation <span aria-hidden=\"true\">↗</span></a><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">Original portfolio <span aria-hidden=\"true\">↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Evidence library</a></div></div><div class=\"case-layout\"><aside class=\"case-toc\"><p class=\"eyebrow\">Inside this case study</p><a href=\"#overview\" data-anchor=\"overview\">Overview</a><a href=\"#scenario\" data-anchor=\"scenario\">Operational scenario & objectives</a><a href=\"#environment\" data-anchor=\"environment\">Environment & technologies</a><a href=\"#architecture\" data-anchor=\"architecture\">Architecture</a><a href=\"#implementation\" data-anchor=\"implementation\">Implementation & administration</a><a href=\"#troubleshooting\" data-anchor=\"troubleshooting\">Troubleshooting</a><a href=\"#validation\" data-anchor=\"validation\">Validation & results</a><a href=\"#evidence\" data-anchor=\"evidence\">Evidence</a><a href=\"#skills\" data-anchor=\"skills\">Skills demonstrated</a><a href=\"#limitations\" data-anchor=\"limitations\">Limitations & claim boundaries</a><a href=\"#next\" data-anchor=\"next\">Next milestones</a></aside><article><section class=\"content-block\" id=\"overview\"><h2>Overview</h2><p>Two Arc-connected Windows Server lab machines, agent validation, and one SQL Server Developer instance.</p><p><strong>Classification:</strong> Validated lab work.</p></section><section class=\"content-block\" id=\"scenario\"><h2>Operational scenario & objectives</h2><p>Connect non-Azure lab servers to Azure Arc and verify the agent, service state, resource placement, and bounded SQL inventory.</p></section><section class=\"content-block\" id=\"environment\"><h2>Environment & technologies</h2><p>HVHOST01 and VMM01 in a personal hybrid Windows lab; the published evidence also covers one SQL Server 2022 Developer instance.</p><div class=\"tags\"><span class=\"tag\">Azure Arc</span><span class=\"tag\">Windows Server</span><span class=\"tag\">SQL Server</span></div></section><section class=\"content-block\" id=\"architecture\"><h2>Architecture</h2><p>HVHOST01 and VMM01 in a personal hybrid Windows lab; the published evidence also covers one SQL Server 2022 Developer instance.</p><div class=\"doc-grid\"></div><a href=\"#architecture\" data-route=\"architecture\" class=\"\">Explore infrastructure architecture →</a></section><section class=\"content-block\" id=\"implementation\"><h2>Implementation & administration</h2><div class=\"imported\"><div id=\"source-91e34e45-main\">\n<section aria-labelledby=\"source-91e34e45-arc-title\" class=\"page page-hero\"><div class=\"section-head reveal is-visible\"><p class=\"eyebrow kicker-line\">Hybrid management · Windows Server · SQL Server · Evidence-driven validation</p><h2 id=\"source-91e34e45-arc-title\">On-premises Windows and SQL Server resources connected to Azure Arc.</h2><p class=\"lead\">Onboarded HVHOST01 and VMM01 from a personal Proxmox/QEMU lab into a bounded Azure resource group, validated the Connected Machine agent, completed SQL Server discovery on VMM01, and verified the SQL extension, licensing choice, telemetry state, and current limitations with fresh evidence.</p><div class=\"actions\"><a class=\"button primary\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/index.html\" rel=\"noopener noreferrer\" target=\"_blank\">Review the verified state</a><a class=\"button\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/index.html\" rel=\"noopener noreferrer\" target=\"_blank\">Inspect screenshots</a><a class=\"button text-button\" data-route=\"projects/on-prem-home-lab\" href=\"#projects/on-prem-home-lab\">Return to the Home Lab</a></div></div></section>\n<section aria-labelledby=\"source-91e34e45-summary-title\" class=\"section\" id=\"source-91e34e45-summary\"><article class=\"project-panel flagship-project reveal\"><div><div class=\"project-card-head\"><span class=\"status-label validated\">Project 06 · COMPLETE · Validated in personal lab</span><span class=\"project-number\">ARC</span></div><h2 id=\"source-91e34e45-summary-title\">Executive summary</h2><p>The project extends an existing on-premises Windows management path into Azure without moving the workloads out of the lab. Proxmox remains the hypervisor, Windows Admin Center remains the local browser-based management point, and Azure Arc adds Azure resource representation, agent health, extension management, and SQL inventory for systems that continue to run on premises.</p><div class=\"technology-tags\"><span>Azure Arc</span><span>Azure portal</span><span>Windows Server 2022</span><span>SQL Server 2022 Developer</span><span>Windows Admin Center</span><span>Proxmox VE</span><span>PowerShell remoting</span><span>Connected Machine agent</span></div></div><dl class=\"project-facts\"><div><dt>Arc machines</dt><dd>HVHOST01 and VMM01.</dd></div><div><dt>SQL resource</dt><dd>VMM01, SQL Server 2022 Developer, connected mode.</dd></div><div><dt>Azure scope</dt><dd><code>rg-hybrid-lab-centralus-01</code> in Central US under the Azure for Students subscription.</dd></div><div><dt>Observed state</dt><dd>Freshly collected on 2026-08-31; see the manifest for integrity records.</dd></div><div><dt>Boundary</dt><dd>Personal nonproduction lab; no production, enterprise-scale, availability, or business-impact claim.</dd></div></dl></article></section>\n<section aria-labelledby=\"source-91e34e45-architecture-title\" class=\"section\" id=\"source-91e34e45-architecture\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Problem, objective, and architecture</p><h2 id=\"source-91e34e45-architecture-title\">Add cloud-based inventory and extension management while keeping the lab on premises.</h2><p>The objective was to represent two Windows Server systems and the VMM01 SQL instance in Azure, preserve the existing local management design, and make every public claim traceable to current evidence.</p></div><div aria-label=\"Hybrid management path\" class=\"proof-chain reveal\"><span>Proxmox/QEMU</span><span>HVHOST01 + VMM01</span><span>Windows Admin Center + PowerShell</span><span>Azure Connected Machine agent</span><span>Azure Arc resource group</span><span>Arc-enabled SQL Server</span></div><div class=\"project-supporting-grid reveal\">\n<article class=\"project-panel\"><h3>Role of Proxmox</h3><p>Proxmox supplies the QEMU virtualization layer. Both Arc-enabled Windows servers remain running as personal-lab virtual machines; Azure Arc does not replace or directly manage the hypervisor.</p></article>\n<article class=\"project-panel\"><h3>Role of Windows Admin Center</h3><p>Windows Admin Center provides the local connection inventory and Azure integration surface. Its connection list shows both HVHOST01 and VMM01 with Azure Arc status Connected.</p></article>\n<article class=\"project-panel\"><h3>Identity separation</h3><p>The Windows Admin Center gateway uses an on-premises Windows identity, while Azure integration uses a separate Azure identity. Public screenshots redact both account names and the email address while preserving the visible signed-in states.</p></article>\n<article class=\"project-panel\"><h3>Resource-group and RBAC boundary</h3><p>The collected resources are grouped under <code>rg-hybrid-lab-centralus-01</code>. The current evidence does not enumerate role assignments, so it supports resource-group scope but makes no claim about a specific Owner, Contributor, or custom Azure RBAC role.</p></article>\n</div></section>\n<section aria-labelledby=\"source-91e34e45-onboarding-title\" class=\"section\" id=\"source-91e34e45-onboarding\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Onboarding and troubleshooting</p><h2 id=\"source-91e34e45-onboarding-title\">Validate the missing agent, use the generated script, and verify the resulting Azure resource.</h2></div><div class=\"project-supporting-grid reveal\">\n<article class=\"project-panel\"><h3>1. Connectivity before installation</h3><p>The Windows Admin Center workflow initially appeared to stall while installing the Arc agent. Direct validation found that the Connected Machine agent executable was absent, while outbound TCP 443 connectivity to <code>gbl.his.arc.azure.com</code> succeeded.</p></article>\n<article class=\"project-panel\"><h3>2. Manual onboarding script</h3><p>The Azure-generated onboarding script was transferred to VMM01 and executed through the authorized PowerShell remoting path. The agent installed, authenticated, created the Azure resource, and reported Connected.</p></article>\n<article class=\"project-panel\"><h3>3. Agent and service validation</h3><p>Fresh direct validation on HVHOST01 confirmed agent version 1.67.03504.3207, Connected status, enabled agent auto-upgrade, successful TCP 443 reachability, and the <code>himds</code>, <code>ExtensionService</code>, and <code>GCArcService</code> services running with Automatic startup.</p></article>\n<article class=\"project-panel\"><h3>4. Current access limitation</h3><p>VMM01 answered WinRM but rejected the current Windows credential for a fresh remote session. Its local Arc and SQL services were not re-read directly during this collection; Azure portal and Windows Admin Center supplied the current connected, extension, SQL inventory, licensing, and telemetry evidence.</p></article>\n</div></section>\n<section aria-labelledby=\"source-91e34e45-sql-title\" class=\"section\" id=\"source-91e34e45-sql\"><div class=\"section-head reveal\"><p class=\"eyebrow\">SQL Server discovery and extension</p><h2 id=\"source-91e34e45-sql-title\">Move from a pending extension to a connected SQL inventory record.</h2></div><div class=\"project-supporting-grid reveal\">\n<article class=\"project-panel\"><h3>Initial extension state</h3><p>The SQL extension initially remained in Creating/ENABLING while the <code>SqlServerExtension</code> service was StartPending. Onboarding logs showed least-privilege configuration and local-group membership work still in progress.</p></article>\n<article class=\"project-panel\"><h3>Observed resolution</h3><p>The service later reached Running, the <code>WindowsAgent.SqlServer</code> extension reached Succeeded, SQL inventory appeared, and DPS upload status reached OK. The current portal evidence shows extension version 1.1.3518.465 with automatic upgrade enabled.</p></article>\n<article class=\"project-panel\"><h3>Licensing decision</h3><p>The Arc-enabled SQL resource reports SQL Server 2022 Developer edition. <strong>License only</strong> is selected instead of pay-as-you-go; Developer edition is not presented as production licensed.</p></article>\n<article class=\"project-panel\"><h3>Services not inferred</h3><p>Azure Monitor, Azure Backup, Update Manager, Defender, Site Recovery, automated SQL updates, and automatic SQL backups are not described as enabled. The SQL overview explicitly showed automated updates and automatic backups Disabled.</p></article>\n</div></section>\n<section aria-labelledby=\"source-91e34e45-verified-title\" class=\"section\" id=\"source-91e34e45-verified-state\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Verified final state</p><h2 id=\"source-91e34e45-verified-title\">Current results are separated from historical troubleshooting.</h2></div><div class=\"lab-proof-detail reveal\">\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Connected</span><h3>HVHOST01 Arc machine</h3><p>Azure portal and direct agent output both report Connected in Central US; the three Arc services were running and TCP 443 validation succeeded.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Connected</span><h3>VMM01 Arc machine</h3><p>Azure portal and Windows Admin Center report Connected. The portal shows Windows Server 2022 Standard Evaluation and agent version 1.67.03504.3207.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Succeeded</span><h3>WindowsAgent.SqlServer</h3><p>Version 1.1.3518.465 reports Succeeded, no update available, and automatic upgrade Enabled.</p></article>\n<article class=\"proof-chip verified\"><span class=\"chip-kind\">Connected · telemetry OK</span><h3>VMM01 SQL Server instance</h3><p>SQL Server 2022 Developer is inventoried in connected mode with License only, DPS OK, metrics OK, and Connected Machine agent status Connected.</p></article>\n</div><div class=\"inline-actions reveal\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence/azure-arc-validation-public.txt\" rel=\"noopener noreferrer\" target=\"_blank\">Open the sanitized validation output</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence/azure-arc-validation.ps1\" rel=\"noopener noreferrer\" target=\"_blank\">Review the public-safe PowerShell commands</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence-manifest.json\" rel=\"noopener noreferrer\" target=\"_blank\">Inspect hashes and provenance</a></div></section>\n<section aria-labelledby=\"source-91e34e45-security-title\" class=\"section\" id=\"source-91e34e45-security\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Security and privacy controls</p><h2 id=\"source-91e34e45-security-title\">Publish the evidence, not the identities or control-plane identifiers.</h2></div><div class=\"project-supporting-grid reveal\"><article class=\"project-panel\"><h3>Private originals</h3><p>Fresh raw captures were retained outside the public repository. Published PNG files are cropped derivatives with tenant IDs, subscription IDs, account names, email addresses, private IP addresses, and unnecessary interface data removed or redacted.</p></article><article class=\"project-panel\"><h3>No authentication material</h3><p>No passwords, MFA codes, device-login codes, tokens, cookies, private keys, connection strings, or raw authentication logs are published.</p></article><article class=\"project-panel\"><h3>Integrity records</h3><p>The evidence manifest records SHA-256 hashes, byte sizes, dimensions, source context, transformation notes, and the specific claim supported by every public screenshot.</p></article><article class=\"project-panel\"><h3>Least-claim posture</h3><p>Connected and Succeeded states are reported only where current evidence shows them. Unavailable direct VMM01 service validation remains a named limitation.</p></article></div></section>\n<section aria-labelledby=\"source-91e34e45-evidence-title\" class=\"section\" id=\"source-91e34e45-evidence-section\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Screenshot evidence</p><h2 id=\"source-91e34e45-evidence-title\">Fresh views from PowerShell, Proxmox, Windows Admin Center, and Azure.</h2><p>Each image is a cropped and redacted derivative of a newly captured authenticated view. Captions state exactly what the visible fields support.</p></div><div class=\"evidence-gallery reveal\" id=\"source-91e34e45-evidence\">\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/powershell-hvhost01-arc-services-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/powershell-hvhost01-arc-services-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized PowerShell console showing HVHOST01 Azure Connected Machine agent version and Connected status plus three Arc services running with Automatic startup</a></a><figcaption><strong>Direct HVHOST01 agent and service validation</strong><span>Shows agent version 1.67.03504.3207, Connected status, enabled auto-upgrade, and ExtensionService, GCArcService, and himds running with Automatic startup.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/proxmox-vmm01-summary-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/proxmox-vmm01-summary-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Proxmox VMM01 summary showing the virtual machine running with CPU, memory, disk, and utilization history</a></a><figcaption><strong>VMM01 running on Proxmox</strong><span>Confirms the on-premises QEMU workload remained running; private guest addresses are redacted.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/proxmox-hvhost01-summary-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/proxmox-hvhost01-summary-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Proxmox HVHOST01 summary showing the virtual machine running with CPU, memory, disk, and utilization history</a></a><figcaption><strong>HVHOST01 running on Proxmox</strong><span>Confirms the second on-premises QEMU workload remained running; private guest addresses are redacted.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/windows-admin-center-arc-connections-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/windows-admin-center-arc-connections-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Windows Admin Center connection list showing HVHOST01 and VMM01 with Azure Arc status Connected</a></a><figcaption><strong>Windows Admin Center Arc status</strong><span>HVHOST01 and VMM01 both show Connected; the local managing identity is redacted.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/windows-admin-center-azure-account-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/windows-admin-center-azure-account-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Windows Admin Center account settings showing separate Windows and Azure signed-in sections</a></a><figcaption><strong>Separate local and Azure identities</strong><span>Shows the two signed-in contexts while redacting both account names and the Azure email address.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/azure-resource-group-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/azure-resource-group-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Azure resource group view listing HVHOST01 and VMM01 Arc machines and the VMM01 SQL Server instance in Central US</a></a><figcaption><strong>Hybrid lab resource group</strong><span>Shows two Machine - Azure Arc resources and one SQL Server instance in Central US; the subscription ID is redacted.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/hvhost01-arc-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/hvhost01-arc-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Azure Arc HVHOST01 overview showing Connected status, Central US, agent version, Windows Server 2022 Evaluation, and QEMU</a></a><figcaption><strong>HVHOST01 Azure Arc overview</strong><span>Confirms Connected status, agent version 1.67.03504.3207, Windows Server 2022 Evaluation, and QEMU.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-arc-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-arc-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Azure Arc VMM01 overview showing Connected status, Central US, agent version, Windows Server 2022 Evaluation, and QEMU</a></a><figcaption><strong>VMM01 Azure Arc overview</strong><span>Confirms Connected status, agent version 1.67.03504.3207, Windows Server 2022 Evaluation, and SQL extension deployment enabled.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-extension-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-extension-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Azure Arc extensions view showing WindowsAgent.SqlServer version 1.1.3518.465 with Succeeded status and automatic upgrade enabled</a></a><figcaption><strong>SQL extension succeeded</strong><span>Shows the installed extension version, Succeeded status, no update available, and automatic upgrade Enabled.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-instance-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-instance-overview-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Sanitized Arc-enabled VMM01 SQL Server instance overview showing connected mode, SQL Server 2022 Developer edition, License only, and extension provisioning succeeded</a></a><figcaption><strong>Arc-enabled SQL Server inventory</strong><span>Shows SQL Server 2022 Developer, connected mode, License only, extension version 1.1.3518.465, and Succeeded provisioning.</span></figcaption></figure>\n<figure class=\"screenshot-card\"><a class=\"screenshot-preview\" href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-dps-status-public.png\" rel=\"noopener noreferrer\" target=\"_blank\"><a href=\"https://jeremyfontenot.online/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-dps-status-public.png\" rel=\"noopener noreferrer\" target=\"_blank\">Open original screenshot: Azure Arc SQL properties showing License only, extension provisioning Succeeded, automatic upgrade true, DPS status OK, metrics status OK, and agent Connected</a></a><figcaption><strong>SQL telemetry and agent state</strong><span>Shows DPS OK, metrics OK, automatic extension upgrade true, Connected Machine agent Connected, and automatic backups Disabled.</span></figcaption></figure>\n</div></section>\n<section aria-labelledby=\"source-91e34e45-skills-title\" class=\"section\" id=\"source-91e34e45-skills\"><div class=\"section-head reveal\"><p class=\"eyebrow\">Skills demonstrated</p><h2 id=\"source-91e34e45-skills-title\">Hybrid onboarding with operational boundaries and evidence integrity.</h2></div><div class=\"technology-tags reveal\"><span>Azure Arc onboarding</span><span>Azure resource groups</span><span>Connected Machine agent validation</span><span>Windows service validation</span><span>PowerShell remoting</span><span>Outbound connectivity testing</span><span>Windows Admin Center integration</span><span>SQL Server discovery</span><span>Azure extension troubleshooting</span><span>Log interpretation</span><span>License-scope documentation</span><span>Screenshot sanitization</span><span>Evidence manifests</span></div></section>\n<section aria-labelledby=\"source-91e34e45-limits-title\" class=\"section\" id=\"source-91e34e45-limits\"><div class=\"scope-note-card reveal\"><p class=\"eyebrow\">Limitations and next steps</p><h2 id=\"source-91e34e45-limits-title\">A verified hybrid-management lab, not a production Azure operations claim.</h2><p>The evidence supports two Arc-connected Windows Server lab machines, one Arc-enabled SQL Server 2022 Developer instance, current extension and telemetry states, and direct HVHOST01 agent/service validation. It does not prove production administration, enterprise scale, broad Azure RBAC ownership, high availability, disaster recovery, SLA performance, security assurance, or enabled Azure services beyond the fields shown. VMM01 local service state was not freshly read because the current Windows credential was rejected.</p><p>Practical next steps are to restore an approved VMM01 remoting path, repeat the local service and SQL checks, document the exact Azure RBAC assignment through a public-safe export, and evaluate optional Azure services separately before making any enablement claim.</p><div class=\"inline-actions\"><a data-route=\"skills\" href=\"#skills\">Review related capability</a><a data-route=\"evidence\" href=\"#evidence\">Trace the public claim</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/systems-skills/evidence-map.html\" rel=\"noopener noreferrer\" target=\"_blank\">Open the evidence map</a><a data-route=\"contact\" href=\"#contact\">Discuss role fit</a></div></div></section>\n</div></div><p>The original case-study narrative and linked evidence provide the detailed record for this project.</p></section><section class=\"content-block\" id=\"troubleshooting\"><h2>Troubleshooting</h2><p>The evidence preserves a direct-remoting limitation for VMM01. Portal and agent observations are reported within their actual scope; local service state is not inferred where it was not read.</p><div class=\"doc-grid\"></div></section><section class=\"content-block\" id=\"validation\"><h2>Validation & results</h2><p>Two connected Windows lab servers and one SQL Developer instance are supported by sanitized retained records, with remoting and administrative boundaries intact.</p><div class=\"doc-grid\"></div></section><section class=\"content-block\" id=\"evidence\"><h2>Evidence</h2><p>VERY STRONG — portal state, Connected Machine agent validation, Windows services, SQL extension/inventory, sanitized screenshots, manifest/integrity records, and explicit limitations are documented.</p><div class=\"doc-grid\"><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-arc-overview-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">vmm01-arc-overview-public.png<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence/azure-arc-validation.ps1\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">azure-arc-validation.ps1<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/powershell-hvhost01-arc-services-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">powershell-hvhost01-arc-services-public.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence-manifest.json\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">evidence-manifest.json<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/evidence/azure-arc-validation-public.txt\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">azure-arc-validation-public.txt<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/hvhost01-arc-overview-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">hvhost01-arc-overview-public.png<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-extension-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">vmm01-sql-extension-public.png<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/vmm01-sql-dps-status-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">vmm01-sql-dps-status-public.png<small>Reviewed server roles, services, storage, event summaries, directory indicators, DNS, DHCP, and Group Policy.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/proxmox-vmm01-summary-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">proxmox-vmm01-summary-public.png<small>Reviewed node, VM, storage, bridge, VLAN, guest-agent, snapshot, backup, and lifecycle state.</small> <span aria-hidden=\"true\">↗</span></a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/blob/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/screenshots/azure-resource-group-public.png\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">azure-resource-group-public.png<small>Maintained a documented nonproduction environment spanning virtualization, firewalling, Windows, Linux, networking, and backup services.</small> <span aria-hidden=\"true\">↗</span></a></div><div class=\"source-links\"><a href=\"#evidence\" data-route=\"evidence\" class=\"\">Browse and filter the complete evidence library</a><a href=\"https://github.com/fontenotjeremy71-hub/jeremyfontenot/tree/5c130c816cd22a70f734b2c2ee6d6480732b1dc2/evidence-library/projects/on-prem-home-lab/azure-arc-hybrid-management/\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"\">GitHub project source <span aria-hidden=\"true\">↗</span></a></div></section><section class=\"content-block\" id=\"skills\"><h2>Skills demonstrated</h2><div class=\"tags\"><span class=\"tag\">Azure Arc</span><span class=\"tag\">Windows Server</span><span class=\"tag\">SQL Server</span></div><a href=\"#skills\" data-route=\"skills\" class=\"\">View the complete capability map →</a></section><section class=\"content-block\" id=\"limitations\"><h2>Limitations & claim boundaries</h2><div class=\"note\">Supports two Arc-connected Windows Server lab machines and one SQL Server 2022 Developer instance. Does not prove production Azure administration, broad RBAC ownership, HA/DR, SLA performance, or enablement of Azure services not explicitly shown.</div></section><section class=\"content-block\" id=\"next\"><h2>Next milestones</h2><p>Restore an approved VMM01 remoting path and optionally re-read local Arc/SQL services and document exact Azure RBAC if those claims are later desired.</p></section></article></div><section class=\"section\"><p class=\"eyebrow\">Continue exploring</p><h2>Related projects</h2><div class=\"grid grid-2\"><article class=\"project-card\" data-project data-category=\"Infrastructure\" data-search=\"on-premises microsoft home lab a microsoft-centered infrastructure lab with documented directory services, virtualization, networking, and bounded recovery tests. proxmox windows server pfsense linux\"><div class=\"card-head\"><span class=\"project-number\">PROJECT 03</span><span class=\"status\">COMPLETE</span></div><h3><a href=\"#projects/on-prem-home-lab\" data-route=\"projects/on-prem-home-lab\" class=\"\">On-Premises Microsoft Home Lab</a></h3><p>A Microsoft-centered infrastructure lab with documented directory services, virtualization, networking, and bounded recovery tests.</p><div class=\"tags\"><span class=\"tag\">Proxmox</span><span class=\"tag\">Windows Server</span><span class=\"tag\">pfSense</span><span class=\"tag\">Linux</span></div><div class=\"card-footer\"><a href=\"#projects/on-prem-home-lab\" data-route=\"projects/on-prem-home-lab\" class=\"\">Read case study <span class=arrow>↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"text-link\">Evidence</a></div></article><article class=\"project-card\" data-project data-category=\"Cloud administration\" data-search=\"microsoft 365 messaging &amp; security administration mailbox delegation, message delivery, defender review, conditional access remediation, and bounded licensing evidence. exchange online defender conditional access\"><div class=\"card-head\"><span class=\"project-number\">PROJECT 10</span><span class=\"status\">COMPLETE</span></div><h3><a href=\"#projects/m365-messaging-security\" data-route=\"projects/m365-messaging-security\" class=\"\">Microsoft 365 Messaging &amp; Security Administration</a></h3><p>Mailbox delegation, message delivery, Defender review, Conditional Access remediation, and bounded licensing evidence.</p><div class=\"tags\"><span class=\"tag\">Exchange Online</span><span class=\"tag\">Defender</span><span class=\"tag\">Conditional Access</span></div><div class=\"card-footer\"><a href=\"#projects/m365-messaging-security\" data-route=\"projects/m365-messaging-security\" class=\"\">Read case study <span class=arrow>↗</span></a><a href=\"#evidence\" data-route=\"evidence\" class=\"text-link\">Evidence</a></div></article></div></section>",
    "active": "Projects"
  }
}
