1. Lynis – Auditoría de seguridad
Objetivo: Realizar auditorías de seguridad automáticas y enviar un informe con hallazgos críticos.
#!/bin/bash
# Auditoría semanal con Lynis
# Ejecutar Lynis con el perfil de auditoría predeterminado
lynis audit system --profile /etc/lynis/profiles/default.prf > /var/log/lynis_audit.log
# Filtrar hallazgos críticos y enviar por correo
grep "CRITICAL" /var/log/lynis_audit.log | mail -s "Informe de Auditoría Crítica - Lynis" user@example.com
2. OpenSCAP – Comparación de configuraciones de seguridad
Objetivo: Comparar configuraciones con un perfil de seguridad y generar un informe.
#!/bin/bash
# Comparar configuración con perfil de OpenSCAP
# Ejecutar OpenSCAP con el perfil de seguridad
oscap oval eval --profile xccdf_org.ssgproject.content_rule_ssh_pam --results /var/log/openscap_results.xml /usr/share/xml/scap/ssg/content/ssg-centos7-ds.xml
# Generar informe en HTML
oscap xccdf generate report /var/log/openscap_results.xml > /var/www/html/openscap_report.html
3. Chkrootkit – Detección de rootkits
Objetivo: Realizar escaneos diarios para detectar rootkits y alertar si hay amenazas.
#!/bin/bash
# Escanear rootkits con Chkrootkit
chkrootkit > /var/log/chkrootkit.log
# Si se encuentra algo, enviar un correo
if grep -i "possible" /var/log/chkrootkit.log; then
mail -s "Alerta de Rootkit Detectado" user@example.com < /var/log/chkrootkit.log
fi
4. Rkhunter – Escaneo de rootkits
Objetivo: Ejecutar escaneos nocturnos de rootkits y actualizar su base de datos.
#!/bin/bash
# Escaneo de rootkits con Rkhunter
rkhunter --update
rkhunter --check --skiptables
# Enviar reporte si se encuentra algo
if grep -i "Warning" /var/log/rkhunter.log; then
mail -s "Alerta de Rootkit con Rkhunter" user@example.com < /var/log/rkhunter.log
fi
5. Tiger – Verificación post-actualización
Objetivo: Detectar nuevas vulnerabilidades o configuraciones inseguras tras una actualización.
#!/bin/bash
# Verificación post-actualización con Tiger
tiger --check all > /var/log/tiger_report.log
# Enviar alertas si se detecta algo sospechoso
if grep -i "security" /var/log/tiger_report.log; then
mail -s "Alerta de Seguridad Post-Actualización" user@example.com < /var/log/tiger_report.log
fi
6. Auditd – Monitoreo de eventos de seguridad
Objetivo: Registrar y alertar sobre eventos de seguridad en tiempo real.
#!/bin/bash
# Monitorizar eventos con Auditd
auditctl -w /etc/passwd -p wa -k passwd_changes
ausearch -k passwd_changes > /var/log/auditd_passwd_changes.log
# Enviar alerta si se detectan cambios
if grep "type=SYSCALL" /var/log/auditd_passwd_changes.log; then
mail -s "Alerta de Cambio en /etc/passwd" user@example.com < /var/log/auditd_passwd_changes.log
fi
7. AIDE – Comparación de integridad del sistema
Objetivo: Verificar la integridad del sistema comparando con la última base de datos.
#!/bin/bash
# Comprobar integridad del sistema con AIDE
aide --check > /var/log/aide_check.log
# Enviar informe si se detectan cambios
if grep -i "Violation" /var/log/aide_check.log; then
mail -s "Alerta de Violación de Integridad" user@example.com < /var/log/aide_check.log
fi
8. Fail2Ban – Monitoreo de logs y bloqueos
Objetivo: Revisar logs de intentos de intrusión y generar alertas.
#!/bin/bash
# Revisión de logs de Fail2Ban
fail2ban-client status > /var/log/fail2ban_status.log
# Enviar alerta si se detectan intentos de intrusión bloqueados
if grep "banned" /var/log/fail2ban_status.log; then
mail -s "Alerta de Intrusión Bloqueada" user@example.com < /var/log/fail2ban_status.log
fi