Create a WSUS HTML Dashboard with PowerShell and IIS
Create WSUS HTML – This guide explains how to create a WSUS HTML dashboard with PowerShell, automate report generation with Windows Task Scheduler, publish the dashboard through IIS, and troubleshoot common access or static content issues.
Script
Create WSUS HTML – This script generates a one-page WSUS HTML dashboard (groups, KB status & errors). Source: report.ps1 on GitHub.

Prepare Folders
Create WSUS HTML – Create the following directories: C:exploit and C:exploitreport. Then copy report.ps1 into C:exploit.

Run Manually (first test)
# 64-bit PowerShell recommended on the WSUS server
C:WindowsSystem32WindowsPowerShellv1.0powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:exploitreport.ps1
Create WSUS HTML – After the first run, verify the output file exists: C:exploitreportdefault.htm.
Schedule Task
Create WSUS HTML – Create a Scheduled Task to refresh the dashboard automatically (hourly in labs; daily or every few hours in production). Run as SYSTEM with highest privileges.
schtasks /Create /TN "WSUS HTML Report" ^
/TR "C:WindowsSystem32WindowsPowerShellv1.0powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:exploitreport.ps1" ^
/SC HOURLY /RU "SYSTEM" /RL HIGHEST /F

Share the Dashboard (IIS)
Create WSUS HTML – In IIS on the WSUS server, create a virtual directory (e.g., report) pointing to C:exploitreport. Ensure Static Content is enabled.

Create WSUS HTML – Optionally, create a second virtual directory (e.g., script) targeting C:exploitscript if you expose helper files.

View the Report
Create WSUS HTML – Browse to http://localhost/report (or your server name). The dashboard should load instantly.

Notes & Troubleshooting
- Run as Administrator on the WSUS server; use the 64-bit PowerShell path shown above.
- Module requirement:
Install-Module PSWriteHTML -Scope CurrentUser. If the server is offline, remove-Onlinein the script. - WSUS API must be available: either the
UpdateServicesmodule or%ProgramFiles%Update ServicesToolsMicrosoft.UpdateServices.Administration.dll. - If the page is blank via IIS, check NTFS permissions on
C:exploitreport(read for IIS AppPool identity) and MIME types for.js/.css.
