Skip to content

Instantly share code, notes, and snippets.

@mat813
Created June 15, 2011 14:05
Show Gist options
  • Save mat813/1027173 to your computer and use it in GitHub Desktop.
Save mat813/1027173 to your computer and use it in GitHub Desktop.
Rollover zones with OpenDNSSEC
#!/bin/sh
if [ -z $1 ]
then
echo "$0 zones"
exit 1
fi
for zone in $@
do
echo '########################################################################'
echo "#### $zone"
echo '########################################################################'
tmpfile=`mktemp -t rollover`
# Show active key
ods-ksmutil key export -z $zone -t KSK -e active 2>/dev/null
# Show ready keys in DNSKEY and DS form.
ods-ksmutil key export -z $zone -t KSK -e ready 2>/dev/null | tee $tmpfile
echo
ods-ksmutil key export -z $zone -d -t KSK -e ready 2>/dev/null | awk '!/^;/ && !/^$/'
echo
key=`awk '/IN DNSKEY/ {print $11}' $tmpfile`
rm -f $tmpfile
# Get the actual DS and/or DLV records.
echo 'DS'
dig +trace +noall +answer ds $zone. | awk '!/^;/ && !/^$/'
echo 'DLV'
dig +noall +answer dlv $zone.dlv.isc.org. @dlv.ord.sns-pb.isc.org
read -p "Finish rollover for $zone with $key ? [y/n] : " yes
case $yes in
[yY])
echo
ods-ksmutil key ds-seen -z $zone -x $key
echo
esac
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment