| acme-client | |
|---|---|
| Original author | Kristaps Dzonsons: AUTHORS |
| Developer | The OpenBSD Project |
| Release | May 12, 2016 |
| Written in | C |
| Operating system | OpenBSD |
| Standard | RFC 8555 |
| License | ISC |
| Website | kristaps |
| Repository | |
acme-client, originally letskencrypt, is a utility implementing the Automatic Certificate Management Environment protocol to allow Internet servers to retrieve certificates for their domain names, primarily to serve websites over HTTPS.: DESCRIPTION Originally written as a separate project, it was absorbed into and has been maintained as part of the OpenBSD base system.
The initial Git commit to acme-client was made on May 12, 2016, by Kristaps Dzonsons. It was initially named letskencrypt, referencing the popular certificate authority Let's Encrypt. A portable variant of the project was created by Dzonsons on May 18, 2016. The project remained unstable until version 0.1.3 released on May 20, 2016.
With the release of version 0.1.11 on August 31, 2016, the project was renamed to acme-client and imported into the OpenBSD source tree. Dzonsons continued to maintain the project on GitHub, occasionally upstreaming patches from OpenBSD. The project's GitHub repository and portable variant were formally discontinued on December 1, 2018. It continues to be maintained by Dzonsons and other OpenBSD developers in the OpenBSD CVS repository.
acme-client must be configured in /etc/acme-client.conf to operate. An example configuration file is present at /etc/examples/acme-client.conf. The format of this configuration file follows typical OpenBSD conventions and is documented in acme-client.conf(5). Any certificate authority can be targeted if configured correctly. The validity of the configuration file can be tested by executing acme-client -n.
In addition to implementing the ACME protocol to fetch, renew, and revoke X.509 certificates, the utility properly stores and secures these certificates automatically. Automatic renewal of certificates are done via cron.
Since acme-client is part of the base OpenBSD system, it is designed to work alongside OpenBSD's httpd implementation nearly effortlessly. Various examples of this type of configuration are present in /etc/examples/acme-client.conf and /etc/examples/httpd.conf and their manual pages. Other web servers from ports, such as nginx and Apache, can be configured to work with acme-client.