A lightweight ACME protocol client written in the D computer language
To use this package, run the following command in your project's root directory:
Lightweight ACME Client written in the D computer language
This project is yet another Let's Encrypt client. It has the following properties.
- The main artifact is a D static library.
- Functionality only supports creating and updating certificates using http challenges.
- All code runs 'in process', i.e., no processes are spawned.
Building and Installing
Building requires dub, openssl and curl. On Debian based systems this will install them.
apt-get install dub libssl-dev libcurl4-gnutls-dev
On Red Hat based systems this will do it.
yum install dub openssl-devel curl-devel
To build and install run:
To run against the Let's Encrypt staging environment generate your makefiles with this.
dub build -c acme-staging
Let's Encrypt Credentials
To use any Let's Encrypt client you need to sign requests with your Let's Encrypt's account's private key. This library uses a private key in PEM format. If you want to use an existing Let's Encrypt private key, it's in JWK format. The acme-tiny library has good documentation on how to convert it.
openssl genrsa -out key.pem 2048
Command Line Client
The command line client is run as follows.
acme_lw_d <filename of account private key> <domain name> ...
Multiple domain names can be on the command line.
The behavior is similar to the official Let's Encrypt client run as follows:
certbot certonly --manual -d <domain name>
All methods report errors by throwing std.exception, which will normally be an instance of acme.AcmeException.
Split code into a library package and an optional CLI client, which uses the library package.
- Registered by Carsten Schlote
- 0.0.0 released a year ago
- Copyright © 2019, Carsten Schlote