Syslog - Syslog

Syslog
Autor (es) original (is) Eric Allman
lançamento inicial Década de 1980
Sistema operacional Tipo Unix
Modelo Log do sistema
Local na rede Internet datatracker .ietf .org / wg / syslog / charter / Edite isso no Wikidata

Em computação , syslog / s ɪ s l do ɒ do ɡ / é um padrão para registo de mensagens . Permite separar o software que gera as mensagens, o sistema que as armazena e o software que as reporta e analisa. Cada mensagem é rotulada com um código de recurso, indicando o tipo de sistema que está gerando a mensagem, e é atribuída a um nível de gravidade.

Os projetistas de sistemas de computador podem usar syslog para gerenciamento de sistema e auditoria de segurança, bem como informações gerais, análises e mensagens de depuração. Uma ampla variedade de dispositivos, como impressoras, roteadores e receptores de mensagens em muitas plataformas, usam o padrão syslog. Isso permite a consolidação de dados de registro de diferentes tipos de sistemas em um repositório central. Existem implementações de syslog para muitos sistemas operacionais.

Ao operar em uma rede, o syslog usa uma arquitetura cliente-servidor onde um servidor syslog escuta e registra as mensagens vindas dos clientes.

História

O Syslog foi desenvolvido na década de 1980 por Eric Allman como parte do projeto Sendmail . Ele foi prontamente adotado por outros aplicativos e desde então se tornou a solução de registro padrão em sistemas do tipo Unix. Uma variedade de implementações também existe em outros sistemas operacionais e é comumente encontrada em dispositivos de rede, como roteadores .

O Syslog funcionava originalmente como um padrão de fato , sem nenhuma especificação oficial publicada, e existiam muitas implementações, algumas das quais eram incompatíveis. A Internet Engineering Task Force documentou o status quo no RFC 3164. Ele foi padronizado pelo RFC 5424.

Várias empresas tentaram reivindicar patentes para aspectos específicos de implementações de syslog. Isso teve pouco efeito sobre o uso e padronização do protocolo.

Componentes da mensagem

As informações fornecidas pelo originador de uma mensagem syslog incluem o código do recurso e o nível de gravidade. O software syslog adiciona informações ao cabeçalho de informações antes de passar a entrada para o receptor syslog. Esses componentes incluem um ID de processo originador, um carimbo de data / hora e o nome do host ou endereço IP do dispositivo.

Instalação

Um código de recurso é usado para especificar o tipo de sistema que está registrando a mensagem. Mensagens com recursos diferentes podem ser tratadas de forma diferente. A lista de instalações disponíveis é definida pela norma:

Código de instalação Palavra-chave Descrição
0 kern Mensagens de kernel
1 do utilizador Mensagens no nível do usuário
2 correspondência Sistema de correio
3 demônio Daemons do sistema
4 auth Mensagens de segurança / autenticação
5 syslog Mensagens geradas internamente pelo syslogd
6 lpr Subsistema de impressora de linha
7 notícia Subsistema de notícias da rede
8 uucp Subsistema UUCP
9 cron Subsistema Cron
10 authpriv Mensagens de segurança / autenticação
11 ftp Daemon FTP
12 ntp Subsistema NTP
13 segurança Auditoria de log
14 console Alerta de registro
15 solaris-cron Daemon de agendamento
16-23 local0 - local7 Instalações usadas localmente

O mapeamento entre o código do recurso e a palavra-chave não é uniforme em diferentes sistemas operacionais e implementações de syslog.

Nível de severidade

A lista de gravidades também é definida pelo padrão:

Valor Gravidade Palavra-chave Palavras-chave obsoletas Descrição Doença
0 Emergência emerg panic O sistema está inutilizável Uma condição de pânico.
1 Alerta alert A ação deve ser tomada imediatamente Uma condição que deve ser corrigida imediatamente, como um banco de dados do sistema corrompido.
2 Crítico crit Condições críticas Erros de dispositivo rígido.
3 Erro err error Condições de erro
4 Aviso warning warn Condições de alerta
5 Perceber notice Condições normais, mas significativas Condições que não são condições de erro, mas que podem exigir tratamento especial.
6 Informativo info Mensagens informativas
7 Depurar debug Mensagens de nível de depuração Mensagens que contêm informações normalmente úteis apenas durante a depuração de um programa.

O significado dos níveis de gravidade diferentes de Emergência e Depuração são relativos ao aplicativo. Por exemplo, se o objetivo do sistema é processar transações para atualizar as informações do saldo da conta do cliente, um erro na etapa final deve ser atribuído ao nível de Alerta. No entanto, um erro que ocorre na tentativa de exibir o código postal do cliente pode ser atribuído ao nível de Erro ou mesmo de Aviso .

O processo do servidor que lida com a exibição de mensagens geralmente inclui todos os níveis mais baixos (mais graves) quando a exibição de níveis menos graves é solicitada. Ou seja, se as mensagens forem separadas por gravidade individual, uma entrada de nível de Aviso também será incluída ao filtrar mensagens de Aviso , Informações e Depuração .

Mensagem

Na RFC 3164, o componente da mensagem (conhecido como MSG) era especificado com os seguintes campos: TAG , que deve ser o nome do programa ou processo que gerou a mensagem, e CONTEÚDO, que contém os detalhes da mensagem.

Descrito no RFC 5424, "MSG é o que era chamado de CONTEÚDO no RFC 3164. O TAG agora faz parte do cabeçalho, mas não como um único campo. O TAG foi dividido em APP-NAME, PROCID e MSGID. Isso não assemelha-se totalmente ao uso do TAG, mas fornece a mesma funcionalidade na maioria dos casos. " Ferramentas populares de syslog, como Rsyslog, estão em conformidade com esse novo padrão.

O campo de conteúdo deve ser codificado em um conjunto de caracteres UTF-8 e os valores de octeto no intervalo de caracteres de controle ASCII tradicional devem ser evitados.

Logger

As mensagens de log geradas podem ser direcionadas a vários destinos, incluindo console , arquivos, servidores syslog remotos ou relés. A maioria das implementações fornece um utilitário de linha de comando, geralmente chamado de logger , bem como uma biblioteca de software , para enviar mensagens ao log.

Para exibir e monitorar os logs coletados, é necessário usar um aplicativo cliente ou acessar o arquivo de log diretamente no sistema. As ferramentas básicas de linha de comando são tail e grep . Os servidores de log podem ser configurados para enviar os logs pela rede (além dos arquivos locais). Algumas implementações incluem programas de relatório para filtragem e exibição de mensagens syslog.

Protocolo de rede

Ao operar em uma rede, o syslog usa uma arquitetura cliente-servidor onde o servidor escuta em uma porta conhecida ou registrada para solicitações de protocolo de clientes. Historicamente, o protocolo de camada de transporte mais comum para o log de rede é o User Datagram Protocol (UDP), com o servidor escutando na porta 514. Como o UDP não tem mecanismos de controle de congestionamento, o suporte para Transport Layer Security é necessário nas implementações e recomendado para uso geral na transmissão Porta 6514 do protocolo de controle (TCP).

Limitações

Como cada processo, aplicativo e sistema operacional foi escrito de forma independente, há pouca uniformidade na carga útil da mensagem de log. Por esse motivo, nenhuma suposição é feita sobre sua formatação ou conteúdo. Uma mensagem syslog é formatada (RFC 5424 fornece a definição do formulário Augmented Backus – Naur (ABNF)), mas seu campo MSG não é.

O protocolo de rede é uma comunicação simplex , sem meio de reconhecer a entrega ao originador.

Panorama

Vários grupos estão trabalhando em padrões de rascunho detalhando o uso de syslog para mais do que apenas registro de eventos de rede e segurança, como seu aplicativo proposto dentro do ambiente de saúde.

Regulamentações, como Sarbanes-Oxley Act , PCI DSS , HIPAA e muitos outros, exigem que as organizações implementem medidas de segurança abrangentes, que geralmente incluem a coleta e análise de logs de muitas fontes diferentes. O formato syslog provou ser eficaz na consolidação de logs, pois existem muitas ferramentas de código aberto e proprietárias para relatórios e análises desses logs. Existem utilitários para a conversão do Log de eventos do Windows e outros formatos de log para syslog.

Os provedores de serviços de segurança gerenciada tentam aplicar técnicas analíticas e algoritmos de inteligência artificial para detectar padrões e alertar os clientes sobre problemas.

Documentos padrão da Internet

O protocolo Syslog é definido por documentos Request for Comments (RFC) publicados pela Internet Engineering Task Force ( padrões da Internet ). A seguir está uma lista de RFCs que definem o protocolo syslog:

  • O protocolo BSD syslog . RFC  3164 .(obsoleto pelo protocolo Syslog . RFC  5424 .)
  • Entrega confiável para syslog . RFC  3195 .
  • O protocolo Syslog . RFC  5424 .
  • Mapeamento de transporte TLS para Syslog . RFC  5425 .
  • Transmissão de mensagens Syslog sobre UDP . RFC  5426 .
  • Convenções textuais para gerenciamento de Syslog . RFC  5427 .
  • Mensagens Syslog assinadas . RFC  5848 .
  • Mapeamento de transporte DTLS (Datagram Transport Layer Security) para Syslog . RFC  6012 .
  • Transmissão de mensagens Syslog sobre TCP . RFC  6587 .

Veja também

Referências

links externos