Ir al contenido principal

[Logs II] Instalar ELK elastic stack 7.5

Requerimientos

  • Ubuntu 18.04.3 LTS
  • 4 GB de Ram

¿Qué es entonces el ELK Stack?

ELK es la sigla para tres proyectos open source: Elasticsearch, Logstash y Kibana. Elasticsearch es un motor de búsqueda y analítica. Logstash es un pipeline de procesamiento de datos del lado del servidor que ingesta datos de una multitud de fuentes simultáneamente, los transforma y luego los envía a como Elasticsearch. Kibana permite a los usuarios visualizar los datos en cuadros y gráficos con Elasticsearch.
Si quieres aprender mas del proyecto puedes visitar https://www.elastic.co/es/what-is/elk-stack

Instalar elasticsearch

La opción de instalación mas conveniente para Ubuntu es usar los paquetes deb.
El paquete deb de elasticsearch funciona para sistemas operativos Debian y sus derivados, los puedes bajar directamente del sitio web de elasticsearch o desde el repositorio usando APT.
El paquete que vamos a instalar usa la licencia de elastic, que es open source pero tenemos la opción de pasarnos a la licencia comercial, con la licencia open source ser suficiente para una buena cantidad de requerimientos.

Importar PGP key de elastic

Los paquetes están firmados con la clave D88E42B4, disponible desde https://pgp.mit.edu con el fingerprint:
4609 5ACC 8548 582C 1A26 99A9 D27D 666C D88E 42B4
Descargar e instalar la clave publica

Instalar desde los repositorios APT

Antes de iniciar necesitamos instalar apt-transport-https

Agregamos el repositorio

Instalamos los paquetes

Iniciar automáticamente elasticsearch al iniciar el sistema

Por default elasticsearch no inicia automáticamente después de la instalación, iniciar y detenerse depende del sistema SysV init o systemd
Podemos saber que sysV estamos usando con el comando

ps -p 1
PID TTY          TIME CMD
    1 ?        00:00:13 systemd
    

En Ubuntu 18.04 por default usa systemd
Para configurar que elasticsearch inicie automáticamente después de un reinicio del sistema usaremos.

para iniciar o detener elasticsearch

estos comandos no tienen salida en consola, pero podemos usar journalctl para ver el estado del inicio de la aplicación

Validar el funcionamiento

Vamos a enviar una petición con curl al puerto 9200 para ver si esta corriendo.

nos regresara algo parecido a esto

{
  "name" : "lnr",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "iv8LyrgVTZW_ax6W2wuxHw",
  "version" : {
    "number" : "7.5.1",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "3ae9ac9a93c95bd0cdc054951cf95d88e1e18d96",
    "build_date" : "2019-12-16T22:57:37.835892Z",
    "build_snapshot" : false,
    "lucene_version" : "8.3.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Directorios importantes

Tipo Descricion Directorio Setting
home directorio home or $ES_HOME /usr/share/elasticsearch
bin Binary scripts incluyendo elasticsearch y elasticsearch-plugin para instalar plugins /usr/share/elasticsearch/bin
conf Archivos de configuración incluyendo elasticsearch.yml /etc/elasticsearch ES_PATH_CONF
conf Variables de entorno incluyendo heap size, file descriptors. /etc/default/elasticsearch
data Datos de index / /var/lib/elasticsearch path.data
logs Archivos de Log /var/log/elasticsearch path.logs
plugins Archivos de plugins /usr/share/elasticsearch/plugins
Referencias

instalar kibana

Kibana es un panel de visualización de datos de código abierto para Elasticsearch. Proporciona capacidades de visualización sobre el contenido indexado en un clúster Elasticsearch. Los usuarios pueden crear gráficos de barras, líneas y dispersión, o gráficos circulares y mapas sobre grandes volúmenes de datos.
Vamos a instalar kibana usando los paquetes deb. Si seguimos los pasos anteriores de la parte de la instalación de elasticsearch podemos continuar de lo contrario, agregamos el PGP key, el repositorio e intalamos el apt transports.
Instalamos kibana con apt

Kibana no inicia por default con el sistema podemos hacer que inicie automáticamente con systemd

para iniciar y detener el sistema

validamos el status con

y podemos ver los logs de salida del sistema con journalctl

Validamos el correcto funcionamiento entrado en un navegador a localhost:5601/app/kibana o con curl

si queremos que kibana este disponible en alguna interfaz de especifica editamos el archivo /etc/kiaba/kibana.yml para editar la server.host: "tu ip"

y agregamos la etiqueta

#
#
#
server.host: "tu ip"
#
#

y agregamos las reglas al firewall ufw
entramos desde el navegador o usando curl y si nos regresa el logo de kibana esta listo

Direcciones importantes

Tipo Descrición PATH
home Home de kibana o $KIBANA_HOME /usr/share/kibana
bin Binary scripts incluyendo kibana y kibana-plugin /usr/share/kibana/bin
config Archivos de configuración incluyendo kibana.yml /etc/kibana
data Informacion escrita por kibana /var/lib/kibana
logs Logs /var/log/kibana
plugins Archivos de plugins /usr/share/kibana/plugins
Referencias

instalar logstash

instalar java

Para instalar logstash necesitar java 1.8, podemos instalar java la versión de Oracle o el openjdk, aquí usaremos el openjdk.

verificamos la instalación
java -version

instalar logstash


iniciar o detener el servicio

ver el estatus del servicio

ver salida de logs

Esta es la forma mas fácil de instalar ELK, pero dejaremos para otra entrada la configuración de logstash para dividir los logs.

Comentarios

Entradas más populares de este blog

Introducción a los CIS controls

Introducción CIS Controls es un conjunto de acciones priorizadas que colectivamente forman un conjunto de mejores prácticas de defensa que mitigan los ataques más comunes contra sistemas y redes. Los Controles CIS son desarrollados por una comunidad de expertos en TI que aplican su experiencia de primera mano como defensores cibernéticos para crear estas mejores prácticas de seguridad aceptadas globalmente. Los expertos que desarrollan los Controles CIS provienen de una amplia gama de sectores que incluyen retail, fabricación, salud, educación, gobierno, defensa y otros. Estamos en un punto fascinante en la evolución de lo que ahora llamamos defensa cibernética. Pérdidas masivas de datos, robo de propiedad intelectual, violaciones de tarjetas de crédito, robo de identidad, amenazas a nuestra privacidad, denegación de servicio: se han convertido en una forma de vida para todos nosotros en el ciberespacio. Y, como defensores, tenemos acceso a una extraordinaria

Equipos Mikrotik [parte 2]

Gama Media En esta gama tenemos equipos con una fortaleza suficiente para una gran mayoría de soluciones para redes de casi 200 puntos de red. A continuación, veremos algunos modelos Routers Mikrotik de gama media: RB2011UiAS-2HnD-IN Este Router viene equipado con AP de 2.4Ghz, mas 10 puertos ethernet que de estos 5 son puertos Gibabit y los otros 5 son 10/100 asi también viene 1 puerto SFP, tiene un procesador de 600MHz con ram de 128MB, este equipo viene de fabrica con una licencia de RouterOS L5 con un costo que ronda desde los $2500 a los $3200. Si bien este equipo te ofrece la característica de tener un WiFi en tu router principal si de lo contrario no quisieras esta modalidad esta la opción de este equipo que no tiene el AP integrado que el modelo es RB2011UiAS-RM que los costos son similares si estas en una corporación donde ya se tenga bien definido tu red WiFi no es necesario comprar el RB2011UiAS-2HnD-IN ya que con este puedes cumplir con los requerimientos nece

Inventario de Software autorizados y no autorizados

Gestione activamente todo software en la red (inventario, seguimiento y corrección), de tal manera que solo software autorizado esté instalado y pueda ejecutarse, y que el software no autorizado y no gestionado sea encontrado y se prevenga su instalación y ejecución. ¿Por qué es importante este control? Los atacantes escanean continuamente a las organizaciones objetivo en busca de versiones vulnerables de software que pueden explotarse de forma remota. Algunos atacantes también distribuyen páginas web, archivos de documentos, archivos multimedia y otros contenidos hostiles a través de sus propias páginas web o sitios de terceros de confianza. Cuando las víctimas desprevenidas acceden a este contenido con un navegador vulnerable u otro programa del lado del cliente, los atacantes comprometen sus máquinas, a menudo instalando programas de puerta trasera y bots que le dan al atacante un control a largo plazo del sistema. Algunos atacantes sofisticados pueden usar exploits d