Un Lynis audit en Linux es un control automatizado que analiza el sistema operativo, los servicios activos y las configuraciones para encontrar puntos débiles y misconfiguraciones. Se ejecuta en pocos minutos y devuelve un hardening index con las acciones correctivas para aplicar de inmediato.
Cuando tuve que asegurar 80 VM para una organización sanitaria pública, el riesgo más grande no eran las vulnerabilidades zero-day. Eran las configuraciones dejadas por defecto. El 65% de las violaciones explota misconfiguraciones de la infraestructura, no fallos en el software (IBM Cost of a Data Breach 2025). Comprobar manualmente SSH, firewall, permisos y kernel en cada máquina requiere horas. Lynis transforma este proceso en una operación repetible y rápida, dándote una métrica clara: el hardening index. En esta guía veremos cómo instalarlo, interpretar los resultados y resolver los problemas más comunes para cumplir con estándares como NIS2 art.21.
Requisitos Previos para tu Lynis Audit Linux
Necesitas una máquina Linux con acceso root. He probado este procedimiento en Ubuntu 22.04 y 24.04 LTS, pero Lynis soporta las principales distribuciones. Se requieren 50 MB de espacio en disco para los logs. No necesita agentes ni demonios en segundo plano. Se ejecuta y termina.
Instalar Lynis y Ejecutar el Primer Audit
Lynis está en los repositorios oficiales. Para instalarlo en Ubuntu o Debian, el comando es directo.
sudo apt install lynis
lynis show version
Si la versión del repositorio no está actualizada, descarga la última release desde el GitHub oficial o el sitio CISOfy. Para producción, la versión del repositorio sirve para empezar, pero vigila las actualizaciones. Lanza el primer audit completo. Este comando ejecuta más de 300 tests sobre el OS, kernel, servicios de red, filesystem, autenticación y firewall.
sudo lynis audit system
El output fluye en el terminal mostrando resultados en tiempo real. Al final verás un resumen con el hardening index, un puntaje de 0 a 100 que indica el nivel de seguridad del servidor. Un puntaje bajo 70 requiere intervención inmediata. Si tienes poco tiempo, usa la modalidad rápida.
sudo lynis audit system --quick
La exploración rápida salta algunos tests profundos sobre filesystem y logs, pero te da una instantánea del estado de seguridad en menos de dos minutos.
Interpretar el Reporte y Resolver los WARNING Principales
El output de Lynis divide los resultados en tres categorías. Los WARNING indican problemas críticos de seguridad. Requieren acción inmediata. Un ejemplo clásico es la ausencia de un malware scanner o el permiso de login root vía SSH. Las SUGGESTION son recomendaciones para mejorar la configuración. No son críticas, pero reducen la superficie de ataque. El hardening index es el puntaje final. No es un simple voto. Es un indicador de tu exposición al riesgo. Las organizaciones que monitorean y mejoran este índice reducen el tiempo de remediation un 40% tras un incidente (Ponemon Institute 2025). Para ver solo los WARNING tras una exploración, usa el comando dedicado.
sudo lynis show warnings
Tras ejecutar cientos de audits en servidores Linux, estos son los problemas que encuentro casi siempre:
- Kernel desactualizado o reboot pendiente (KRNL-5820)
- Login root vía SSH habilitado (SSH-7408)
- Firewall activo pero sin políticas restrictivas (FIRE-4512)
- Ningún malware scanner instalado (MALW-3280)
- Permisos demasiado laxos en archivos sensibles como /etc/shadow (FILE-6410)
- Password aging no configurado (AUTH-9228)
- NTP no sincronizado o no configurado (TIME-3120)
- Servicios de red innecesarios en escucha (NETW-3200)
- Bootloader sin contraseña (BOOT-5122)
- Ningún accounting para los procesos de usuario (ACCT-9626)
Estos problemas crean el camino más corto para un ataque. Un atacante prueba el acceso SSH con root, explota un kernel vulnerable para obtener privilegios, o lee archivos sensibles si los permisos son incorrectos. Para cada WARNING, Lynis te proporciona un código de test único. No tienes que adivinar la solución. Usa el comando show details seguido del código para obtener la explicación del problema y la corrección sugerida.
sudo lynis show details KRNL-5820
Este comando te muestra exactamente qué parámetro está fuera de norma, el riesgo asociado y el archivo de configuración a modificar. Para el WARNING KRNL-5820, el problema es casi siempre un kernel actualizado que requiere reinicio. La solución es planificar un reboot. Para el WARNING SSH-7408, Lynis sugiere establecer PermitRootLogin no en el archivo /etc/ssh/sshd_config y reiniciar el servicio SSH. Tras aplicar las correcciones, relanza el audit para verificar que el WARNING haya desaparecido y el hardening index haya aumentado.
Automatizar Lynis y Monitorizar con SIEM
Comprobar la seguridad una vez al año no sirve de nada. Las configuraciones cambian, se instalan servicios, se aplican parches. Necesitas monitorización continua. Automatiza Lynis con cron.
0 3 * * 0 lynis audit system > /var/log/lynis_$(date +\%Y\%m\%d).log
Esta línea en crontab lanza una exploración completa cada domingo a las 03:00. Guarda el output en un archivo con fecha en /var/log. Para recibir el reporte por email, concatena un comando mail o usa mutt para enviar el output al buzón del SOC o del equipo IT.
Los logs separados por fecha te permiten comparar el hardening index a lo largo del tiempo. Si tras un mes de trabajo el índice ha bajado de 82 a 74, sabes que alguien ha introducido misconfiguraciones. Usa un script bash para extraer el índice de los logs y trazar la tendencia, o integra los logs de Lynis en tu SIEM para generar alertas automáticas si el puntaje baja de un umbral crítico. Esto es fundamental para mantener el cumplimiento normativo de estándares como ISO 27001:2022 o NIST CSF 2.0.
Errores Comunes y Resolución de Problemas
El error más frecuente es lanzar Lynis sin privilegios de root. La herramienta funciona, pero salta más del 50% de los tests que requieren acceso a archivos de sistema protegidos. Usa siempre sudo. Otro problema es la versión obsoleta en los repositorios. Si Lynis no detecta un test específico que sabes que debería estar, comprueba la versión y actualízala desde el canal oficial.
Si el output parece bloquearse en un test de red, podría ser un timeout causado por un firewall externo. Usa el flag –quick para saltar los tests de red lentos o verifica las reglas del firewall local.
Recuerda que Lynis es una herramienta de solo lectura. Analiza configuraciones, comprueba permisos y verifica servicios sin realizar ninguna modificación en el sistema. Eres tú quien debe aplicar las correcciones sugeridas en el reporte. Para mejorar el hardening index rápidamente, concéntrate en los WARNING antes que en las SUGGESTION. Resolver el acceso root SSH, actualizar el kernel y ajustar los permisos en archivos sensibles te hace ganar de 10 a 15 puntos en pocas horas. En entornos con muchos servidores, Lynis debe instalarse en cada máquina que quieras probar. No tiene arquitectura cliente-servidor en su versión gratuita. Automatiza la instalación y ejecución vía Ansible para escalar el hardening de forma eficiente.
Conclusiones con Puntos Clave Operativos
Un servidor Linux dejado con la configuración por defecto es una puerta abierta. Lynis te da el mapa para cerrar las brechas. No se limita a señalar el problema, te proporciona el comando exacto o el archivo a modificar. Los tres pasos operativos para hoy: instala Lynis, lanza el primer audit y resuelve los WARNING. Planifica la automatización con cron para no perder el control en los meses siguientes y mantiene la integración con tu SIEM activa.
Lee también: Hardening SSH en Linux: Guía Completa 2026
Para la documentación oficial y la lista completa de tests, consulta el manual en https://docs.lynis.com/.