SSL Expiration Scanner

Utility script for Windows environments. PowerShell-first, RC:U approved.

📅 August 20, 2025 🏷️ powershell, SSL, certificates

Summary

Utility script for Windows environments. PowerShell-first, RC:U approved.

Requirements

  • OS/Role: Windows with required features for the script’s commands

Parameters

NameTypeMandatoryDefaultNotes
ComputerNameString[]False
PortInt32[]False443
InputFileStringFalse
WarningDaysInt32False30
TimeoutSecInt32False7
ThrottleInt32False64
OutputCsvStringFalse
OutputJsonStringFalse
InlineNamesString[]False
DefaultPortsInt32[]False
PathStringFalse
HostStringFalse
PortInt32False
SniHostStringFalse
TimeoutSecInt32False
WarningDaysInt32False
sObjectFalse
certObjectFalse
chainObjectFalse
errorsObjectFalse

Examples

.\Get-TlsExpiry.ps1 -ComputerName contoso.com,api.contoso.com -WarningDays 15
'web01','10.1.2.3:8443' | .\Get-TlsExpiry.ps1 -Port 443,8443 -OutputCsv .\tls_expiry.csv
.\Get-TlsExpiry.ps1 -InputFile .\targets.csv -Throttle 100 -TimeoutSec 5

Output

  • Format: CSV

Sample:

<small sample omitted; depends on runtime>

How it works

Aggregates and summarizes data; Writes results to CSV.

Risks & Notes

  • Performance counters may vary by OS build or role.
  • High-frequency scheduling can skew short-interval readings.
  • Run elevated if counters return zeros or access is denied.

Changelog

  • 2025-08-20 - v1.0.0 - Initial page generation