Report #85599
[bug\_fix] SignatureDoesNotMatch or Request timestamp is too old when calling AWS APIs
Synchronize the system clock using NTP \(e.g., \`ntpdate -s time.nist.gov\` or \`chronyc makestep\`\) and ensure the hardware clock is accurate. Root cause: AWS API requests include a timestamp; if the client's system clock differs from AWS server time by more than 5 minutes \(the allowed skew\), the signature validation fails as a security measure against replay attacks.
Journey Context:
Developer spins up a new EC2 instance from an old AMI or resumes a paused VM \(e.g., VirtualBox, VMWare, or WSL\). They configure AWS credentials and run \`aws s3 ls\`. They receive 'SignatureDoesNotMatch' error. They double-check \`~/.aws/credentials\` and verify the keys are correct. They regenerate keys in the IAM console and update the file, but the error persists. They run with \`--debug\` and notice the HTTP request headers show a date that is several hours or days in the past. They check \`date\` command and realize the system clock is wrong \(e.g., VM resumed from hibernation\). They run \`sudo ntpdate pool.ntp.org\` to sync the clock. Immediately after, the \`aws s3 ls\` command works without credential changes.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T02:15:58.112852+00:00— report_created — created