Proyecto

General

Perfil

451 antoniojas
# Script: dhcp-server-denegar
# Autor: Antonio J. Abasolo Sierra
# Fecha: Diciembre-2012


Este script se encarga de regenerar el fichero de configuración de isc-dhcp-server, situado en /etc/dhcp/dhcpd.conf

A groso modo, hace lo siguiente:

- Se crean dos ficheros en la ruta de dicho servicio, que son:
* /etc/dhcp/hosts.accept --> lista blanca de equipos conocidos a los que no será cortado su acceso.
Formato: MAC,Nombre
00:1c:b3:c4:fe:13,Ponente

* /etc/dhcp/hosts.denny --> lista negra de equipos a los que les cortaremos el acceso
Formato: MAC,Nombre
00:1c:b3:c4:fe:13,InglesP1

- Se crea el fichero 'pcs.leases' (en ruta de ejecución del script),
con las mac's del fichero /var/lib/dhcp/dhcpd.leases --> Solo estarán las MAC's de equipos
que no esten dados de alta en LDAP, y que no tengan puesta ip fija (manualmente).
Formato: MAC,IP,Nombre
00:1c:b3:c4:fe:13,172.23.23.5,InglesP1

- El script regenere el fichero /etc/dhcp/dhcp.conf, con
las líneas básicas de ldap (almacenadas previamente en el fichero /etc/dhcp/dhcpd.conf.base,
y las denegaciones de mac's del fichero de lista-negra-macs: /etc/dhcp/hosts.deny

- El fichero de lista-negra-macs se obtiene del quitarle al fichero pcs.leases, las mac's del fichero de lista-blanca
* /etc/dhcp/hosts.deny = (pcs.leases - /etc/dhcp/hosts.accept)

- Se reinicia el servicio correspondiente:
* /etc/init.d/isc-dhcp-server stop
* /etc/init.d/isc-dhcp-server start

- Pones un cron (crontab) en el servidor NFS para que ejecute dicho
script cada X tiempo, por ej. cada 5 min.

*****
Posibles Mejoras:
- Permitir añadir ip's manualmente al fichero de lista-negra-macs
- Limpiar el fichero /var/lib/dhcp/dhcpd.leases