Cómo monitorear cambios en archivos con fswatch
Cómo monitorear cambios en archivos con fswatch

Cómo monitorear cambios en archivos con fswatch

A continuación, te muestro cómo instalar y usar la herramienta de supervisión de directorios, fswatch.

Con cada día que pasa, parece que cada vez tenemos más probabilidades de sufrir el robo de datos. Con ese fin, hacemos todo lo que está a nuestro alcance para evitar tal evento. Pagamos precios exorbitantes por red segura, pasamos largas horas configurando y actualizando constantemente nuestros servidores, y mucho más. Y sin embargo, nuestros datos siguen siendo vulnerables.

Es por eso que la mayoría de los administradores hacen todo lo posible para monitorear esa preciosa carga. Cualquier herramienta que puedas encontrar para monitorear archivos y directorios es imprescindible. Una de esas herramientas es fswatch. La aplicación fswatch es un monitor gratuito de código abierto y multiplataforma que verifica los cambios en los archivos y envía notificaciones (a la salida estándar) cuando se modifica el contenido de los archivos observados.

1. Introducción a Fswatch

Fswatch es algo básico en su funcionalidad, pero eso también ayuda a que los administradores puedan hacer un seguimiento de los directorios cruciales que contienen configuraciones para los sistemas de servidor o los datos de los usuarios. Cuando algo cambia en esos directorios, fswatch te avisa. Fswatch está disponible para Linux, macOS, Solaris y Windows.

Voy a guiarte a través del proceso de instalación y ejecución de fswatch en Linux, más precisamente en la plataforma Kali Linux (lo sé, tal vez Kali no sea lo más habitual, pero es el SO que utilizo).

2. Requisitos e instalación

Lo único que necesita es una instancia en ejecución de Ubuntu Server o cualquier otra distribución, un usuario con privilegios de sudo, un directorio para ver y (opcional) un poco de creatividad. Si tu plataforma de elección no es Linux, necesitas modificar las instrucciones de instalación para satisfacer tus necesidades.

Instalación

Lo primero que debes hacer es instalar fswatch. Afortunadamente, fswatch se puede encontrar en el repositorio estándar de Debian, por lo que la instalación es solo una cuestión de ejecutar el comando:

sudo apt-get install fswatch -y
Instalar fswatch en Linux
Instalar fswatch en Linux

Una vez que la instalación finalice, estarás listo para comenzar a usar fswatch.

3. Uso de fswatch

Usar fswatch es bastante simple. Asegura el shell en el mismo servidor desde dos ventanas de terminal diferentes. En la primera terminal, crea un directorio de prueba con el comando mkdir PRUEBA y luego ejecutA el comando fswatch PRUEBA.

Prueba de fswatch
Prueba de fswatch

Desde la segunda ventana del terminal, cambia al directorio PRUEBA (con el comando cd PRUEBA) y luego ejecuta el comando touch PRUEBA. De vuelta en la primera terminal, fswatch imprimirá una notificación para el archivo recién creado.

Uso de fswatch
Uso de fswatch

De vuelta en la segunda terminal, abre PRUEBA para editar con el comando nano PRUEBA. Agrega un poco de texto a ese archivo y luego guárdalo/ciérralo.

Modificando archivo con nano
Modificando archivo con nano

fswatch informará de inmediato que PRUEBA se ha abierto para su edición agregando un .swp al final.

Aviso de modificación de archivo con fswatch
Aviso de modificación de archivo con fswatch

Para cancelar el comando fswatch, escribe la combinación de teclas + , y se te devolverá tu solicitud.

Si no deseas ver esos informes en tiempo real, puedes establecer una latencia, lo que hará que fswatch sondee el directorio para detectar cambios cada X segundos. Digamos que solo deseas sondear el directorio cada 10 segundos, ese comando sería:

fswatch -l 10 PRUEBA

También puedes hacer que fswatch imprima una marca de tiempo para un evento con el comando:

fswatch --timestamp TEST

El comando anterior imprimirá una marca de tiempo junto con cada evento.

Si no deseas ver eventos en la ventana del terminal, siempre puedes enviar la información que se imprime a un archivo, de esta manera:

fswatch --timestamp PRUEBA > salida_fswatch

Si deseas que se te devuelva tu línea de comandos, agregua el carácter & así:

fswatch --timestamp PRUEBA > salida_fswatch &
fswatch con marca de tiempo para evento
fswatch con marca de tiempo para evento

Se te dará un número PID para el comando fswatch en ejecución. Necesitarás ese número para finalizar el comando (de lo contrario, continuará ejecutándose en segundo plano, recolectando datos en salida_fswatch).

Para matar fswatch, ejecuta el comando:

kill 

Donde PID es el número reportado después de ejecutar el comando fswatch.

Y así es como puede monitorear fácilmente un directorio para detectar cambios con fswatch.

4. Conclusión

Debido a que estamos trabajando con Linux, puedes usar fswatch para ser tan creativo como sea necesario. Usa fswatch en scripts batch, expresiones regulares, canalizaciones y más. Pero no importa cómo uses Fswatch, puedes mantenerse informado sobre cuándo algo anda mal en tus directorios. ¿interesante no?. ¡Comparte este artículo en tus redes sociales! :’)

My Cart Close (×)

Tu carrito está vacío
Ver tienda