#!/usr/bin/env sh # Update DNS via nsupdate with "-y" option # Based on dns_nsupdate.sh, which used with "-k" option # # Author: Vadim Kalinnikov ######## Public functions ##################### #Usage: dns_nsupdatey_add _acme-challenge.www.domain.com "XKrxpRBosdIKFzxW_CT3KLZNf6q0HG9i01zxXp5CPBs" dns_nsupdatey_add() { fulldomain=$1 txtvalue=$2 NSUPDATE_Y_SERVER="${NSUPDATE_Y_SERVER:-$(_readaccountconf_mutable NSUPDATE_Y_SERVER)}" NSUPDATE_Y_SERVER_PORT="${NSUPDATE_Y_SERVER_PORT:-$(_readaccountconf_mutable NSUPDATE_Y_SERVER_PORT)}" NSUPDATE_Y_KEY="${NSUPDATE_Y_KEY:-$(_readaccountconf_mutable NSUPDATEY_KEY)}" NSUPDATE_Y_ZONE="${NSUPDATE_Y_ZONE:-$(_readaccountconf_mutable NSUPDATE_Y_ZONE)}" _checkKeyParam || return 1 # save the dns server and key to the account conf file. _saveaccountconf_mutable NSUPDATE_Y_SERVER "${NSUPDATE_Y_SERVER}" _saveaccountconf_mutable NSUPDATE_Y_SERVER_PORT "${NSUPDATE_Y_SERVER_PORT}" _saveaccountconf_mutable NSUPDATE_Y_KEY "${NSUPDATE_Y_KEY}" _saveaccountconf_mutable NSUPDATE_Y_ZONE "${NSUPDATE_Y_ZONE}" [ -n "${NSUPDATE_Y_SERVER}" ] || NSUPDATE_Y_SERVER="localhost" [ -n "${NSUPDATE_Y_SERVER_PORT}" ] || NSUPDATE_Y_SERVER_PORT=53 _info "adding ${fulldomain}. 60 in txt \"${txtvalue}\"" [ -n "$DEBUG" ] && [ "$DEBUG" -ge "$DEBUG_LEVEL_1" ] && nsdebug="-d" [ -n "$DEBUG" ] && [ "$DEBUG" -ge "$DEBUG_LEVEL_2" ] && nsdebug="-D" if [ -z "${NSUPDATE_Y_ZONE}" ]; then nsupdate -y "${NSUPDATE_Y_KEY}" $nsdebug <