Segurança Apache: 10 Práticas Essenciais para Proteger seu Servidor

Foto do autor

By luis

Fortaleça a segurança do seu servidor web Apache com estas práticas recomendadas, garantindo a proteção robusta da sua aplicação online.

O servidor web é um pilar fundamental das aplicações online. Uma configuração inadequada ou permissiva pode expor dados sensíveis, representando um risco significativo para a segurança.

Como gestor ou administrador de um website, é crucial realizar auditorias de segurança periódicas para identificar potenciais vulnerabilidades e neutralizar ameaças antes que hackers as explorem.

Vamos explorar algumas configurações cruciais para aprimorar a segurança do seu servidor Apache.

Todas as configurações que se seguem devem ser aplicadas no arquivo httpd.conf da sua instalação do Apache.

Aviso Importante: Antes de qualquer alteração, realize um backup do arquivo de configuração. Isso facilitará a restauração caso algo não saia como esperado.

Desabilite o Rastreamento de Requisições HTTP

A diretiva TraceEnable, por padrão, permite o uso do método TRACE, o que pode comprometer a segurança, pois impede que o corpo da requisição seja rastreado.

Quando TraceEnable está desativado, o servidor principal e o módulo mod_proxy retornam um erro 405 (Método Não Permitido) ao cliente.

Manter TraceEnable ativo pode abrir brechas para ataques de Cross-Site Tracing, permitindo que hackers roubem informações de cookies.

Solução

A melhor solução é desativar o método TRACE HTTP no arquivo de configuração do Apache.

Para isso, adicione ou modifique a seguinte linha no seu arquivo httpd.conf:

TraceEnable off

Execute o Apache com um Usuário e Grupo Dedicados

Por padrão, o Apache pode ser executado com as permissões de um usuário genérico como “nobody” ou “daemon”.

Evite, sob qualquer circunstância, executar o Apache com permissões de root (super-usuário), a menos que você compreenda perfeitamente os riscos envolvidos.

Solução

A prática recomendada é executar o Apache sob uma conta de usuário não privilegiada. Modifique as diretivas User e Group no arquivo httpd.conf do seu servidor:

User apache
Group apache

Desabilite a Exibição da Assinatura do Servidor

A configuração padrão (“Off”) suprime a exibição da linha de rodapé com informações do servidor.

A configuração “On” adiciona informações como a versão do servidor e o ServerName do host virtual.

Solução

Desabilitar a assinatura é uma prática de segurança prudente, pois evita que informações sobre a versão do Apache sejam divulgadas.

ServerSignature Off

Oculte o Banner do Servidor

Esta diretiva controla a inclusão, no cabeçalho de resposta do servidor, de informações detalhadas sobre o sistema operacional e os módulos compilados.

Solução

Para evitar a divulgação desnecessária de informações, configure:

ServerTokens Prod

Restrinja o Acesso por Endereço IP ou Rede

Se deseja limitar o acesso ao seu website a uma rede ou endereço IP específico, ajuste a configuração do diretório do site no httpd.conf.

Solução

Utilize a diretiva Allow para especificar os endereços de rede autorizados:

<Directory /seuwebsite>
    Options None
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 10.20.0.0/24
</Directory>

Ou especifique um endereço IP:

<Directory /seuwebsite>
    Options None
    AllowOverride None
    Order deny,allow
    Deny from all
    Allow from 10.20.1.56
</Directory>

Use Somente TLS 1.2 ou Superior

As versões SSL 2.0, 3.0, TLS 1 e 1.1 são conhecidas por apresentarem vulnerabilidades criptográficas.

Precisa de ajuda para configurar o SSL? Consulte este guia.

Solução

SSLProtocol -ALL +TLSv1.2

Desative a Listagem de Diretórios

Quando um diretório não possui um arquivo index.html, o navegador pode exibir a lista de todos os arquivos e subdiretórios (similar a um comando ls -l).

Solução

Para desabilitar a navegação em diretórios, defina a opção Options como “None” ou “-Indexes”.

<Directory />
    Options None
    Order allow,deny
    Allow from all
</Directory>

OU

<Directory />
    Options -Indexes
    Order allow,deny
    Allow from all
</Directory>

Remova Módulos DSO Desnecessários

Verifique cuidadosamente a sua configuração e remova todos os módulos DSO que não são essenciais para o funcionamento da sua aplicação.

Muitos módulos são ativados por padrão após a instalação, e alguns podem ser desnecessários e potencialmente introduzir vulnerabilidades.

Desabilite Cifras Nulas e Fracas

Permita somente cifras fortes para evitar vulnerabilidades que podem ser exploradas por ataques.

Solução

SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM

Mantenha o Apache Atualizado

Como o Apache é um projeto de código aberto em constante evolução, manter a versão mais recente é a melhor forma de garantir a sua segurança. Novas correções e patches são incluídos em cada atualização. Sempre utilize a versão mais recente e estável do Apache.

Estas são apenas algumas das configurações essenciais para a segurança do seu servidor Apache. Para uma abordagem mais completa, consulte um guia detalhado de segurança.

Gostou do artigo? Compartilhe estas dicas com outros profissionais!