Graylog es una herramienta gratuita de administración de registros de código abierto que lo ayuda a recopilar y analizar los registros de cualquier máquina de forma centralizada.
Esta guía se centra en la instalación de Graylog (v3.2) en Debian 10/Debian 9.
Componentes
- Elasticsearch:almacena los registros de la máquina y proporciona la función de búsqueda.
- MongoDB:actúa como una base de datos para almacenar configuraciones y metainformación.
- Servidor Graylog:recopila los registros de varias entradas y proporciona una interfaz web integrada para administrar los registros.
Requisitos
Instale los pocos paquetes necesarios para la configuración de Graylog.
sudo apt update sudo apt install -y apt-transport-https uuid-runtime pwgen curl dirmngr wget
Instale Oracle JDK u OpenJDK en su máquina para Elasticsearch.
sudo apt install -y default-jre
Verifique la versión de Java.
java -version
Salida:
openjdk version "11.0.6" 2020-01-14 OpenJDK Runtime Environment (build 11.0.6+10-post-Debian-1deb10u1) OpenJDK 64-Bit Server VM (build 11.0.6+10-post-Debian-1deb10u1, mixed mode, sharing)
Instalar Elasticsearch
Elasticsearch es uno de los componentes principales de la configuración de Graylog. Actúa como un servidor de búsqueda, ofrece análisis y búsqueda distribuida en tiempo real con la interfaz web RESTful.
Elasticsearch almacena los registros enviados por el servidor Graylog y muestra los mensajes cada vez que el usuario lo solicita a través de la interfaz web integrada.
Agreguemos la clave de firma GPG de Elasticsearch.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Configure el repositorio de Eleasticsearch ejecutando el siguiente comando.
echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
Actualice el caché del repositorio e instale Elasticsearch.
sudo apt update sudo apt install -y elasticsearch-oss
Edite el archivo de configuración de Elasticsearch.
sudo nano /etc/elasticsearch/elasticsearch.yml
Establezca el nombre del clúster como graylog.
cluster.name: graylog action.auto_create_index: false
Reinicie el servicio Elasticsearch.
sudo systemctl restart elasticsearch
Configure Elasticsearch para que se inicie automáticamente al iniciar el sistema.
sudo systemctl enable elasticsearch
Espere un minuto para permitir que Elasticsearch se inicie por completo.
Elastisearch ahora debería estar escuchando en el puerto 9200 para atender solicitudes HTTP. Utilice un CURL para comprobar la respuesta.
curl -X GET http://localhost:9200
Asegúrese de que el nombre del clúster se muestre como graylog.
{ "name" : "EHpBH-y", "cluster_name" : "graylog", "cluster_uuid" : "cGXE-wgsT56sBKsDC_TYBw", "version" : { "number" : "6.8.7", "build_flavor" : "oss", "build_type" : "deb", "build_hash" : "c63e621", "build_date" : "2020-02-26T14:38:01.193138Z", "build_snapshot" : false, "lucene_version" : "7.7.2", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }
Verifique el estado del clúster de Elasticsearch.
curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'
Asegúrate de que el estado del clúster sea verde. .
{ "cluster_name" : "graylog", "status" : "green", "timed_out" : false, "number_of_nodes" : 1, "number_of_data_nodes" : 1, "active_primary_shards" : 0, "active_shards" : 0, "relocating_shards" : 0, "initializing_shards" : 0, "unassigned_shards" : 0, "delayed_unassigned_shards" : 0, "number_of_pending_tasks" : 0, "number_of_in_flight_fetch" : 0, "task_max_waiting_in_queue_millis" : 0, "active_shards_percent_as_number" : 100.0 }
Instalar MongoDB
Graylog 3 solo funciona con MongoDB 4.0. Entonces, siga las instrucciones en los enlaces a continuación para instalar MongoDB 4.0, dependiendo de la versión de Debian.
LEER: Cómo instalar MongoDB 4.0 en Debian 10
LEER: Cómo instalar MongoDB 4.0 en Debian 9
Instalar Graylog
El servidor de Graylog acepta y procesa los registros de la máquina y los muestra para las solicitudes que provienen de la interfaz web de Graylog.
Descargue e instale el paquete del repositorio de Graylog.
wget https://packages.graylog2.org/repo/packages/graylog-3.2-repository_latest.deb sudo dpkg -i graylog-3.2-repository_latest.deb
Actualice la memoria caché del repositorio.
sudo apt update
Instale el servidor Graylog usando el comando apt.
sudo apt install -y graylog-server
Establezca un secreto para proteger las contraseñas de los usuarios. Usa el comando pwgen para lo mismo.
pwgen -N 1 -s 96
Salida:
AE9RxeSA6BC6OCYh0zciUV7WMucNfodMhsmjYKOaBpWfQCBTzroa9ld7iOjespZjVwh47BIZFYTkeUD9h04uie2bghqrfShX
Edite el archivo server.conf para comenzar la configuración de graylog.
sudo nano /etc/graylog/server/server.conf
Coloque el secreto como a continuación.
password_secret = OH9wXpsNZVBA8R5vJQSnkhTB1qDOjCxAh3aE3LvXddtfDlZlKYEyGS24BJAiIxI0sbSTSPovTTnhLkkrUvhSSxodTlzDi5gP
Establezca una contraseña hash (sha256) para el usuario raíz de Graylog (el usuario raíz de graylog es administrador).
La contraseña del administrador de Graylog no se puede cambiar mediante una interfaz web. Por lo tanto, debe editar el archivo de configuración para configurarlo.Reemplace su contraseña con la elección de los suyos. Querrá esta contraseña para iniciar sesión en la interfaz web de Graylog.
echo -n yourpassword | sha256sum
Salida:
e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951
Edite el archivo server.conf nuevamente.
sudo nano /etc/graylog/server/server.conf
Coloque la contraseña hash.
root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951
Instalar la interfaz web de Graylog
Edite el archivo server.conf.
sudo nano /etc/graylog/server/server.conf
Modifique las siguientes entradas para habilitar la interfaz web de Graylog. Reemplace 192.168.0.10 con la dirección IP de su sistema.
http_bind_address = 192.168.0.10:9000Si accede a Graylog utilizando una dirección IP pública debido a NAT, actualice los valores a continuación. De lo contrario, sáltelo.
http_external_uri = http://public_ip:9000/
Reinicie el servicio Graylog.
sudo systemctl start graylog-server
Habilite el servidor Graylog para que se inicie automáticamente al arrancar el sistema.
sudo systemctl enable graylog-server
Consulte los registros de inicio del servidor para solucionar problemas de Graylog en caso de que surja un problema.
sudo tail -f /var/log/graylog-server/server.log
Tras el inicio exitoso del servidor Graylog, debería recibir el siguiente mensaje en el archivo de registro.
2020-03-29T23:27:14.057-05:00 INFO [ServerBootstrap] Graylog server up and running.
Acceder a la interfaz web de Graylog
La interfaz web de Graylog ahora estará disponible en el puerto 9000. Entonces, diríjase a su navegador.
http://ip.add.re.ss:9000Inicie sesión con el nombre de usuario admin y la contraseña que configuró en server.conf.
Una vez que haya iniciado sesión, debería ver la página de inicio de Graylog.
Haga clic en Sistema>> Resumen para comprobar el estado del servidor Graylog.
Conclusión
Eso es todo. Espero que haya aprendido a instalar Graylog en Debian 10/Debian 9. Para recibir registros de otras máquinas, deberá configurar las entradas de Graylog y configurar la máquina Linux para enviar registros a Graylog.