Me gustaría saber cuáles son los mejores enfoques para rastrear las actividades de superusuario en un entorno Linux.
Específicamente, estoy buscando estas características:
- A) Registro de pulsaciones de teclas en un servidor syslog seguro
- B) Capacidad para reproducir sesiones de shell (algo así como scriptreplay)
- C) Idealmente, esto debería ser algo imposible (o bastante difícil) de sortear sin tener acceso físico al servidor.
Piense en esto desde una perspectiva de seguridad / auditoría, en un entorno donde diferentes administradores de sistemas (o incluso terceros) deben poder realizar operaciones privilegiadas en un servidor.
Cada administrador tendría su propia cuenta nominal, y cada sesión interactiva debería estar completamente registrada, con la posibilidad de volver a reproducirla si fuera necesario (por ejemplo, si alguien usara mc para eliminar o alterar archivos críticos, no sería suficiente para sepa que esa persona emitió el comando mc; debe haber una manera de ver exactamente lo que se hizo después de iniciar mc).
Notas adicionales :
- Como ha señalado womble, la mejor opción podría ser no hacer que las personas inicien sesión con privilegios de root para realizar cambios en los servidores, sino que lo hagan a través de un sistema de administración de configuración. Así que vamos a asumir una situación en la que no tenemos un sistema de este tipo y hay que conceder acceso de root a diferentes personas en el mismo servidor .
- No me interesa en absoluto hacer esto subrepticiamente: cada persona que inicie sesión en un servidor con privilegios de root debería ser plenamente consciente de que la sesión se grabará (de la misma manera que, por ejemplo, los operadores de centros de llamadas saben que sus conversaciones son siendo grabado)
- Nadie usaría una cuenta genérica de superusuario ("root")
- Soy consciente de ttyrpld y parece hacer lo que estoy buscando. Pero antes de seguir así, me gustaría saber si esto se puede resolver utilizando un núcleo no modificado. Quiero saber si hay alguna herramienta para Debian en particular (o Linux en general) que permita la auditoría completa de las cuentas de superusuario sin parchear el shell o el kernel.