#! /bin/sh # This source code is released into the public domain. . /usr/local/share/lfacme/init.sh . /usr/local/share/lfacme/dnsutils.sh # begin, done or failed ACTION=$1 # ACME method, must be dns-01. METHOD=$2 # This is the full domain name we're authorising. DOMAIN=$3 # Token name, not used for dns-01. TOKEN=$4 # The token value we need to create. AUTH=$5 if [ "$#" -ne 5 ]; then _fatal "missing arguments" fi if [ "$METHOD" != "dns-01" ]; then exit 1 fi if [ -z "$ACME_KERBEROS_KEYTAB" ]; then ACME_KERBEROS_KEYTAB="/etc/krb5.keytab" fi if ! kinit -k -t "$ACME_KERBEROS_KEYTAB" "$ACME_KERBEROS_PRINCIPAL"; then _fatal "failed to obtain a Kerberos ticket" fi # Add a new record using nsupdate. _add_record() { local domain="$1" local auth="$2" nsupdate -g <