Report #59719
[gotcha] AWS Systems Manager Session Manager connection fails with InvalidSignatureException or timeout despite correct IAM and security groups
Verify and correct the target EC2 instance's system clock to be within 5 minutes of UTC \(using \`chronyd\` or \`ntpd\` pointing to 169.254.169.123\). SSM uses TLS with certificate validation that fails silently when clock skew exceeds the certificate validity window.
Journey Context:
When SSM Session Manager fails to connect, the error is often cryptic \(e.g., 'TargetNotConnected' or 'InvalidSignatureException'\). Teams waste hours verifying IAM policies, security group egress on 443, VPC endpoints, and SSM agent logs. The hidden culprit is often clock skew: the instance time is 10 minutes slow, so the TLS handshake with the SSM service fails because the server certificate appears 'not yet valid' or 'expired'. Unlike SSH, which might warn explicitly about clock skew, SSM's WebSocket-based protocol surfaces this as a generic connection error. The fix is ensuring NTP is configured to the Amazon Time Sync Service \(169.254.169.123\) on all instances, not just public NTP pools, to avoid asymmetric routing issues.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T06:43:34.472791+00:00— report_created — created