HowTo, Segurança

Configurando o Ossec HIDS para monitorar os logs customizados do Apache

Por padrão o Ossec HIDS apenas monitora os arquivos de logs access.log e error.log do Apache, isto torna-se um problema quando hospedamos diversos vhosts ( sites ) no mesmo servidor.

Claro que somente será um problema para os sysadmins que não configuram os logs dos vhosts individualmente, espero que este NÃO seja o seu caso. Se você é daqueles que nem sabem onde estão localizados os logs do Apache mostrarei como configurá-los e como adequar o Ossec HIDS a esta nova realidade.

DICA: Está boa prática facilita a auditoria dos logs durante a detecção de ataques e erros.

CUSTOMIZANDO O LOG DO VHOST

Adicione as linhas CustomLog e ErrorLog no arquivo de configuração do vhost, como no exemplo abaixo:

<VirtualHost *:80>
ServerName www.acme.com
ServerAdmin [email protected]
CustomLog /var/log/apache2/www.acme.com-access.log combined
ErrorLog /var/log/apache2/www.acme.com-error.log

DocumentRoot /var/www/acme/
DirectoryIndex index.php<Directory />
Order Deny,Allow
Deny from all
Options None
AllowOverride None
</Directory><Directory /var/www/acme/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order Allow,Deny
Allow from all
</Directory>

CONFIGURANDO O OSSEC

Edite o arquivo /var/log/ossec/ossec.conf e adicione na tag localfile os novos arquivos de log, como no exemplo abaixo:

 <localfile>
<log_format>apache</log_format>
<location>/var/log/apache2/error.log</location>
</localfile>

<localfile>
<log_format>apache</log_format>
<location>/var/log/apache2/access.log</location>
</localfile>

<localfile>
<log_format>apache</log_format>
<location>/var/log/apache2/www.acme.com-access.log</location>
</localfile>

<localfile>
<log_format>apache</log_format>
<location>/var/log/apache2/www.acme.com-error.log</location>
</localfile>

Após reinciar o Apache e Ossec HIDS os alertas serão enviados de acordo com cada virtual host.

1 Comment

  1. Bom dia.
    Estou fazendo meu TCC (trabalho de conclusão de curso), no meu caso estou integrandoo Ossec como plugin de saída do Snort, mas estou com algumas dúvidas em relação ao Ossec.
    Quando instalei o Ossec, nos arquivos de configuração do Ossec, ele adcionou direto sem eu configurar uma linha de comando para que o Ossec leia os logs do Snort, isso é assim mesmo? Ele faz isso automático?
    Pelo fato desta integração fazer o Snort ler o payload (cabeçalho) dos datagramas e o Ossec tomando a decisão da ação de bloquear, caso haja um ataque Força Bruta em um servidor, neste caso os dois trabalhando nesta integração (Ossec e Snort) ele fica mais rápido para detectar o ataque e mais rápido para bloquear do que o Ossec sozinho instalado numa máquna virtual? (Simulando um servidor)
    Como faço em relação ao Ossec para fazê-lo rodar sozinho numa máquina Virtual, como fica a configuração no Ossec.conf já que ele está configurado para ler os logs do Snort, pois minha idéia é fazer o Ossec rodar sozinho numa maquina virtual detectando e bloqueando ataques força bruta proveniente do THC Hydra.
    Agradeço a gentileza
    Roberto Mendes

Comments are closed.