Ara amb el servidor LDAP, el milor seria tindre uns 3 Scripts per automatitzar tasques que siguin molt repetitives o que en aquest procés d'automatització ens estalviïn temps i ens donin les dades que volem.
Explicació dels Scripts
Han sigut un total de 3, cadascun amb un propòsit diferent però tots a la mateixa carpeta /home/scripts/ldap/
1 – ldap-control.sh: Gestiona l’estat del servei (inici, aturada, reinici).
2 – ldap-show.sh: Mostra tots els registres de la base de dades actual.
3 – ldap-upgrade.sh: Actualitza els binaris del servei des dels repositoris i recarrega la configuració.
Codi: ldap-control.sh
#!/bin/bash
# Uso: ./ldap-control.sh [start|stop|restart|status]ACTION=$1
case $ACTION in
start|stop|restart|status)
echo “Ejecutando $ACTION para OpenLDAP…”
sudo systemctl $ACTION slapd
;;
*)
echo “Uso: $0 {start|stop|restart|status}”
exit 1
;;
esac
Codi: ldap-show.sh
#!/bin/bash
# Muestra todos los registros de la base de datos LDAP# Configura aquí tus datos base
BASE_DN=”dc=ejemplo,dc=com”echo “Consultando registros en $BASE_DN…”
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b “$BASE_DN” “(objectClass=*)”
Codi: ldap-upgrade.sh
#!/bin/bash
echo “— Iniciando mantenimiento de OpenLDAP —“
# [1/3] Actualización de paquetes
echo “[1/3] Buscando actualizaciones de slapd…”
sudo apt-get update
sudo apt-get install -y slapd ldap-utils# [2/3] Recargando configuración (daemon-reload para Systemd)
echo “[2/3] Recargando configuración del sistema…”
sudo systemctl daemon-reload# [3/3] Reiniciando servicio
echo “[3/3] Reiniciando el servicio para aplicar cambios…”
sudo systemctl restart slapdecho “¡Exito! LDAP está actualizado y funcionando.”
Com afegir els scripts
Primerament, creem l’arxiu i li col·loquem l’extensió .sh, com podem veure a continuació:
vim ldap-control.sh
Dins col·loquem el codi prèviament mostrat i guardem amb:
:wq
Finalment, li donem permisos d’execució:
chmod +x ./ldap-control.sh
I el podem executar simplement posant el seu nom
./ldap-control.sh
Els scripts en funcionament
Aquí podem veure com funciona el primer script, quan escrivim un “status” al costat ens mostra com si d’un “systemctl status ldap” es tracti.
./ldap-control.sh [start|stop|restart|status]
El segon script ens mostra la base de dades que nosaltres definim, en aquest cas, aquesta que emmagatzema els grups, ou i usuaris. Podem afegir un ” | grep [termini] ” per filtrar els resultats.
./ldap-show.sh
Finalment, el tercer script actualitza totalment els serveis del servidor “slapd” i “ldap-utils” quan s’executa.
./ldap-upgrade.sh