dnssec-killkey
changeset 12 5786a8b53c78
parent 10 d7977be97fa1
child 13 4844031fc55e
--- a/dnssec-killkey	Wed Jul 14 12:05:41 2010 +0200
+++ b/dnssec-killkey	Wed Jul 14 15:37:27 2010 +0200
@@ -1,17 +1,19 @@
 #!/bin/bash
 
-ZONE_DIR="/etc/bind/master"	# ordner fuer die einzelnen zonedateiordner
-ABL_ZEIT=1440			# zeit in minuten waehrend der 2 keys verwendet werden / ungefaehr doppelte TTL 
+source dnstools.conf
 
-cd $ZONE_DIR
-for DOMAIN in *
+master_dir=$MASTER_DIR		# ordner fuer die einzelnen zonedateiordner
+ablauf_zeit=$ABL_ZEIT		# zeit in minuten waehrend der 2 keys verwendet werden / ungefaehr doppelte TTL 
+
+cd $master_dir
+for domain in *
 do
 
-	if ( find $ZONE_DIR/$DOMAIN -name "index*" -mmin +$ABL_ZEIT >/dev/null )	# prueft die schluesselindexdateien
+	if ( find $master_dir/$domain -name "index*" -mmin +$ablauf_zeit >/dev/null )	# prueft die schluesselindexdateien
 	then										# auf zeitpunkt der aenderung
 
-		cd $ZONE_DIR/$DOMAIN
-		INDEX_FILE=`find . -name "index*" -mmin +$ABL_ZEIT`		# schreibt eine liste INDEX_FILE aller
+		cd $master_dir/$domain
+		INDEX_FILE=`find . -name ".index*" -mmin +$ablauf_zeit`		# schreibt eine liste INDEX_FILE aller
 										# dateien die vor ABL_ZEIT erstellt worden
 		for INDEX in $INDEX_FILE
 		do
@@ -19,22 +21,24 @@
 			if ( wc -l $INDEX | grep ^2 > /dev/null )	# prueft die indexdatei auf anzahl an eintraegen
 			then						
 				INDEX=${INDEX#./}			
-				echo aktualisiert $INDEX in $DOMAIN
+				echo aktualisiert $INDEX in $domain
 				
-				DNS_KEY=`tail -n1 $INDEX` 		# speichert den letzten eintrag aus dem
+				DNS_KEY=`tail -n1 $INDEX`		# speichert den letzten eintrag aus dem
 									# index in die variable DNS_KEY
 			
-				echo $DNS_KEY > $ZONE_DIR/$DOMAIN/$INDEX	# schreibt nur die variable
+				echo $DNS_KEY > $master_dir/$domain/$INDEX	# schreibt nur die variable
 										# DNS_KEY in die indexdatei
 	
 				rm $(ls K*[key,private] | grep -v "`cat .index.zsk`" | \
 				grep -v "`cat .index.ksk`") 2> /dev/null		# loesche alle schluessel die nicht in der indexdatei
 										# stehen
-				mv $DOMAIN $DOMAIN.old
-				grep -v 'DNSKEY' $DOMAIN.old >> $DOMAIN		# erzeugt ein backup und entfernt alle schluessel
+				mv $domain .$domain
+				grep -v 'DNSKEY' .$domain >> $domain		# erzeugt ein backup und entfernt alle schluessel
 										# aus der zonedatei
-				cat K$DOMAIN.*key >>$DOMAIN			# schreibt die aktuellen schluessel in die zonedatei
-				dnssec-signzone $DOMAIN
+				cat K$domain.*key >>$domain			# schreibt die aktuellen schluessel in die zonedatei
+
+				key_counter=`< keycounter`
+				dnssec-signzone $domain && echo $[ key_counter + 1 ] > keycounter
 			fi