ref: af63e6ae23039e482e2f29b728583a840feb1d0d
dir: /acmed.ms/
This guide provides a quick setup for requesting a TLS certificate with acmed. First, we generate our private key: cpu% ramfs -p cpu% cd /tmp cpu% auth/rsagen -t 'service=acme role=sign hash=sha256 acct=username@example.com' > username@example.com.key Next, we generate the public key, formatted as a JSON Web Key: cpu% auth/rsa2jwk username@example.com.key > /sys/lib/tls/acmed/username@example.com.pub We store our private key into secstore, then factotum: cpu% auth/secstore -g factotum secstore password: cpu% cat username@example.com.key >> factotum cpu% auth/secstore -v -p factotum secstore password: cpu% read -m factotum > /mnt/factotum/ctl We next generate a private key for the host, and set the proper file permissions, and copy it into /sys/lib/tls/acmed/: cpu% auth/rsagen -t 'service=tls owner=*' > example.com.key cpu% chmod 600 username@example.com.key example.com.key cpu% cp username@example.com.key example.com.key /sys/lib/tls/acmed/ We generate a certificate signing request, then create the .well-known/acme-challenge directory, then pass the CSR to acmed: cpu% auth/rsa2csr 'CN=example.com' /sys/lib/tls/acmed/example.com.key >/sys/lib/tls/acmed/example.com.csr cpu% mkdir -p /usr/$user/www/example.com/.well-known/acme-challenge cpu% webfs; auth/acmed -t http -o /usr/$user/www/example.com/.well-known/acme-challenge username@example.com /sys/lib/tls/acmed/example.com.csr >/sys/lib/tls/acmed/example.com.crt If all went well, you should find the certificate in /sys/lib/tls/acmed/example.com.crt