Tutorial de syslog

Tutorial de syslog

“Syslog é uma maneira de consolidar logs de vários sistemas para um servidor syslog remoto. O servidor syslog tem três componentes principais. O primeiro é um ouvinte que utiliza UDP sobre a porta 514 para reunir dados do syslog. Em seguida, é o banco de dados que armazena os dados de syslog gerados e, finalmente, o software de gerenciamento e filtragem que permite filtrar os dados do syslog para solução rápida de problemas.

Como administrador do sistema, entender como o syslog funciona e como configurar máquinas clientes para canalizar seus dados syslog para o servidor remoto é útil. Este guia discute o syslog no Linux e oferece etapas para consolidar logs para uma máquina remota.”

Entendendo o syslog

Syslog é um protocolo que se comunica usando a porta 514 via UDP e permite que os hosts transmitam logs para servidores syslog sobre as redes IP. O trabalho do servidor syslog é monitorar e responder às notificações syslog que recebe.

Com isso, um administrador pode ter controle central de logs de vários clientes, de modo que eles possam rastrear rapidamente um erro na máquina de um cliente e, com base na mensagem de log gerada, solucionar problemas.

Os clientes syslog geram mensagens syslog que eles enviam para o servidor syslog. A mensagem tem três partes principais.

  1. Prioridade - Representa a gravidade e a instalação da mensagem. O valor da prioridade determina a prioridade do log dado. Usando -o, você pode filtrar os logs com base no valor da prioridade.
  2. Cabeçalho - Representa o carimbo de data e hora do log e o nome da máquina host/cliente enviando a mensagem de log.
  3. Mensagem - Representa a mensagem de log real que um administrador visualizará ao solucionar um erro. A mensagem inclui detalhes como endereços IP do host, gravidade e mensagem do evento.

Vamos ter um exemplo de mensagem syslog e identificar suas várias partes.

<34> 2 2022-10-3T10: 30: 35.004Z Linuxhint su - Id12 - Bom'su Root 'falhou para Linuxhint on/dev/pts/4

No exposto, começaremos da esquerda. O 34 representa o valor da prioridade para a mensagem. 2 é o número da versão para a mensagem de log. Próximo a ele está o Timestamp ISO, seguido pelo nome de anfitrião. Em seguida, temos o específico aplicativo que desencadeou o erro e seu PID. Por fim, temos o ID da mensagem do evento e a mensagem de log.

Trabalhando com syslog

Cada sistema gera logs para eventos que causam um erro, como o fechamento aleatório de um aplicativo. Os toros para a máquina local são armazenados no /var/log, e você pode listar o conteúdo para ver os vários

registro de arquivos e diretórios para o seu sistema usando o comando ls.

Você notará na imagem acima que temos o arquivo de log chamado syslog. Ele contém os logs do seu sistema; Nesse caso, é para os sistemas Ubuntu/Debian. Para Chapéu vermelho, você pode encontrar mensagens em vez de syslog.

Para visualizar os logs do sistema, abra o arquivo de log em tempo real usando o Comando da cauda. Para Debian/Ubuntu, use o comando abaixo.

$ sudo cauda -f/var/log/syslog

Para máquinas clientes, as regras para onde enviar o syslog estão contidas no rsyslog arquivo de configuração. Você deve editar este arquivo de configuração para definir uma máquina para transmitir seus arquivos de log para um determinado servidor syslog.

Trabalhando com o arquivo de configuração do RSYSLOG

Você pode visualizar este arquivo de configuração usando um editor de escolha. Vamos abri -lo usando o Nano editor.

$ sudo nano /etc /rsyslog.conf

Abaixo está como a aparência do arquivo de configuração.

Quaisquer regras definidas para o seu syslog estarão contidas neste arquivo, incluindo o servidor syslog e seu endereço IP. Vamos criar um servidor syslog em uma máquina remota e transmitir os logs de nossa máquina cliente.

Configurando um servidor syslog

Para este exemplo, estamos usando o Ubuntu 22.04 como nosso servidor.

Primeiro, verifique se você tem o rsyslog instalado por verificando sua versão. Se não estiver instalado, instale -o usando apt.

$ rsysLogd -v

A próxima coisa é abrir o arquivo de configuração do RSYSLOG usando o editor Nano.

$ sudo nano /etc /rsyslog.conf

Localize o módulo e a entrada para TCP. Em seguida, descommentá -los removendo o # e adicionando a linha abaixo para que seu arquivo de configuração apareça como o da imagem abaixo.

$ model nome do modelo ”/var/log/%hostname%/syslog.registro"
*.* ?NOME DO ARQUIVO

Depois de editar o arquivo de configuração, reinicie o rsyslog

$ sudo systemctl reiniciar rsyslog.serviço

O último passo é verificar se o rsyslog está ativo e ouvindo na porta UDP 514. Use o comando abaixo para verificar.

$ sudo netstat -pnlt

Configurando o cliente

Abra a máquina cliente e verifique se tem rsyslog Verificando a versão.

Em seguida, abra o arquivo de configuração do RSYSLOG.

$ sudo nano /etc /rsyslog.conf

Depois de abrir, adicione o endereço IP do seu servidor usando o formato abaixo.

*.* @@: 514

Reinicie e habilite o rsyslog

$ sudo systemctl reiniciar rsyslog
$ sudo systemctl ativar rsyslog

Vamos testar o syslog registrando uma mensagem aleatória que deve refletir no servidor syslog do cliente.

Abra o cliente remoto e visualize o syslog para o cliente em tempo real. A partir da imagem abaixo, podemos ver a mensagem registrada do cliente confirmando que nosso servidor remoto syslog está funcionando.

Embrulhar

Este guia apresentou um tutorial prático sobre como começar com o syslog. Vimos como ler uma mensagem syslog e configurar uma arquitetura cliente-servidor para syslog. É isso.