Acct y Psacct. Monitorizar la Actividad de los Usuarios de un Equipo en GNU/Linux

¡Muy buenas querido lector! Si administras un equipo o un servidor GNU/Linux en el que se puedan acreditar múltiples usuarios, en este breve post te explicare como puedes monitorizar la actividad de los mismos, de la mano de GNU Accounting Utilities, un conjunto de utilidades que podrás obtener a través de los paquetes acct o psacct, en función de tu distribución.

Si sigues estas lineas te explicare que puedes conseguir con estas herramientas, y los comandos más importantes que debes conocer, dependiendo de la información que quieras conocer. Dicho esto, ¡vamos alla!

Tabla de contenidos:

  1. GNU Accounting Utilities
  2. Instalar acct o psacct en tu distribución
  3. Habilitar el servicio de acct o psacct en el arranque del sistema
  4. Guía de uso
    1. Obtener información relativa a los inicios de sesión
    2. Obtener información relativa al uso de recursos
  5. Si quieres buscas un entorno de auditoria completo

GNU Accounting Utilities

GNU Accounting Utilities es un conjunto de utilidades de monitorización enfocadas a que el administrador de un equipo pueda conocer información relativa a los usuarios que se loguean en él, y el uso de recursos que realizan.

Como puedes imaginar, es una herramienta enfocada sobretodo en entornos de servidores, que es donde suelen haber diferentes usuarios pudiendo iniciar sesión en una misma máquina.

Entre los diferentes parámetros que permiten monitorizar, destacaría los siguientes:

  • Fechas de inicio de sesión de cada usuario
  • Tiempos de sesión de cada usuario
  • Uso de comandos por parte de cada usuario

Instalar Acct o Psacct en tu Distribución

GNU Accounting Utilities se presenta en dos paquetes diferentes, en función de la distribución GNU/Linux en la que te encuentres: acct y psacct. Así pues, deberás instalar un paquete u otro según aplique en tu caso particular.

Para las distribuciones que hacen uso del formato de paquetes .deb, representados por la extensa familia de Debian y sus derivados, el paquete a instalar es acct. De ese modo, si te encuentras en la misma Debian, Ubuntu, o Linux Mint, por nombrar algunos ejemplos, puedes realizar la instalación utilizando este comando:

sudo apt install acct

Por otro lado, para las distribuciones del universo RPM, ya sea Fedora, openSUSE o muchas otras, el paquete es psacct. Si estás en Fedora, puedes realizar la instalación con DNF de la siguiente manera:

sudo dnf install psacct

Para el caso de openSUSE, el paquete a instalar es el mismo que en el caso de Fedora, pero en este caso deberás utilizar Zypper como gestor de paquetes.

sudo zypper install psacct

Habilitar Acct o Psacct en el Arranque del Sistema

Instalados ya los paquetes correspondientes, ahora lo que faltaría es habilitar el servicio o demonio asociado a acct o psacct, por tal de que se ejecute siempre en segundo plano. Para ello, puedes utilizar systemctl, tal como te indico a continuación.

sudo systemctl enable acct.service

Una vez hecho esto, faltaría reiniciar y comprobar, tras el próximo arranque, que el servicio esté habilitado. Para ello, puedes usar igualmente systemctl de la forma que te muestro a continuación.

sudo systemctl status acct.service

Si todo esta correcto, te debería aparecer un output por pantalla indicando que el servicio se encuentra activo.

Guía de Uso

Ahora que ya tienes el servicio corriendo en segundo plano, la herramienta ya podrá empezar a registrar los diferentes parámetros que cubre relativos a la actividad de los diferentes usuarios. Para ello, voy a dividir esta guía en dos partes.

Primero me enfocaré en los diferentes comandos que te permitirán conocer la información relativa a los inicios de sesión de los usuarios, y luego entraremos en la parte del uso de recursos.

Obtener Información Relativa a los Inicios de Sesión

Empezemos por el caso mas sencillo. Para conocer el tiempo total de conexión en el equipo por parte del conjunto de todos los usuarios que en algun momento han iniciado sesión en el equipo, puedes utilizar el siguiente comando:

sudo ac

El comando anterior te dará un numero representando el tiempo total de sesiones activas de usuario. Esto puede que no te diga mucho, pero puedes conocer el mismo dato desglosado por días. Para ello, tan solo tienes que añadir el parámetro -d, tal como te indico abajo.

sudo ac -d

Si quieres conocer el tiempo total de conexión al equipo, pero desglosado en función de los diferentes usuarios que han iniciado sesión en algun momento, puedes utilizar el mismo comando del principio, pero añadiéndole el parámetro -p.

sudo ac -p

Obtener Información Relativa a los Recursos Utilizados

Para obtener el listado de todos los comandos ejecutados, puedes utilizar el comando sa. Si lo usas sin argumentos, verás un listado de comandos, con los valores totales para el conjunto de todos los usuarios.

sudo sa

Si quieres obtener el mismo listado de comandos anterior, pero añadiendo el dato del usuario que ejecuta cada comando, tan solo debes añadir el parámetro -u, tal como te copio a continuación:

sudo sa -u

También puedes obtener un resumen, en base a cada usuario, del numero de procesos ejecutados y el tiempo de CPU. En este caso, solo debes utilizar el parámetro -m.

sudo sa -m

Estos son solo algunos de los comandos que he considerado mas interesantes, pero si quiers conocer más, te dejo con el listado completo que aparece en la pagina oficial del proyecto:

Si Quieres un Entorno de Auditoria Completo

Si buscas un entorno de auditoria completo, te recomiendo que no dejes de echar un ojo a este post en el que hablo de Linux Audit Framework, un conjunto de herramientas y utilidades integradas como módulo en el propio kernel, y que, en su conjunto, proporcionan un potente entorno de auditoria, gracias a la monitorización todo tipo de eventos de sistema, y a contar con utilidades especificas para ayudarte en la búsqueda y reporting de dichos eventos.

Anuncio publicitario
Categorías LinuxEtiquetas

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto:
search previous next tag category expand menu location phone mail time cart zoom edit close