# To automate the request and renewal of lets encrypt certificates, please follow these steps: # # 1) install "dehydrated" for your platform, either using your packet manager, or from GitHub: # wget https://github.com/lukas2511/dehydrated/archive/master.zip # 2) enter the dehydrated directory: cd dehydrated (pakets may install into /etc/dehydrated) # 3) mkdir -p hooks/joker # 4) copy the file "hook.sh" into hooks/joker: cp hook.sh hooks/joker # 5) copy the file "config.sh" into hooks/joker: cp config.sh hooks/joker # 6) edit the file hooks/joker/config.sh: enter your Joker.com DynDNS credentials (please also see https://joker.com/sf/letsencrypt) # and your domain(s); you may simply replace the sample data with yours # 7) edit "domains.txt" in the dehydrated directory, and enter the domains and perhaps your alternate names (hostnames) there, as usual with dehydrated # 8) do not forget to first issue a "dehydrated --register --accept-terms" to enable Letsencrypt for you # 9) then run dehydrated: dehydrated -c -t dns-01 -k 'hooks/joker/hook.sh' # Certs will be put into certs/; you may put this into your weekly cron... # # If something goes wrong regarding "challenge type" or "hook script", you may try to modify the original dehydrated config file in the dehydrated directory: # - set CHALLENGETYPE="dns-01" and "HOOK="${BASEDIR}/hooks/joker/hook.sh" # # If multiple challenges have to be solved for the same hostname, you have to add the following line to the original dehydrated config file in the dehydrated directory: # HOOK_CHAIN="yes" # # Please note: The script is waiting 30 seconds before testing the "challenge" value, to make sure that the nameservers registered the change case ${1} in *".example.com" | "example.com") USERNAME="YOUR-DYNDNS-USER" PASSWORD="YOUR-DYNDNS-PASSWORD" ZONE="example.com" ;; *".example.net" | "example.net") USERNAME="YOUR-DYNDNS-USER" PASSWORD="YOUR-DYNDNS-PASSWORD" ZONE="example.net" ;; esac