Pages

Friday, September 28, 2007

Servidor de Log com syslog-ng

É muito bom para o administrador da rede ter os logs centralizados em um único local, para isso, pode ser utilizado o syslog-ng, que é a nova geração do antigo syslog.

A configuração abaixo foi testada no Opensuse 10.2 que por padrão já utiliza o syslog-ng.

Editar o arquivo /etc/syslog-ng/syslog-ng.conf e acrescentar no final do arquivo o seguinte:
source s_remote {
tcp();
};
destination d_clients {
file("/var/log/servers/$HOST/$FACILITY" owner("root") group("root") perm(0660) dir_perm(0770) create_dirs(yes));
};
log {
source(s_remote);
destination(d_clients);
};

Neste caso, os logs serão divididos por HOST e também pela facility do log, se é autenticação, sistema, etc...

Para finalizar é preciso editar o arquivo /etc/sysconfig/syslog e alterar o parametro SYSLOGD_PARAMS e deixa-lo como está abaixo:
SYSLOGD_PARAMS="-r -m0"

Crie uma entrada no /etc/logrotate.d/syslog-ng com o conteúdo abaixo para que seja incluido na rotação de logs do sistema
/var/log/servers/logfile {
compress
dateext
maxage 365
rotate 200
size +4096k
create 640 root root
postrotate
/etc/init.d/syslog reload
endscript
}

Feito isso, reinicie o serviço do syslog-ng:
# /etc/init.d/syslog restart

Agora é só configurar o cliente para enviar os logs para o servidor de Log.

Para clientes que utilizam o syslog-ng, o código abaixo faz com que tudo seja enviado ao servidor de log.

Editar o arquivo /etc/syslog-ng/syslog-ng.conf e deixar somente o conteúdo abaixo:
#sample syslog-ng.conf for a remote client
source s_local { internal(); unix-stream("/dev/log"); file("/proc/kmsg" log_prefix("kernel: ")); };
destination d_loghost {tcp("IP_DO_SERVIDOR_DE_LOG" port(514));};
log { source(s_local); destination(d_loghost); };

Já em clientes que utilizam o antigo syslog, é preciso editar o arquivo /etc/syslog.conf e deixa-lo conforme abaixo:
*.* @IP_DO_SERVIDOR_DE_LOG

Feito isso, reinicie o serviço:
# /etc/init.d/syslog restart

E os logs a partir de agora estão sendo enviados para o servidor de LOG.

Fim.
Valeu.

2 comments:

  1. Valeu cebola me ajudo aqui
    abraços.

    ReplyDelete
  2. Parabéns pelo artigo amigo, rápido e resteiro.

    Gostaria de saber se é possível monitorar os processos de máquinas com Windows, já que ainda são a maioria nas empresas.

    Caso seja possível, gostaria que você desse dicas de ferramentas que podem ser usadas no Windows para enviar os logs para o servidor.

    Valeu, abraço.


    Claudio R. E. Boaventura

    ReplyDelete