Existen diferentes formas de realizar una auditoria para saber que realizaron en nuestro sistema cuando concedemos una sesión; en RHEL 8 se incluye tlog.
El servicio de grabación de sesiones en RHEL 8 es proporcionado por tlog, este tiene tres componentes clave:
- tlog Responsable de grabar y reproducir todo lo que se escribe o sucede en nuestra sesión (input/output I/O recording).
- tlog-rec-sessiones se encuentra entre el usuario y el shell para registrar todo lo que pasa en mensajes JSON.
- SSSD The System Security Services Daemon (SSSD) es un servicio que administra un conjunto de daemons para gestionar el acceso hacia directorios remotos y mecanismos de autentificación, su función para este caso será el configurar y autorizar al usuario o grupo de usuarios que pueden ser grabados, «pero para esta ocasión será sin SSSD».
Si revisamos el proyecto de tlog en github podrá observar que los componentes principales son tlog-rec, tlog-rec-session y tlog-play.
Revisando los escenarios que podríamos utilizar son:
- Grabar sesiones integrando seguridad con SSSD y Red Hat Identity Management.
- Grabar sesiones sin la integración de Red Hat Identity Management pero enviando las bitácoras a un servidor remoto.
- Grabar las sesiones y guardar las bitácoras en un archivo local, esta opción no se recomienda por que las bitácoras podrían ser eliminadas o manipuladas.
El escenario más recomendado sin duda, es tlog integrado con SSSD, Red Hat Identity Management con fines de control y seguridad, además de enviar las bitácoras a un servidor remoto.
Dicho lo anterior procederemos con el tercer escenario con fines prácticos y en un posterior post con los dos escenarios anteriores.
La primer tarea es agregar el canal appstream.
[esanchez@helen ~]$ sudo subscription-manager repos --enable=rhel-8-for-x86_64-appstream-rpms
[sudo] password for esanchez:
Repository 'rhel-8-for-x86_64-appstream-rpms' is enabled for this system.
Ahora a instalar paquetes.
[esanchez@helen ~]$ sudo yum install tlog -y
Terminada la configuración podrán invocar al servicio de tlog con el siguiente comando.
[esanchez@helen ~]$ tlog-rec --writer=file --file-path=prueba.log
Puede escribir algún comando para alimentar el archivo.
Para leer el archivo puede utilizar la siguiente instrucción.
[esanchez@helen ~]$ sudo tlog-play --reader=file --file-path=prueba.log
Y prepara las palomitas por que se mostrará en su terminal todo lo grabado como si esto fuera una película.
Si ejecutas el comando:
[esanchez@helen ~]$ /usr/bin/tlog-rec-session
Modificará el shell para el usuario actual haciendo permanente la grabación para este usuario.
También debe agregar la siguiente línea.
{"shell":"/bin/bash","notice":"\nATTENTION! !My eyes stay over here\n\n","latency":10,"payload":2048,"log":{"input":true,"output":true,"window":true},"limit":{"rate":16384,"burst":32768,"action":"pass"},"file":{"path":""},"syslog":{"facility":"authpriv","priority":"info"},"journal":{"priority":"info","augment":true},"writer":"journal"}
En la ruta.
esanchez@helen ~]$ sudo vi /etc/tlog/tlog-rec-session.conf
