“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.
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.