Em um ambiente com um servidor, que precisa ser tolerante à falhas é essencial uma boa olhada nos logs de vez em quando. Mas e no caso de vários servidores a serem monitorados? Pois bem, neste poste apresentarei o Ossec-Hids. Uma ótima ferramenta de monitoração de logs, que permite a centralização deles. Então mesmo tendo muitos servidores à monitorar, você vai precisar olhar somente em um lugar. Isso porque o Ossec-Hids funciona como um servidor de logs, recebendo a informação dos clientes e apresentando em uma interface WEB.
Além de apresentar os logs de uma maneira centralizada, o Ossec também faz a checagem de integridade no filesystem. Você terá o controle de arquivos criados, modificados, deletados. Tudo configurável à partir dos arquivos na estrutura xml do Ossec, inclusive as regras de monitoramento e alarme dos logs.
Ah, ía me esquecendo, o desenvolvedor e mantenedor do Ossec é um brasileiro. Bem mãos a obra.
InstalandoBaixe o software
aqui Descompacte o ossec-hids-1.4.tar.gz
tar -zxvf ossec-hids-1.4.tar.gzRode o
./install.shO script perguntará qual tipo de instalação você fará
server - será o server que tratará os logs
agent - cliente que enviará os logs pro server
local - no caso de apenas um servidor sem agents a monitorar logs.
Escolha
server.
A seguir, o script aplicará as RULES (regras) em alguns logs (
messages/secure...), compilará os módulos e te perguntará o tipo de arquivo de inicialização rc.d ou red hat like (
/etc/init.d).
WEB GUIPara instalar o WEB GUI você precisará do Apache e PHP
WEB GUI
aqui Descompacte o arquivo no ROOT do seu apache (ex.
/var/www/html).
tar -zxvf ossec-wui-0.2.tar.gz -C /var/www/htmlEntre na pasta e rode o
./setup.shDepois adicione o usuário do seu serv. WEB (ex. apache) no grupo OSSEC
gpasswd -a ossec apacheacesse a URL
http://localhost/ossec-wuiAgents (clients)Os clients podem ser tanto Linux como Windows
A versão windows
aqui A versão Linux é o mesmo tar.gz da instalação do server, você só precisará mudar na hora de escolher o tipo de instalação. Escolha Agent.
./install.shno tipo de instalação escolha agent
informe o IP do servidor quando for solicitado.
Adicionando os agentsA comunicação entre os agents e o server é criptografada. Para adicionar os agents é necessário uma chave que será criada no server. Para isso, no Server, entre no diretório
/var/ossec/bin e rode
./manage_agentsO comando te lista 5 opções.
para adicionar os agentes escolha a opção "(A)dd an agent (A)"
informe um nome e o IP do agente (client)
Depois de adicionado o agente, será neecssário extrair a chave.
Escolha a opção
"(E)xtract key for an agent (E)", o script listará os agentes disponíveis, identificados por um ID. Escolha o agent. E a chave será impressa na tela.
Vá no agent, na pasta
/var/ossec/bin e rode o mesmo
./manage_agentsescolha a opção
(I)mport key for the server (I). E cole a chave.
Agora só reiniciar o serviço Ossec
/etc/init.d/ossec restart no server e no agent.
O Ossec permite muito controle sobre o que é apresentado ou não. No diretório /var/ossec/rules estão todas as regras aplicadas nos logs.
Você pode filtrar uma mensagem específica no log (fazendo uma regex), mandar printar só se aparecer N vezes, enfim, uma infinidade de opções que valem muito a pena serem exploradas.
Ah, e tem o
Active Response, que é uma medida que o Ossec toma caso alguma regra que você configurou bata. Ex. colocar um IP em /etc/hosts.deny após algumas tentativas de acessos sem sucesso por ssh, executar comandos específicos, scripts.... Aí é soltar a imaginação.
O site oficial é
http://www.ossec.netVale muito a pena dar uma olhada no
manual, para poder filtrar melhor os alarmes.