GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Graylog 3.0 en CentOS 7 / RHEL 7

Graylog es una herramienta de administración de registros de código abierto que lo ayuda a recopilar, indexar y analizar los registros de cualquier máquina de manera centralizada. Esta guía lo ayudará a instalar Graylog en CentOS 7 / RHEL 7.

Componentes

  1. MongoDB:ser una base de datos para almacenar las configuraciones y la metainformación.
  2. Elasticsearch:almacena los mensajes de registro recibidos del servidor Graylog y proporciona una función para buscarlos cuando sea necesario. Elasticsearch es un traficante de recursos ya que indexa datos, así que asigne más memoria y use discos SAS o SAN.
  3. Servidor Graylog:analiza los registros que provienen de varias entradas y proporciona una interfaz web integrada para manejar esos registros.

Requisitos

Asegúrese de que su sistema esté configurado con el repositorio EPEL.

Instale los paquetes necesarios para la instalación de Graylog.

yum -y instalar wget pwgen

Elasticsearch requiere que Java esté instalado en la máquina. Entonces, instale OpenJDK u Oracle JDK.

yum install -y java-1.8.0-openjdk-headless

Verifique la versión de Java.

java-versión

Salida:

openjdk versión "1.8.0_191" OpenJDK Runtime Environment (compilación 1.8.0_191-b12)OpenJDK 64-Bit Server VM (compilación 25.191-b12, modo mixto)

Instalar Elasticsearch

Elasticsearch es uno de los componentes importantes en la configuración de Graylog. Almacena los datos provenientes de la entrada de Graylog y muestra los mensajes cada vez que un usuario lo solicita a través de la interfaz web integrada de Graylog.

Elasticseach se usa principalmente aquí para indexar los datos/registros y proporcionar la funcionalidad de búsqueda cuando la interfaz web de Graylog solicita cualquier información.

Esta guía cubre la configuración básica requerida para Graylog.

Importe la clave de firma GPG antes de la instalación.

rpm --importar https://artifacts.elastic.co/GPG-KEY-elasticsearch

Cree un archivo de repositorio para obtener la última versión del paquete Elasticsearch del repositorio oficial.

vi /etc/yum.repos.d/elasticsearch.repo

Agregue el contenido a continuación al archivo anterior.

[elasticsearch-6.x]name=Repositorio de Elasticsearch para paquetes 6.xbaseurl=https://artifacts.elastic.co/packages/6.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/ GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-md

Ahora, instale el paquete Elasticsearch usando el comando yum.

yum install -y elasticsearch

Vuelva a cargar el demonio systemctl y habilite que Elasticsearch se inicie automáticamente al iniciar el sistema.

systemctl daemon-reloadsystemctl habilitar búsqueda elástica

Para que Elasticsearch funcione con la configuración de Graylog, debemos establecer el nombre del clúster en graylog . Edite el archivo elasticsearch.yml.

vi /etc/elasticsearch/elasticsearch.yml

Actualícelo como se muestra a continuación.

cluster.name:graylog 

Reinicie Elasticsearch.

systemctl reiniciar elasticsearch

Espere un minuto para permitir que Elasticsearch se reinicie por completo. Elastisearch ahora debería estar escuchando 9200 para procesar solicitudes HTTP. Utilice el comando CURL para comprobar la respuesta.

curl -X OBTENER http://localhost:9200

El nombre del clúster debe ser graylog.

{ "name" :"DF8QK3-", "cluster_name" :"graylog", "cluster_uuid" :"_wAgUfN9RJeQ0npCKBswVA", "version" :{ "number" :"6.6.0", "build_flavor" :"predeterminado ", "build_type":"rpm", "build_hash":"a9861f4", "build_date":"2019-01-24T11:27:09.439740Z", "build_snapshot":falso, "lucene_version":"7.6.0" , "minimum_wire_compatibility_version" :"5.6.0", "minimum_index_compatibility_version" :"5.0.0" }, "tagline" :"Ya sabes, para la búsqueda"}

Realice una verificación de 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_shard/0.} 

Instalar MongoDB

MongoDB actúa como una base de datos para almacenar las configuraciones y la metainformación. Usaremos el repositorio oficial de MongoDB para obtener la última versión de MongoDB.

vi /etc/yum.repos.d/mongodb-org-4.0.repo

Agregue información del repositorio al archivo anterior.

[mongodb-org-4.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/gpgcheck=1enabled=1gpgkey=https:// www.mongodb.org/static/pgp/server-4.0.asc

Instale la edición comunitaria de MongoDB usando el siguiente comando.

yum install -y mongodb-org

Inicie el servicio MongoDB y actívelo para el inicio del sistema.

systemctl iniciar mongodsystemctl habilitar mongod

Instalar Graylog

El servidor de Graylog acepta y procesa los mensajes de registro provenientes de las diversas entradas, muestra datos a las solicitudes que provienen de la interfaz web de Graylog.

Descargue e instale el repositorio graylog 3.x.

rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-3.0-repository_latest.rpm

Instale el servidor Graylog usando el siguiente comando.

yum -y instalar graylog-servidor

Edite el archivo server.conf para comenzar la configuración de graylog.

vi /etc/graylog/server/server.conf

Use el siguiente comando para crear un secreto

pwgen -N 1 -s 96

Salida:

OH9wXpsNZVBA8R5vJQSnkhTB1qDOjCxAh3aE3LvXddtfDlZlKYEyGS24BJAiIxI0sbSTSPovTTnhLkkrUvhSSxodTlzDi5gP

Coloque el secreto como se muestra a continuación en server.conf

password_secret = OH9wXpsNZVBA8R5vJQSnkhTB1qDOjCxAh3aE3LvXddtfDlZlKYEyGS24BJAiIxI0sbSTSPovTTnhLkkrUvhSSxodTlzDi5gP 

Establezca la contraseña hash para el usuario raíz, es decir, administrador de graylog. Necesitará esta contraseña para iniciar sesión en la web de graylog.

Si alguna vez desea cambiar/restablecer la contraseña olvidada del administrador, puede editar/actualizar el server.conf con una contraseña hash.

Genere una contraseña hash usando el siguiente comando. Reemplace su contraseña con la elección de los tuyos.

echo -n su contraseña | sha256sum

Salida:

e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Coloque la contraseña hash.

root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951 

Puede configurar una dirección de correo electrónico para el usuario administrador.

root_email ="[email protected] "

Establezca la zona horaria del usuario raíz (administrador).

root_timezone =UTC 

Establezca solo un nodo maestro definiendo la siguiente variable, la configuración predeterminada es verdadera.

Si este servidor es su segundo nodo Graylog en su entorno, configúrelo en falso para convertir este nodo en esclavo. El nodo maestro realiza algunas tareas periódicas que los nodos esclavos no realizarán.

is_master =verdadero 

Establezca el número de mensajes de registro para mantener por índice. Se recomienda tener varios índices más pequeños en lugar de más grandes.

elasticsearch_max_docs_per_index =20000000 

El siguiente parámetro define tener un número total de índices. Si se alcanza este número, se eliminará el índice antiguo.

elasticsearch_max_number_of_indices =20 

La configuración de fragmentos se basa en la cantidad de nodos en el clúster de Elasticsearch en particular. Si solo tiene un nodo, configúrelo como 1.

elasticsearch_shards =1 

Esto define el número de réplicas para sus índices. Si solo tiene un nodo en el clúster de Elasticsearch, configúrelo como 0.

elasticsearch_replicas =0 

Instalar la interfaz web de Graylog

A partir de la versión 2.x de Graylog, la interfaz web es atendida directamente por el servidor de Graylog. Habilite la interfaz web de Graylog editando el archivo server.conf.

vi /etc/graylog/server/server.conf

Modifique las entradas para permitir que Graylog Web Interface se conecte al servidor Graylog. Reemplace 192.168.1.10 con la dirección IP de su sistema.

http_bind_address =192.168.1.10 :9000

Reinicie el servicio Graylog.

systemctl daemon-reloadsystemctl reiniciar graylog-server

Haga que el servidor Graylog se inicie automáticamente al iniciar el sistema.

systemctl habilitar servidor graylog

Puede consultar los registros de inicio del servidor; le será útil para solucionar cualquier problema de Graylog.

tailf /var/log/graylog-servidor/servidor.log

Si todo va bien, debería ver el siguiente mensaje en el archivo server.log.

2019-02-25T21:00:23.157+05:30 INFO [ServerBootstrap] Servidor Graylog en funcionamiento.

Cortafuegos

En CentOS 7/RHEL 7, las reglas de firewall están configuradas para bloquear la mayor parte del tráfico proveniente de las máquinas externas de manera predeterminada. Deberá agregar reglas de permiso para que Graylog funcione correctamente.

cortafuegos-cmd --permanente --add-port=9000/tcp

Vuelva a cargar firewalld para aplicar las nuevas reglas.

firewall-cmd --recargar

Acceder a la interfaz web de Graylog

La interfaz web ahora escuchará en el puerto 9000. Apunte su navegador a.

http://ip.add.re.ss:9000

Inicie sesión con el nombre de usuario admin y la contraseña que configuró en root_password_sha2 en servidor.conf .

Una vez que haya iniciado sesión, verá la página de inicio.

Haga clic en Sistema>> Resumen para conocer el estado del servidor Graylog.

Crear entradas de Graylog

La entrada de Graylog debe configurarse para recibir los registros de fuentes externas, es decir, syslog o cualquier sistema de registro. Para este ejemplo, configuraremos una entrada para recibir registros de syslog en el número de puerto UDP 514.

Pero hay un problema. Si comienza a probar una entrada en uno de los puertos privilegiados, cualquier número de puerto TCP/UDP por debajo de 1024, verá un error de permiso denegado en los registros de Graylog.

Para resolver el problema, crearemos una entrada para comenzar en el puerto 1514 y redirigiremos el tráfico del 514 al 1514 con reglas de firewall.

Haga clic en Sistema>> Entradas>> seleccione UDP de Syslog y luego haga clic en Iniciar nueva entrada.

Complete los valores que se muestran a continuación.

Nodo: Seleccione su nodo Graylog

Título: Nombra tu entrada

Dirección de enlace: 0.0.0.0 (Dejar el predeterminado)

Puerto: 1514

Asegúrese de que la entrada Syslog creada esté en estado de ejecución.

Configurar Rsyslog

Una vez que haya creado las entradas, configure Rsyslog o reenvíe los registros del sistema a su servidor Graylog.

Edite el archivo de configuración de Rsyslog.

vi /etc/rsyslog.conf

La configuración típica de Rsyslog se verá a continuación para enviar registros en UDP 514.

Si no desea utilizar UDP 514 y desea enviar registros directamente a UDP 1514 de Graylog, puede cambiar el número de puerto en el archivo de configuración de Rsyslog
*.info;mail.none;authpriv.none;cron. ninguno @192.168.1.10:514

Reinicie el servicio Rsyslog para enviar registros.

systemctl reiniciar rsyslog

Cortafuegos

Configure el firewall según la configuración de Rsyslog que realizó en el paso anterior.

Puerto 514

Ejecute los siguientes comandos en el servidor Graylog para redirigir el tráfico que llega del puerto UDP 514 al UDP 1514 de la entrada de Graylog.

firewall-cmd --add-masquerade --permanentfirewall-cmd --add-forward-port=port=514:proto=udp:toport=1514 --permanentfirewall-cmd --recargar

Puerto 1514

Ejecute los siguientes comandos en el servidor Graylog para permitir que el número de puerto UDP 1514 en el firewall reciba registros de Rsyslog.

firewall-cmd --permanente --add-port=1514/udpfirewall-cmd --recargar

Ver registros usando Graylog

Espere unos minutos. Debería comenzar a recibir mensajes de registro de la máquina cliente cuando se genera el evento.

La siguiente captura de pantalla muestra los registros recibidos por Graylog (consola de Graylog>> Buscar h ).

Conclusión

Ha instalado correctamente Graylog 3.0 en CentOS 7/RHEL 7 y ha configurado Graylog para recibir registros de Rsyslog de fuentes externas. Como lectura adicional, puede intentar configurar Nginx o Apache como un proxy inverso y configurar HTTPS para la interfaz web de Graylog.


Cent OS
  1. Cómo instalar phpMyAdmin en RHEL 8 / CentOS 8

  2. Cómo instalar Graylog2 en CentOS 7 / RHEL 7 – Uso de la fuente

  3. Cómo instalar Graylog2 en CentOS 7 / RHEL 7

  4. Cómo instalar Elasticsearch en CentOS 8 / RHEL 8

  5. Cómo instalar Elasticsearch en CentOS/RHEL 8

Cómo instalar mongodb en RHEL 8 / CentOS 8

Cómo instalar Elasticsearch en CentOS 7

Cómo instalar Elasticsearch en CentOS 8

Cómo instalar Graylog con Elasticsearch en CentOS 8

Cómo instalar Graylog en CentOS 8 / RHEL 8

Cómo instalar Graylog en CentOS 7