Uno de los principales problemas que podemos tener con nuestro entorno ELK ( ElasticSearch, Logstash y Kibana) es la gran cantidad de información que puede llegar a almacenar y el espacio en disco que se requiere para ello. Para solucionar este problema Elastic ha creado Curator, el cual puede realizar tareas de mantenimiento sobre ElasticSearch siguiendo una sencillas reglas que podemos definir nosotros.

Entre las múltiples acciones que tiene Curator, la que nos interesa para este caso es Delete indices, que utilizaremos para eliminar los índices de más de 45 días.

Continúa leyendo

Si queremos poner nuestro entorno ELK (ElasticSearch, Logstash y Kibana) en producción lo primero que debemos hacer es securizarlo. Así que instalamos el plugin  Elastic Shield el cual nos ayudará en dicha tarea:

Creamos el usuario administrador:

Ahora reiniciamos el servicio para que se aplique aplique la configuración:

Ahora podremos comprobar que si intentamos acceder al servidor  http://localhost:9200/ nos mostrará un error al no permitir el acceso al usuario anonymous. Pero si lo intentamos con el usuario admin si que funciona:

Continúa leyendo

En este articulo vamos a tratar de crear un Dashboard o Cuadro de mandos, en el cual podamos, de un solo vistazo, obtener información sobre los intentos de inicio de sesión. Para ello, debemos primero refrescar los campos (ya que en alterior articulo hicimos cambios sobre la estructura en Logstash), haciendo click sobre el icono de las flechas concéntricas dentro de Settings/indices:

kibana_refresh

Ahora vamos a la pestaña Discover e indicando un rango de tiempo (arriba a la derecha) en el que tengamos datos de interés y queramos explotarlos. En nuestro caso indicaremos «Last 7 Days».

Continúa leyendo

Ha llegado el momento de complicar algo las cosas. Nuestra intención es crear un cuadro de mandos en Kibana con las estadísticas de inicio de sesión de nuestro servidor.  Para empezar tenemos que saber qué información nos interesa y configurar Logstash para que nos aporte dicha información, en nuestro caso es la siguiente:

  • Inicios de sesión por SSH correctos
  • Inicios de sesión por SSH incorrectos (Contraseña incorrecta)
  • Inicios de sesión por SSH incorrectos (Usuarios incorrecto)
  • Inicios de sesión por SUDO incorrectos

Continúa leyendo

Lo último que nos falta es un entorno que nos permita explotar eficientemente toda la información almacenada  en ElasticSearch, con este fin vamos a proceder con la instalación de Kibana.

Empezamos descargando desde la web oficial de Elastic la versión correspondiente:

Instalamos el paquete con el siguiente comando:

Como resultado nos encontraremos Kibana instalado en /opt/kibana , el archivo de configuración en /opt/kibana/config/kigana.yml  y el script de arranque en /etc/init.d/kibana .

Continúa leyendo

Como en el anterior articulo dejamos funcionando nuestro servidor con ElasticSearch, en este vamos a instalar y configurar Logstash.  Para ello, lo primero que haremos es descargarnos Logstash desde la web oficial de Elastic:

Instalamos el paquete con el siguiente comando:

Como resultado tendremos Logstash instalado en /opt/logstash/ , los archivos de configuración en /etc/logstash/conf.d/  y el script de arranque en /etc/init.d/logstash .

En esta implantación de prueba, vamos a decirle a Logstash que nos almacene en ElasticSearch los inicio de sesión registrados en auth.log . Con este fin crearemos un fichero de configuración auth-log.conf dentro de /etc/logstash/conf.d/  .

Continúa leyendo

Con ELK (ElasticSearch, Logstash y Kibana) podemos gestionar los logs de nuestros servidores de forma muy eficiente, pudiendo realizar consultas muy concreta sobre lo que realmente nos interesa y obteniendo resultados muy visuales y fáciles de entender.

Antes de nada vamos a explicar de forma muy breve que función tiene cada uno de los componentes de ELK:

Logstash:

descargaLogstash es una herramienta para la administración de logs. Esta herramienta se puede utilizar para recolectar, parsear y guardar los logs para futuras búsquedas. La aplicación se encuentra basada en jRuby y requiere de Java Virtual Machine para correr. Como corre en JVM puede ser ejecutada en cualquier Sistema Operativo que corra JVM.

 

ElasticSearch:

ElasticsearchElasticsearch es un servidor de búsqueda basado en Lucene. Provee un motor de búsqueda de texto completo, distribuido y con capacidad de multi-tenencia con una interfaz web RESTful y con documentos JSON. Elasticsearch está desarrollado en Java y está publicado como código abierto bajo las condiciones de la licencia Apache.

Kibana:

KibanaKibana es una herramienta open-source perteneciente a Elastic, que nos permite visualizar y explorar datos que se encuentran indexados en ElasticSearch, es decir, un plugin de ElasticSearch.

Continúa leyendo