Syslog-NG – Configurando um servidor de logs

Post original em Viva o Linux

Autor: Rik <ric.galossi at gmail.com> Data: 30/07/2012

Instalação e configuração

Instalando o servidor de logs

Pessoal, hoje iremos configurar um servidor de logs em nossa rede.

Esta é uma funcionalidade extremamente interessante de configurarmos, pois é um item tão importante que é um dos requisitos da norma ISSO/IEC 27002:2005.

Imaginem que o seu servidor foi invadido e o atacante apagou os logs do servidor, se você possui um servidor de logs em sua rede, você vai poder realizar a análise dos logs do servidor que foi invadido e poder entender um pouco melhor o que aconteceu.

Então vamos lá pessoal, este é um item bem fácil de configurar, no seu servidor de logs instale o syslog-ng. Em distribuições baseadas no Debian, execute:

# aptitude install syslog-ng

O padrão do Debian é o rsyslog, então ele vai perguntar se você quer removê-lo. Pressione “Y” para confirmar e depois para instalar.

Configuração

Depois que o Syslog-ng estiver instalado, vá no diretório dele para editar seu arquivo de configuração:

# cd /etc/syslog-ng
# pico syslog-ng.conf

No campo SOURCE, você vai adicionar a seguinte linha para definir o nome do source e protocolo utilizado para realizar a transferência dos logs:

source log_redeinterna { udp();};

Iremos utilizar o protocolo UDP para gerar menos tráfego na rede, agora iremos configurar as máquinas remotas, no campo FILTER adicione a seguinte linha:

filter f_maq113 { netmask(192.168.0.113); };

Aqui coloquei “f_maq113”, pois o IP da minha máquina é final 113, mas você pode ficar à vontade para organizar do jeito que quiser. Ou também pode ser:

filter f_maq113 { host(“poseidon”); };   # Onde “poseidon” é o nome da minha máquina.

Você ainda pode fazer um filtro mais específico, onde só os logs que contém a palavra “sshd” serão encaminhados para nosso servidor de logs:

filter f_maq115_ssh { netmask(192.168.0.115) and match(“sshd”); };

Obs.: Lembrando que você pode substituir o “netmask” da regra por “host” e especificar o nome da máquina.

Agora, precisamos dizer ao Syslog onde ele irá armazenar os logs que serão enviados pra ele, no campo DESTINATION adicione as seguintes linhas:

destination d_maq113 { file(“/var/log/maq113.log”); };destination d_maq115_ssh { file(“/var/log/maq115_ssh.log”); };

Percebam que o nome do “destination” segue a mesma lógica dos “filter’s d_maq113”, pois o final do IP termina com 113.

Agora que já configuramos nosso filter e nosso destination, precisamos somente “ativar” a configuração com o parâmetro log, no campo LOG adicione as seguintes linhas:

log { source(log_redeinterna); filter(f_maq113); destination(d_maq113); };
log { source(log_redeinterna); filter(f_maq115_ssh); destination(d_maq115_ssh); };

Salve o arquivo e reinicie o Syslog-ng:

# /etc/init.d/syslog-ng restart

Configuração dos clientes

Depois deste pequeno trabalho, precisamos configurar nossos clientes (maq113 e maq115_ssh)

Instale o Syslog-ng no cliente, assim como no servidor:

# aptitude install syslog-ng

Agora, vamos configurar nosso cliente:

# cd /etc/syslog-ng
# pico syslog-ng

Adicione a linha abaixo no campo DESTINATION:

destination servidor_log { udp(“192.168.0.10” port(514)); };

Bem simples, não é?

Esta linha é onde acontece a mágica, ela manda uma cópia de todos os logs para o nosso servidor de logs, que é o IP “192.168.0.10” na porta padrão 514.

Se você não quiser que ele mande todos os logs para o servidor, você pode criar um filtro especificando o que quer mandar, como é mostrado a baixo:

filter f_servidor_log { level(info, warn, err, crit) and facility(auth, authpriv, daemon, mail, news, cron, user); };

Desse jeito, você pode personalizar de acordo com sua necessidade, depois é só adicionar a linha de log abaixo no campo LOG do syslog-ng:

log { source(src); destination(servidor_log); };

Reinicie o Syslog-ng:

# /etc/init.d/syslog-ng restart

Obs.: Siga as mesmas instruções nos demais clientes.

Pronto, com isso que fizemos, nosso servidor de log já está operando perfeitamente.

Para testar a configuração, faça alguma operação na máquina cliente e verifique se foi criado o arquivo de log no servidor.

No próximo tutorial, iremos aprender como rotacionar os logs do servidor.

Bem, é isso pessoal. Espero ter ajudado, até a próxima!!

Artigo previamente publicado em:


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: