$ account certbot
Certbot is a production-grade Python CLI tool and library for automating TLS certificate lifecycle management via the ACME protocol (RFC 8555). It obtains, renews, revokes, and deploys certificates from Let's Encrypt and other ACME-compliant CAs. The project uses a plugin-based architecture with authenticators (HTTP-01, DNS-01, standalone) and installers (Apache, Nginx, webroot) that are discovered via Python entry points. Key internal modules handle certificate lineage storage, renewal scheduling with ARI (draft-ietf-acme-ari), configuration rollback, and cross-platform OS compatibility. The repository also includes a reusable ACME protocol library (`acme`), extensive unit and integration tests (Pebble-based), and packaging for snaps, Docker, and pip. While highly polished and actively maintained, the codebase contains some deprecated shims and complex parser implementations for Apache and Nginx.