Skip to content

Instantly share code, notes, and snippets.

@Bouhnosaure
Last active November 22, 2015 02:15
Show Gist options
  • Save Bouhnosaure/753e801a64427784f12f to your computer and use it in GitHub Desktop.
Save Bouhnosaure/753e801a64427784f12f to your computer and use it in GitHub Desktop.
#!/bin/bash
SAMBATOOL=/usr/local/samba/bin/samba-tool
USER=admin
PASSWORD="PASSWORD"
HOST="DNS-SERV.TEST.LOCAL"
DOMAIN="TEST.LOCAL"
PS3='Que voulez vous faire : '
options=("Ajouter un enregistrement DNS" "Supprimer un enregistrement DNS" "Voir la liste des enregistrements DNS" "Créer une zone DNS" "Supprimer une zone DNS" "Quitter")
select opt in "${options[@]}"
do
case $opt in
"Ajouter un enregistrement DNS")
echo "Entrez le nom de domaine du serveur :"
read NAME
if [ -z $NAME ]; then
echo "La chaine de caractère est vide"
exit 0
fi
echo "Entrez l'adresse IP du serveur :"
read IP
if [[ $IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
IFS='.' read ADDR1 ADDR2 ADDR3 ADDR4 <<<$IP
else
echo "Mauvaise IP"
exit 0
fi
ZONE=$ADDR3.$ADDR2.$ADDR1.in-addr.arpa
$SAMBATOOL dns add $HOST $DOMAIN $NAME A $IP -U$USER --password=$PASSWORD
$SAMBATOOL dns add $HOST $ZONE $ADDR4 PTR $NAME.$DOMAIN -U$USER --password=$PASSWORD
exit 0
;;
"Supprimer un enregistrement DNS")
echo "Entrez le nom de domaine du serveur :"
read NAME
if [ -z $NAME ]; then
echo "La chaine de caractère est vide"
exit 0
fi
echo "Entrez l'adresse IP du serveur :"
read IP
if [[ $IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
IFS='.' read ADDR1 ADDR2 ADDR3 ADDR4 <<<$IP
else
echo "Mauvaise IP"
exit 0
fi
ZONE=$ADDR3.$ADDR2.$ADDR1.in-addr.arpa
$SAMBATOOL dns delete $HOST $DOMAIN $NAME A $IP -U$USER --password=$PASSWORD
$SAMBATOOL dns delete $HOST $ZONE $ADDR4 PTR $NAME.$DOMAIN -U$USER --password=$PASSWORD
exit 0
;;
"Voir la liste des enregistrements DNS")
$SAMBATOOL dns query $HOST $DOMAIN @ ALL -U$USER --password=$PASSWORD
exit 0
;;
"Créer une zone DNS")
echo "Entrez l'adresse IP (eg 1.2.3.4 cela créera la zone 3.2.1.in-addr.arpa.) :"
read IP
if [[ $IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
IFS='.' read ADDR1 ADDR2 ADDR3 ADDR4 <<<$IP
else
echo "Mauvaise IP"
exit 0
fi
ZONE=$ADDR3.$ADDR2.$ADDR1.in-addr.arpa
$SAMBATOOL dns zonecreate $HOST $ZONE -U$USER --password=$PASSWORD
exit 0
;;
"Supprimer une zone DNS")
echo "Entrez l'adresse IP (eg 1.2.3.4 cela créera la zone 3.2.1.in-addr.arpa.) :"
read IP
if [[ $IP =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
IFS='.' read ADDR1 ADDR2 ADDR3 ADDR4 <<<$IP
else
echo "Mauvaise IP"
exit 0
fi
ZONE=$ADDR3.$ADDR2.$ADDR1.in-addr.arpa
$SAMBATOOL dns zonedelete $HOST $ZONE -U$USER --password=$PASSWORD
exit 0
;;
"Quitter")
break
;;
*) echo invalid option;;
esac
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment