nsd/files/signzone

25 lines
502 B
Bash

#!/bin/sh
DOMAIN="$1"
EXPIRATION_DATE="$2"
if [ -z "$DOMAIN" ]; then
echo "Domain name must be defined" 1>&2
exit 1
fi
if [ -n "$EXPIRATION_DATE" ]; then
arg="-e${EXPIRATION_DATE}"
fi
cd /etc/nsd/zones || exit 1
echo "Signing zone for ${DOMAIN}"
ldns-signzone -n -p ${arg} -s "$(head /dev/urandom | tr -dc A-Za-z0-9 | sha1sum | head -c 30)" \
-f "${DOMAIN}.zone.signed" "${DOMAIN}.zone" "K${DOMAIN}.zsk" "K${DOMAIN}.ksk"
chown nsd:nsd "${DOMAIN}.zone.signed"
updatezone "$DOMAIN"
exit 0