Como administradores, pessoal de suporte de TI ou gestores da área de redes e sistemas, temos algo fundamental para nos ajudar a acompanhar cada evento que ocorre dentro do sistema, tanto ao nível dos usuários, aplicativos ou do próprio sistema, e estes são os eventos.
Cada evento registra uma série de elementos que nos ajudam a determinar detalhadamente cada atividade com valores como data, hora, ID, usuário e evento ocorrido, permitindo assim uma gestão e administração muito mais centralizadas.
Podemos ver que cada registro pertence a uma categoria diferente, como sistema, segurança, etc.
Em ambientes Linux temos ao nosso dispor o utilitário Rsyslog com o qual será possível gerir estes eventos de uma forma simples e completa.
O que é RsyslogRsyslog (sistema rápido como foguete para log - sistema rápido para processamento de log) é um utilitário projetado para oferecer alto desempenho, excelentes recursos de segurança e um design modular que permite que seja escalonável para atender às necessidades de cada empresa.
O Rsyslog é capaz de aceitar entradas das mais diversas fontes, transformá-las e gerar resultados para diversos destinos, otimizando a gestão de TI.
RSYSLOG é capaz de entregar mais de um milhão de mensagens por segundo para destinos locais quando o processamento limitado é aplicado, incluindo destinos remotos.
Recursos RsyslogAo usar o Rsyslog, teremos recursos como:
- Diretiva $ LocalHostName [nome]: Esta diretiva nos permite sobrescrever o nome do host do sistema com aquele especificado na diretiva. Se a diretiva for fornecida várias vezes, todas, exceto a última, serão ignoradas.
- Adicionado suporte Hadoop HDFS.
- Ele tem um módulo impstat para executar estatísticas periódicas nos contadores Rsyslog.
- Possui o plugin imptcp.
- Inclui um novo tipo de módulo "gerador de string", usado para acelerar o processamento de saída.
- Suporta OSX e Solaris.
- Capacidade de criar analisadores de mensagens personalizados.
- Suporte a multi-conjunto de regras para imudp.
- Nova interface de módulo de saída transacional que fornece desempenho superior.
- Multi-threading
- Suporta protocolos TCP, SSL, TLS, RELP
- Suporta MySQL, PostgreSQL, Oracle e mais
- Filtre qualquer parte da mensagem do syslog
- Formato de saída totalmente configurável
- Adequado para redes de transmissão de classe empresarial
Filtragem RsyslogRsyslog pode filtrar mensagens syslog com base nas propriedades e ações selecionadas, estes filtros são:
- Filers de instalações ou de prioridade
- Filtros baseados em propriedade
- Filtros baseados em expressão
O filtro de instalação é representado pelo subsistema Linux interno que é responsável por produzir os registros, temos as seguintes opções:
- auth / authpriv = São as mensagens produzidas por processos de autenticação
- cron = São registros associados a tarefas cron
- daemon = Estas são mensagens relacionadas aos serviços do sistema em execução
- kernel = Indica mensagens do kernel Linux
- mail = Inclui mensagens do servidor de e-mail
- syslog = São mensagens relacionadas ao syslog ou outros daemons
- lpr = Cobre impressoras ou mensagens de servidor de impressão
- local0 - local7 = Contar mensagens personalizadas sob controle do administrador
- emerg = Emergência - 0
- alert = Alertas - 1
- err = Erros - 3
- warn = Avisos - 4
- aviso = Aviso - 5
- info = Informação - 6
- debbug = Depuração - 7
1. Como configurar e verificar o status do Rsyslog no Linux
Passo 1
O daemon Rsyslog é instalado automaticamente na maioria das distribuições Linux, mas se não, devemos executar os seguintes comandos:
Em sistemas Debian
sudo apt-get install Rsyslog
Em sistemas RedHat ou CentOS
sudo yum install Rsyslog
Passo 2
Podemos verificar o status atual do Rsyslog executando a seguinte linha:
Em distribuições Linux que usam Systemd
systemctl status rsyslog.service
Em versões mais antigas do Linux
service rsyslog status /etc/init.d/rsyslog status
PROLONGAR
etapa 3
Caso o status do serviço Rsyslog seja inativo, podemos iniciá-lo executando o seguinte:
Em novas versões do Linux
systemctl start rsyslog.service
Em versões mais antigas do Linux
service rsyslog start /etc/init.d/rsyslog start
PROLONGAR
2. Configuração Rsyslog no Linux
Para configurar um programa rsyslog para ser executado no modo servidor, devemos editar o arquivo de configuração no diretório /etc/rsyslog.conf.
Passo 1
Podemos acessar usando o editor desejado:
sudo nano /etc/rsyslog.conf
PROLONGAR
Passo 2
Lá, faremos as seguintes alterações. Localize e descomente, removendo o sinal (#), das seguintes linhas para permitir a recepção de mensagens de log UDP na porta 514. Por padrão, a porta UDP é usada pelo syslog para enviar e receber mensagens:
$ ModLoad imudp $ UDPServerRun 514etapa 3
O protocolo UDP não é confiável para trocar dados em uma rede, portanto, podemos configurar o Rsyslog para enviar mensagens de log a um servidor remoto por meio do protocolo TCP. Para habilitar o protocolo de recepção TCP, removeremos as seguintes linhas:
$ ModLoad imtcp $ InputTCPServerRun 514Passo 4
Isso permitirá que o daemon rsyslog se conecte e escute em um soquete TCP na porta 514.
Ambos os protocolos podem ser habilitados em rsyslog para rodar simultaneamente no Linux.
Se for necessário especificar quais remetentes têm permissão para acessar o daemon rsyslog, devemos adicionar as seguintes linhas:
$ AllowedSender TCP, 127.0.0.1, 192.168.0.5/24, * .domain.com
PROLONGAR
Etapa 5
Neste ponto, será necessário criar um novo modelo que será analisado pelo daemon rsyslog antes de receber os logs de entrada. Este modelo deve informar ao servidor Rsyslog local onde armazenar as mensagens de log de entrada. Este modelo irá depois da linha $ AllowedSender:
$ template Incoming-logs, "/ var / log /% HOSTNAME% /% PROGRAMNAME% .log" *. *? Incoming-logs & ~
PROLONGAR
Etapa 6
Para registrar apenas as mensagens geradas pelo kern, adicionaremos o seguinte. Com o exposto, os registros recebidos são analisados pelo template e ficarão armazenados no sistema de arquivos local no diretório / var / log /, no caminho:% HOSTNAME% e% PROGRAMNAME%.
kern. *? Logs de entradaEtapa 7
Podemos salvar as alterações usando a seguinte combinação de teclas:
Ctrl + O
Saímos do editor usando:
Ctrl + X
3. Reinicie o serviço e verifique as portas Rsyslog no Linux
Passo 1
Quando fazemos qualquer tipo de alteração, devemos reiniciar o serviço executando uma das seguintes opções:
sudo serviço rsyslog reiniciar sudo systemctl reiniciar RsyslogPasso 2
Para verificar as portas usadas pelo Rsyslog, executaremos o seguinte:
sudo netstat -tulpn | grep rsyslogetapa 3
Como já indicamos, a porta utilizada será 514, devemos habilitá-la no firewall para uso com as seguintes linhas.
No RedHat e CentOS
firewall-cmd --permanent --add-port = 514 / tcp firewall-cmd -reload
No Debian
ufw allow 514 / tcp ufw allow 514 / udpSe usarmos IPTables:
iptables -A ENTRADA -p tcp -m tcp --dport 514 -j ACEITAR iptables -A ENTRADA -p udp --dport 514 -j ACEITAR
PROLONGAR
Desta forma, instalamos o Rsyslog no Linux para gerenciar os vários tipos de logs que são gerados constantemente nele.