Como monitorar arquivos de Log com Graylog2 no Debian 9

Como monitorar arquivos de Log com Graylog2 no Debian 9

O trabalho em equipe, Mas mais simples, mais agradável e mais produtivo.

Graylog é uma ferramenta de gerenciamento de log de livre e de código aberto baseada em Java, Elasticsearch e MongoDB que pode ser usado para coletar, indexar e analisar qualquer log de servidor de um local centralizado. Você pode facilmente monitorar o SSH logins e atividade incomum para depuração de aplicativos e logs usando Graylog. Graylog fornece uma linguagem de consulta poderosa, habilidades de alerta, um pipeline de processamento para transformação de dados e muito mais. Você pode estender a funcionalidade de Graylog através de uma API REST e Complementos.

Graylog é constituído por três componentes:

  1. Elasticsearch: Armazena todas a entrada mensagens e fornecer um mecanismo de buscando.
  2. MongoDB: É usada para o banco de dados, armazena as configurações e informações de meta.
  3. Graylog servidor: ele recebe e processa mensagens de diversos insumos e fornecer uma interface web para monitoramento e análise.

Neste tutorial, Vamos explicar como instalar o Graylog2 no Debian 9 Servidor.

Pré-requisito

  • Um servidor rodando Debian 9.
  • Mínimo 4 GB DE RAM.
  • Um endereço IP estático 192.168.0.187 instalação no seu servidor.

1 Instalar pacotes necessários

Antes de começar, Você precisará instalar o Java 8 e outros pacotes necessários para o seu sistema. Não todas as necessárias pacotes estão disponíveis no Debian 9 repositório padrão, Então você vai precisar adicionar Backports do Debian para a lista de origem do pacote. Primeiro, Faça o login com o usuário root e criar um arquivo de backport.list:

nano /etc/apt/sources.list.d/backport.list

Adicione a seguinte linha:

deb http://ftp.debian.org/debian jessie-backports main

Salve o arquivo quando terminar, Atualize seu sistema com o comando a seguir:

apt-get update -y
apt-get upgrade -y

Uma vez que seu sistema está atualizado, Instale todos os pacotes com o comando a seguir:

apt-get install apt-transporte-https openjdk-8-jre-headless uuid-runtime pwgen -y

Uma vez que todos os pacotes necessários estão instalados., Você pode continuar a instalar MongoDB.

2 Instalar MongoDB

MongoDB é necessário para armazenar a configuração e informações de meta. MongoDB está disponível no Debian 9 repositório padrão, Então você pode instalar MongoDB, apenas executando o seguinte comando:

apt-get install servidor mongodb - y

Uma vez instalado o MongoDB, Você pode proceder para instalar Elasticsearch.

3 Instalar o Elasticsearch

Elasticsearch é um servidor de pesquisa que armazena todos os logs enviados pelo servidor Graylog atos e exibe as mensagens sempre que você solicitar. Elasticsearch não está disponível no Debian 9 repositório padrão. Você precisará adicionar o repositório do Elasticsearch para a origem do pacote Debian.

Primeiro, Faça o download e adicionar a chave GPG de Elasticsearch com o seguinte comando:

wget - q – https://packages.Elastic.co/GPG-Key-elasticsearch | apt-chave Adicionar –

Na próxima, Crie um arquivo Elasticsearch. repo com o seguinte comando:

nano /etc/apt/sources.list.d/elasticsearch.list

Adicione a seguinte linha:

Deb https://packages.elastic.co/elasticsearch/2.x/debian estável principal

Salve o arquivo quando você está acabamento, em seguida, atualize o repositório executando o seguinte comando:

apt-get update -y

Na próxima, Instale Elasticsearch executando o seguinte comando:

apt-get install elasticsearch -y

Uma vez instalado Elasticsearch, Você precisará modificar o arquivo de configuração principal do Elasticsearch:

nano /etc/elasticsearch/elasticsearch.yml

Faça as seguintes alterações:

cluster.Name: graylog network.host: 192.168.0.187
discovery.zen.ping.timeout: 10s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.0.187:9300"]

Salve e feche o arquivo quando terminar, em seguida, iniciar o serviço de Elasticsearch e habilitá-lo para iniciar no boot:

systemctl início elasticsearch
systemctl habilitar elasticsearch

Depois de alguns segundos, Execute o seguinte para testar esse Elasticsearch está funcionando corretamente:

curl - XGET ' http://192.168.0.187:9200/_cluster/saúde? muito = true’

Certifique-se de que a saída mostra o status do cluster como “verde”:

{
  "cluster_name" : "graylog",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 1,
  "active_shards" : 1,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 1,
  "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" : 50.0
}

Uma vez que o Elasticsearch está instalado e funcionando bem, Você pode prosseguir para a próxima etapa.

4 Instalar o Graylog

Graylog não está disponível no Debian 9 repositório padrão, Então você precisará baixar e instalar Graylog 2 repositório de primeira. Você pode fazer isso executando o seguinte comando:

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

Uma vez instalado o repositório, atualizar o repositório e instale o servidor de Graylog com o seguinte comando:

apt-get update -y
apt-get install graylog-servidor - y

Depois de instalar o Graylog, Você precisará definir um segredo para proteger as senhas do usuário e também definir uma senha de hash (sha256) para o usuário root.

Primeiro, gere password_secret com o seguinte comando:

pwgen -N 1 -s 96

Você deverá ver a seguinte saída:

TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC

Na próxima, gere senha de hash para o usuário root com o comando a seguir:

echo - n youradminpassword | sha256sum

Você deverá ver a seguinte saída:

e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee

Nota: Lembre-se tanto chave de senha, Porque tanto chave será necessário configurado no Server. conf.

Na próxima, Você precisará modificar o arquivo de configuração principal do servidor de Graylog localizado no/etc/graylog/servidor/diretório:

nano /etc/graylog/server/server.conf

Faça as seguintes alterações:

is_master = true node_id_file = /etc/graylog/server/node-id ###past-sua-senha-segredo-aqui # # # password_secret = TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC root_username = admin ###past-your-root-hash-password-here### root_password_sha2 = e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee root_timezone = plugin_dir UTC = /usr/share/graylog-server/plugin rest_listen_uri = http://0.0.0.0:9000/api/rest_enable_cors = web_listen_uri verdade = http://0.0.0.0:9000 / rotation_strategy = contagem elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 7
retention_strategy = excluir elasticsearch_shards = 4
elasticsearch_replicas = 1
elasticsearch_index_prefix = graylog allow_leading_wildcard_searches = true allow_highlighting = false elasticsearch_cluster_name = graylog elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.0.187: elasticsearch_http_enabled 9300 = false elasticsearch_network_host = 0.0.00
elasticsearch_discovery_initial_state_timeout = 3s elasticsearch_analyzer = padrão output_batch_size = 500
output_flush_interval = 1
output_fault_count_threshold = 5
output_fault_penalty_seconds = 30
processbuffer_processors = 5
outputbuffer_processors = 3
processor_wait_strategy = bloqueio ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = bloqueio message_journal_enabled = true message_journal_dir = /var/lib/graylog-server/journal async_eventbus_processors = 2
lb_recognition_period_seconds = 3
alert_check_interval = 60
mongodb_uri = mongodb://localhost/graylog mongodb_max_connections = 1000
mongodb_threads_allowed_to_block_multiplier = 5
content_packs_dir = /usr/share/graylog-server/contentpacks content_packs_auto_load = grok-patterns.json proxied_requests_thread_pool_size = 32

Salve e feche o arquivo quando terminar, em seguida, iniciar o serviço de Graylog e habilitá-lo para iniciar no boot:

graylog-servidor de início de systemctl
systemctl permitir graylog-servidor

Uma vez terminado, Você pode prosseguir para a próxima etapa

5 Configurar o Firewall

Por padrão, Graylog interface de web está escutando na porta 9000, Então você vai precisar permitir que a porta 9000 através de firewall UFW. O firewall UFW não está instalado no Debian 9. Assim, você precisará instalá-lo primeiro. Você pode instalá-lo executando o seguinte comando:

apt-get install PFM -y

Uma vez instalado o UFW, habilitá-lo executando o seguinte comando;

UFW enable

Na próxima, permitir que a porta 9000 através de firewall UFW executando o seguinte comando:

UFW permitem 9000

Você pode verificar o status do firewall UFW qualquer momento executando o seguinte comando.

UFW status

Uma vez que o firewall está configurado, Você pode prosseguir para a próxima etapa.

6 Interface de acesso Web Graylog

Graylog interface de web está escutando na porta 9000. Agora, Abra seu navegador web e digite a URL http://192.168.0.187:9000, Você deverá ver a seguinte tela:

Graylog Interface

Faça o login com o nome de usuário “admin” e a senha que você configurou no root_password_sha2 no Server. conf. Você deverá ver a seguinte tela:

Graylog introdução

Na próxima, Você precisará adicionar a entrada para receber a mensagem do syslog usando o UDP. Para adicionar a entrada, Clique em sistema-> Selecione entradas-> Syslog UDP-> Clique no botão de entrada novo lançamento, Você deverá ver a seguinte tela:

Adicionar fonte de entrada em Graylog

Preencher todos os detalhes tais como título, Porto, Vincular o endereço e finalmente clique no botão salvar, Você deverá ver a seguinte tela:

Detalhe de fonte de registro

Agora o servidor Graylog receberá os logs do sistema usando a porta 8514 do cliente ou servidor.

No sistema do cliente, Você precisará configurar o rsyslog para que ele irá enviar as mensagens de logs do sistema para o servidor de Graylog. Você pode fazer isso editando o arquivo rsyslog.conf:

nano /etc/rsyslog.conf.

Adicione as seguintes linhas:

# fornece UDP syslog recepção $ModLoad imudp $UDPServerRun 8514
$modelo GRAYLOGRFC5424,"%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%n"
*.* @192.168.0.187:8514; GRAYLOGRFC5424

Salve o arquivo e reinicie o serviço de rsyslog para aplicar essas alterações:

systemctl reiniciar rsyslog

Na próxima, no servidor Graylog, clique sobre o “Graylog fontes” Você pode ver o log de ssh com tentativas de login na tela a seguir.

Tentativas de login monitor com Graylog

Conclusão

Parabéns! correctamente instalado e configurado o servidor Graylog no Debian 9. Agora você pode facilmente ver os logs e análise dos logs do sistema de uma localização central. Você também pode personalizar Graylog e enviar um outro tipo de registros de acordo com sua necessidade. Você pode obter mais informações a partir da página de documentação Graylog http://docs.graylog.org/en/2.2/pages/getting_started.html. Sinta-se livre para comentar-me se você tiver alguma dúvida.

Fonte

Uma Resposta

  1. Nathaniel Simch de Morais

Deixar uma resposta