|
#!/bin/bash
|
|
|
|
#Añade un equipo (impresora, switch, etc) que tendra IP Fija al directorio LDAP, sin añadirlo a ningún
|
|
#grupo de Netgroups.
|
|
#Basado en el script addworkstation.sh de Ricardo Salgado Cid (IESO Galisteo)
|
|
#Alfonso Pastor. IES Virgen de Guadalupe.
|
|
|
|
if [ $# -ne 3 ]; then
|
|
echo "Uso: $0 hostname ip mac"
|
|
exit
|
|
fi
|
|
|
|
|
|
dominio=`hostname -d`
|
|
host=$1
|
|
ip=$2
|
|
ip1=`echo $2 | cut -d"." -f1`
|
|
ip2=`echo $2 | cut -d"." -f2`
|
|
ip3=`echo $2 | cut -d"." -f3`
|
|
ip4=`echo $2 | cut -d"." -f4`
|
|
mac=`echo $3 |tr '[:lower:]' '[:upper:]'`
|
|
|
|
FICHERO=$host.$dominio.ldif
|
|
if [ -e $FICHERO ]; then
|
|
rm $FICHERO
|
|
fi
|
|
|
|
echo "
|
|
dn: dc=$ip4,dc=$ip3,dc=$ip2,dc=$ip1,dc=in-addr,dc=arpa,ou=hosts,dc=instituto,dc=extremadura,dc=es
|
|
changetype: add
|
|
objectclass: dnsdomain2
|
|
objectclass: domainrelatedobject
|
|
dc: $ip4
|
|
associateddomain: $ip4.$ip3.$ip2.$ip1.in-addr.arpa
|
|
PTRRecord: $host.$dominio
|
|
|
|
dn: dc=$host,dc=$dominio,ou=hosts,dc=instituto,dc=extremadura,dc=es
|
|
changetype: add
|
|
objectclass: dnsdomain2
|
|
objectclass: domainrelatedobject
|
|
dc: $host
|
|
associateddomain: $host.$dominio
|
|
ARecord: $ip
|
|
|
|
dn: cn=$host,cn=group1,cn=INTERNAL,cn=DHCP Config,dc=instituto,dc=extremadura,dc=es
|
|
changetype: add
|
|
cn: $host
|
|
objectClass: top
|
|
objectClass: dhcpHost
|
|
dhcpHWAddress: ethernet $mac
|
|
dhcpStatements: fixed-address $host
|
|
" > $FICHERO
|
|
|
|
echo "Añadiendo $host.$dominio a ldap con ip=$ip y mac=$mac"
|
|
|
|
ldapadd -c -x -h ldap -W -D "cn=admin,ou=People,dc=instituto,dc=extremadura,dc=es" -f $FICHERO
|
|
|