Inicio Linux & Systems Networks & Infrastructure Cybersecurity Cloud & DevOps SIEM & Monitoring DFIR & Threat Intel Development & Other Todas las categorias Herramientas

Instalación Graylog2 en GNU/Linux Debian

Instalación Graylog2 en GNU/Linux Debian

Tabla de contenidos

Graylog2 es un sistema Open Source (GPLv3) que nos permite centralizar los logs de sistemas afines para facilitar el análisis en tiempo real de nuestros sistemas.

Instalación:

Añadimos los repositorios

bash
echo «deb http://ftp.debian.org/debian jessie-backports main» > /etc/apt/sources.list.d/backports.list

apt-get update && sudo apt-get upgrade

Instalamos el software necesario:

bash
apt-get install -t jessie-backports   apt-transport-https openjdk-7-jre-headless uuid-runtime pwgen

Instalamos la BBDD

bash
apt-get install mongodb-server

Añadir repositorios de Elasticsearch

bash
wget -qO – https://packages.elastic.co/GPG-KEY-elasticsearch |  apt-key add –

echo «deb https://packages.elastic.co/elasticsearch/2.x/debian stable main» |  tee -a /etc/apt/sources.list.d/elasticsearch-2.x.list

Actualizamos los  repositorios e instalamos Elasticsearch

bash
apt-get update &&  apt-get install elasticsearch

Accedemos al archivo de configuración /etc/elasticsearch/elasticsearch.yml y buscamos la linea donde pone: cluster.name, lo descomentamos y configuramos un nombre.

text
cluster.name: graylog

Iniciamos el servicio

bash
systemctl daemon-reload

systemctl enable elasticsearch.service

systemctl restart elasticsearch.service

A continuación procederemos a la instalación de graylog.

bash
wget https://packages.graylog2.org/repo/packages/graylog-2.2-repository_latest.deb

dpkg -i graylog-2.2-repository_latest.deb

apt-get update && sudo apt-get install graylog-server

Para que graylog inicie debemos configurar una contraseña en /etc/graylog/server/server.conf, para ello debemos que añadir nuestra contraseña en: password_secret y root_password_sha2

Dejándolo de la siguiente forma:

Generamos nuestro código secreto para password_secret

text
pwgen -N 1 -s 96

yo6iGdv0uCQ9Nw92GXTKJNViEpi6IGKi2O0obRtWJyDHKIWnyxlcdiRfOYZogokA3dT9BE57ZZyUEKQmJEoKTXGg5VGzjrHL

Generamos el hash para root_password_sha2

bash
echo -n TUPASSWORD | sha256sum

e1fda59fe47ff5f479b724f9f054829701eb062bd0b104e92f50d2de2e872925  –

Configuramos la contraseña:

bash
cat /etc/graylog/server/server.conf | grep -i password_secret

password_secret = 0wDp5a5Yj6dqawrZAzq7uxKB5XJ19AS9ZaLLTAbcA6FCEKEVmV3HTcES2Znjwy1mDWGc7CFDTMXvCpYtVBsO8rxsxJxXhdM6

cat /etc/graylog/server/server.conf | grep -i root_password_sha2

root_password_sha2 = e1fda59fe47ff5f479b724f9f054829701eb062bd0b104e92f50d2de2e872925

Ahora vamos a configurar graylog, para ello accedemos al fichero /etc/graylog/server/server.conf

Dado que en nuestro ejemplo solo tenemos un Elasticsearch vamos a modificar  elasticsearch_shards y le asignamos el valor 1

text
elasticsearch_shards = 1

Nos dirigimos a la linea elasticsearch_cluster_name  y le asignamos el nombre que le hayamos otorgado al servidor

text
elasticsearch_cluster_name = graylog

Configuramos la interfaz de red, para ello debemos modificar en el fichero de configuración las siguientes entradas:

text
rest_listen_uri = http://192.168.1.177:12900/

rest_transport_uri = http://192.168.1.177:12900/

web_listen_uri = http://192.168.1.177:9000/

Iniciamos graylog

bash
systemctl daemon-reload

systemctl enable graylog-server.service

systemctl start graylog-server.service

Mediante nuestro navegador web podemos acceder para empezar a trabajar con graylog:

Configuramos el envío de logs mediante RSYSLOG

Descargamos e instalamos:

si no tenemos instalado rsyslog en nuestra distribución linux la intalamos:

Debian y derivados:

bash
apt-get intall rsyslog

Redhat y derivados

bash
yum install rsyslog

Suse Enterprise

text
zypper install rsyslog

Creamos un fichero de configuración para graylog, en el tenemos que configurar la IP del servidor graylog y el puerto donde vamos a configurar para que escuche.

bash
cat /etc/rsyslog.d/90-graylog2.conf

$template GRAYLOGRFC5424,»%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%\n»

*.* @192.168.1.177:12500;GRAYLOGRFC5424

Reiniciamos el servicio de rsyslog

bash
service rsyslog restart

Mediante nuestro navegador web nos vamos a la consola de graylog > System > Inputs

En inputs seleccionamos SYSLOG UDP y presionamos en Launch new input

Se nos abrirá un asistente de configuración, en el solo debemos añadirle un titulo y el puerto el cual hemos configurado anteriormente en RSYSLOG , que en nuestro caso es: 12500

Una vez ya configurado vamos crear un stream para poder caracterizar los eventos. Esto nos permite poder añadir un TAG el cual nos permitirá buscar mas rápidamente.

Para ello nos vamos a Stream > Create Stream

Una vez creado, debemos crear reglas, presionamos en Manager Rules

Seleccionamos el servidor que queremos agregarle el Streams > Load Message > Add Stream rule

Nos abre el asistente de configuración:

Una vez configurado damos a iniciar, Damos doble click sobre la regla creada y damos en: Add

Instalación NXLOG en Windows

Accedemos a la pagina web de NXLOG y descargamos el software http://nxlog.co/products/nxlog-community-edition/download

Una vez instalado debemos C:\Program Files (x86)\nxlog\conf\nxlog.conf, en este fichero de configuración solo debemos modificar  el host y el puerto

text
<Output out>

Module      om_udp

Host        192.168.1.177

Port        12201

OutputType  GELF

</Output>

Guardamos el documento y reiniciamos el servicio.

Nuevamente nos dirigimos a nuestro navegador web System > Inputs > seleccionamos GELF UDP > Launch new input

Un saludo.

:wq!