BASH – Script busca direcciones IP en Archivo LOG.

Script en BASH que analiza un archivo LOG y busca direcciones IP en el REGISTRO, cuando las detecta, debe guardar las Direcciones IP en una MATRIZ Asociativa (Solo funciona en versiones de BASH sobre 4). Además, debe grabar un registro con la fecha y hora en que aparece las direcciones IP.

Al finalizar el SCRIPT, debe mostrar un resumen con las DIRECCIONES IP y la cantidad de veces que aparecieron en el LOG.

Explicación del SCRIPT :

  1. Expresión regular:
    • ^([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}): Captura la fecha y hora en formato YYYY-MM-DD HH:MM:SS.
    • .*([0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}): Captura la dirección IP en cualquier parte de la línea.
  2. Variables:
    • fecha_hora=»${BASH_REMATCH[1]}»: Almacena la fecha y hora capturadas.
    • ip=»${BASH_REMATCH[2]}»: Almacena la dirección IP capturada.
  3. Registro de fechas y horas:
    • echo «$fecha_hora – $ip» >> fechas_ips.log: Guarda la fecha, hora y dirección IP en un archivo llamado fechas_ips.log.

Consideraciones:

  • Asegúrate de que el formato de la fecha y hora en tu archivo de registro coincida con el patrón que hemos definido.
  • Puedes cambiar el nombre del archivo de registro y el archivo de salida según tus necesidades.

Publicado en Unix - Linux | Deja un comentario

BASH – Script MENU en colores (Sencillo).

Publicado en Unix - Linux | 2 comentarios

EXPECT – Diferentes modos de apertura de archivos.

En expect, puedes abrir archivos utilizando varios modos, muy similares a los modos disponibles en Tcl (el lenguaje en el que está basado expect). Aquí te dejo una lista de los modos más comunes que puedes usar:

  1. r – Lectura: Abre el archivo para lectura. El archivo debe existir.

  2. r+ – Lectura y escritura: Abre el archivo para lectura y escritura. El archivo debe existir.

  3. w – Escritura: Abre el archivo para escritura. Si el archivo ya existe, se trunca (se elimina su contenido). Si el archivo no existe, se crea uno nuevo.

  4. w+ – Lectura y escritura: Abre el archivo para lectura y escritura. Si el archivo ya existe, se trunca. Si el archivo no existe, se crea uno nuevo.

  5. a – Añadir (append): Abre el archivo para añadir datos. Los datos se añaden al final del archivo si ya existe. Si el archivo no existe, se crea uno nuevo.

  6. a+ – Lectura y añadir: Abre el archivo para lectura y añadir datos. Los datos se añaden al final del archivo si ya existe. Si el archivo no existe, se crea uno nuevo.

Estos modos te permiten manejar archivos según tus necesidades, ya sea para solo leer su contenido, escribir sobre ellos o añadir nueva información sin eliminar la existente.

Publicado en Unix - Linux | Deja un comentario

Script EXPECT para leer archivo línea por línea.

Sencillo ejemplo de un SCRIPT EXPECT el cual permite leer un archivo en el cual cada línea contiene 6 campos separados por coma (,) Cada campo se asigna a una variable definida para poder trabajar con ellos. En este ejemplo cuando en el tercer campo tenga el valor «logrado» dicha línea debe ser grabada en un nuevo archivo.

Publicado en Unix - Linux | Deja un comentario

LINUX – Script PLUGIN NAGIOS monitoreo LOG (Verifica escritura).-

Los LOGS DE APLICACIONES se encargan de registrar operaciones específicas de las aplicaciones en ejecución, son elementos muy importantes a tener en cuenta para controlar la gestión, diagnosticar problemas, optimizar rendimiento y verificar la seguridad de los sistemas informáticos.

Para el ejemplo, supongamos que tenemos una aplicación WEB que esta registrando todas las transacciones realizadas, históricamente el registro de acciones en el log, nunca ha pasado inactivo por más de 7 minutos.

La solución a esto para ser monitorizado por NAGIOS es utilizar el siguiente PLUGIN, en que para que funcione necesita se le proporciones 3 parámetros: El nombre y ruta completa del log de transacciones, el valor WARNING en minutos y el valor CRITICAL en minutos.

Su funcionamiento es el siguiente: se captura la fecha y hora del servidor (SER_DATE), luego se realiza lo mismo con el archivo LOG (LOG_DATE), se restan estos 2 valores para sacar la diferencia transcurrida (DIF_DATE) y finalmente se divide por 60 para sacar la diferencia de minutos (DIF_MIN).

Publicado en Unix - Linux | Deja un comentario