boulder
boulder copied to clipboard
Ensure service clocks stay in sync
We are subject to several requirements regarding the time, including but not limited to:
- notBefore must be within 48 hours of the time of signing; and
- validations cannot be used more than 398 days after they're acquired.
We plan to use our deployment/task-management infrastructure to ensure that our system clocks are synchronized when we deploy services. As an extra check, our Boulder services should gossip their current time to each other, and refuse to honor gRPC requests if the clock skew is too great (e.g. > 10 minutes). This will ensure that a service which comes up with a skewed clock does not get included in our critical paths.
For posterity, https://github.com/letsencrypt/boulder/pull/7678 is related, but we decided not to pursue that path.