25 lines
502 B
Bash
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
|