Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- if [ $USER != "root" ]; then
- echo "Error, not running as root"
- exit; # Shell invoker (PHP script) does su to root
- fi;
- DOMAIN=$1
- IP=$2
- # Separated by :
- NAMESERVERS=$3
- EXISTS=`grep "${DOMAIN}" /etc/named.conf`
- if [ "${EXISTS}" = "1" ]; then
- echo -e "\n\
- zone \"${DOMAIN}\" { \n\
- type master;\n\
- file \"${DOMAIN}.zone\";\n\
- };\n" >> /etc/named.conf;
- fi;
- echo -e "\
- \$ORIGIN ${DOMAIN}\n\
- \$TTL 86400\n\
- @ IN SOA ns1.${DOMAIN}. hostmaster.${DOMAIN}. (\n\
- 2001062501 ; serial\n\
- 21600 ; refresh after 6 hours\n\
- 3600 ; retry after 1 hour\n\
- 604800 ; expire after 1 week\n\
- 86400 ) ; minimum TTL of 1 day\n" > /var/named/data/${DOMAIN}.zone
- arr=$(echo $NAMESERVERS | tr ":" "\n")
- for x in $arr
- do
- NSNAME=`echo $x |awk -F '/' '{print $1}'`
- NNSNAME=`basename "${NSNAME}" ".${DOMAIN}"`
- NSIP=`echo $x |awk -F '/' '{print $2}'`
- echo -e " IN NS ${NSNAME}.\n" >> /var/named/data/${DOMAIN}.zone
- done;
- echo -e " IN A ${IP}\n" >> /var/named/data/${DOMAIN}.zone
- echo -e "* IN A ${IP}\n" >> /var/named/data/${DOMAIN}.zone
- arr=$(echo $NAMESERVERS | tr ":" "\n")
- for x in $arr
- do
- NSNAME=`echo $x |awk -F '/' '{print $1}'`
- NNSNAME=`basename "${NSNAME}" ".${DOMAIN}"`
- NSIP=`echo $x |awk -F '/' '{print $2}'`
- # echo $NNSNAME; exit
- echo -e "${NNSNAME} IN A ${NSIP}\n" >> /var/named/data/${DOMAIN}.zone
- # echo $x;
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement