quinta-feira, 21 de junho de 2012
Configurando um Servidor de Logs com Syslog-NG
Pessoal hoje iremos configurar um servidor de logs em nossa rede, é uma funcionalidade extremamente interessante de configurarmos, este é 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 intale o SYSLOG-N:
# aptitude install syslog-ng
O padrão do Debian é o rsyslog, então ele vai perguntar se você quer remover o rsyslog, pressione Y para confirmar e depois para instalar.
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 trafego 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 a 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 especifico, onde só os logs que contem a palavra “sshd” irão ser 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
Depois desse 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.conf
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, ele manda uma copia 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(s_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á esta 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!!
Assinar:
Postar comentários (Atom)
Pode me ajudar?
ResponderExcluirqual o seu problema?
ExcluirFiz tudo do jeito que você disse e mesmo assim não funcionou :/
ResponderExcluirnem o meu
ResponderExcluirola´ tudo bem. quando vou reiniciar o syslog-ng da falha. Pode me ajudar?
ResponderExcluir