Qué hace este módulo #
Un rootkit es software malicioso diseñado para colarse en tu servidor y esconderse: reemplaza comandos del sistema, abre puertas traseras y borra sus propias huellas para que no lo veas. El problema es justo ese — cuando funciona bien, no se nota. Por eso conviene revisar el sistema con regularidad.
El módulo rkhunter se apoya en rkhunter (Rootkit Hunter) para hacer ese trabajo por ti: escanea el sistema comparando ficheros y comandos con firmas de rootkits conocidos, vigila propiedades sospechosas (permisos raros, puertos ocultos, binarios modificados) y te resume los warnings en un lenguaje claro para que sepas qué mirar. Además mantiene una baseline — una foto de cómo deberían ser tus ficheros — y las firmas actualizadas, que son las dos piezas de las que depende que la detección sea fiable.
Tras instalar el módulo o actualizar paquetes del sistema, actualiza la baseline con update-baseline. Si no lo haces, cambios legítimos (por ejemplo, un apt upgrade) aparecerán como warnings y te costará distinguir lo normal de lo sospechoso.
Tareas comunes #
Elige lo que quieres hacer. Cada receta trae el comando ya escrito — cópialo, pégalo y pulsa Copiar.
1
Escanear el sistema ahora
Lanza un análisis completo y obtén un resumen de warnings.
Conéctate por SSH a tu servidor con el usuario ubuntu.
Lanza el escaneo. Tarda un poco: rkhunter revisa cientos de ficheros y comandos.
$ sudo imaxe rkhunter check¿Lo llamas desde un script o quieres integrarlo con otra herramienta? Añade --json:
$ sudo imaxe rkhunter check --json2
Ver los warnings del último escaneo
Repasa lo que rkhunter marcó, en un formato legible.
Muestra los warnings del último check sin tener que volver a escanear:
$ sudo imaxe rkhunter report3
Comprobar el estado
De un vistazo: instalación, baseline, último escaneo y warnings.
Un resumen rápido de si rkhunter está listo, si hay baseline, cuándo fue el último escaneo, cuántos warnings dejó y si hay un escaneo programado:
$ sudo imaxe rkhunter statusPara monitorización o scripts, pídelo en JSON:
$ sudo imaxe rkhunter status --json4
Actualizar la baseline
Acepta el estado actual de los ficheros como referencia buena.
Guarda las propiedades actuales de los ficheros como baseline (equivale a rkhunter --propupd). Hazlo solo cuando confíes en el estado del sistema — por ejemplo, justo después de instalarlo o de una actualización que reconoces:
$ sudo imaxe rkhunter update-baselinecheck parte de esta nueva foto de referencia.5
Actualizar las firmas
Descarga los ficheros de datos más recientes de rkhunter.
Actualiza los ficheros de datos y firmas de rkhunter (equivale a rkhunter --update) para que la detección conozca los rootkits más recientes:
$ sudo imaxe rkhunter update-datacheck detecta amenazas más recientes. Conviene hacerlo antes de un escaneo importante.Es normal la primera vez o justo después de actualizar paquetes: rkhunter ve cambios que aún no están en la baseline. Revísalos con report, y si los reconoces como legítimos, acéptalos con update-baseline. Nunca actualices la baseline si sospechas que el sistema ya está comprometido.
Sinopsis #
imaxe rkhunter <subcomando> [--json]Todos los subcomandos requieren privilegios de root (usa sudo) porque rkhunter necesita leer ficheros del sistema, comparar binarios y escribir su baseline y sus datos. Añade --json a check o status para obtener salida legible por máquina, apta para scripting y monitorización.
Subcomandos #
| Subcomando | Qué hace | Flags relevantes |
|---|---|---|
| check | Lanza un escaneo de rootkits/malware y resume los warnings. | --json |
| report | Muestra los warnings del último escaneo de forma legible. | — |
| status | Estado: instalado, baseline presente, último escaneo, warnings y escaneo programado. | --json |
| update-baseline | Acepta las propiedades actuales de los ficheros como baseline (rkhunter --propupd). | — |
| update-data | Actualiza los ficheros de datos/firmas de rkhunter (rkhunter --update). | — |
Argumentos y flags #
| Flag | Tipo | Por defecto | Descripción |
|---|---|---|---|
| --json | bool | false | En check/status, emite el resultado como JSON estructurado en stdout, apto para scripting y monitorización. |
Los subcomandos report, update-baseline y update-data no aceptan flags: se lanzan sin argumentos.
Ficheros y rutas #
| Ruta | Contenido |
|---|---|
| /etc/imaxe/rkhunter.yml | Configuración del módulo: por defecto, check reporta solo warnings (report_warnings_only). |
| /var/lib/rkhunter/db/ | Baseline de propiedades de ficheros y ficheros de datos/firmas que actualizan update-baseline y update-data. |
| /var/log/rkhunter.log | Registro del último escaneo, del que report extrae los warnings. |
Ejemplo de rkhunter.yml:
check:
report_warnings_only: trueCódigos de salida y logs #
Cada ejecución devuelve un código que puedes comprobar con echo $? — útil para encadenar en scripts o alertar desde monitorización:
Consulta el log del último escaneo mientras revisas:
$ sudo imaxe rkhunter report
$ sudo tail -f /var/log/rkhunter.logResolución de problemas #
| Síntoma | Causa probable | Solución |
|---|---|---|
| Sale WARN (código 1) tras actualizar paquetes | Cambios legítimos que aún no están en la baseline. | Revisa con report; si los reconoces, acéptalos con update-baseline. |
status dice «baseline: no presente» | El módulo se acaba de instalar y no hay foto de referencia. | Ejecuta update-baseline una vez con el sistema en estado de confianza. |
| Muchos warnings de ficheros antiguos o versiones | Firmas y datos de rkhunter desactualizados. | Lanza update-data y repite el check. |
| Sale ERR (código 3) | rkhunter no está instalado o el binario no responde. | Revisa la instalación del módulo y consulta /var/log/rkhunter.log. |
¿Te atascaste con el módulo rkhunter?
Escríbenos con la salida de «imaxe <módulo> status --json» y te respondemos rápido.