Table of Contents
letsencrypt Plugin
Compatible with DokuWiki
No compatibility info given!
This extension is marked as obsoleted. Therefore it is hidden in the Extension Manager and the extension listing. Furthermore, it is candidate for removal.
This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.
This plugin allows to to request Let's Encrypt SSL certificates for the domains your wiki or wiki farm is reachable under. This makes most sense for wiki farms where you don't want to buy an expensive wildcard certificate.
Note since wildcard certificates are available via letsencrypt now, there is no need to bother with this plugin anymore. SSL setup and certifcate renewal belongs to the web server setup, not in DokuWiki.
Installation
Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.
Configuration
Directories
After installing you should configure the documentroot
and certificatedir
options in the Configuration Manager.
Domains
When using the Farmer Plugin, the plugin should be able to detect all your domains automatically (that's kinda the point). However you can adjust the list of domains by creating a file named conf/letsencrypt-domains.conf
. You can list additional domains (one per line) here. You can also explicitly exclude some domains from being autodetected by prefixing them with an exclamation mark.
Important: all these domains have to be served from the same webroot or verification will fail. Eg. this is for aliases of your wiki or farm animals only.
Webserver Setup
Refer to your webserver documentation on how to enable TLS using the generated certificate after using the plugin (see below).
Usage
Initial Registration
Once the setup is done, visit the Let's Encrypt Certificate
link in your admin interface. It will prompt you to create a new Let's Encrypt account and let you request the initial certificates.
Automatic Updates
When the initial registration step is done and your webserver is set up to use the certificate, you should automate the renewal of your certificate.
Currently there's only a commandline script called cli.php
to do so. You should set up a daily cronjob for it.
$ ./cli.php -h USAGE: cli.php <OPTIONS> This is a command line interface to the letsencrypt plugin. It allows renewing certificates from cron jobs etc. When run without any options, it lists all domains and their certificate status OPTIONS -u, --update Update the certificates -f, --force Force a certificate update even when none is needed -r <command>, Run this command when the certificate has been --run-on-update updated <command> -q, --quiet Do not print anything except fatal errors (and whatever the run-on-update program outputs) --no-colors Do not use any colors in output. Useful when piping output to other tools or files. -h, --help Display this help screen and exit immeadiately.