O Servidor HTTP Apache é um dos serviços mais estáveis e seguros distribuídos com o Red Hat Enterprise Linux. Há um número exorbitante de opções e técnicas disponíveis para proteger o Servidor HTTP Apache — muito numerosos para serem explorados em detalhes aqui.
Ao configurar o Servidor HTTP Apache é importante ler a documentação disponível para a aplicação. Isto inclui o capítulo entitulado Servidor HTTP Apache do Guia de Referência do Red Hat Enterprise Linux, o capítulo Configuração do Servidor HTTP Apache do Guia de Administração de Sistemas do Red Hat Enterprise Linux e os manuais do Stronghold, disponíveis online: http://www.redhat.com/docs/manuals/stronghold/.
Veja abaixo uma lista de opções de configuração para as quais administradores devem ser muito cuidadosos.
Esta diretiva é habilitada por default, portanto cuidado ao criar os links simbólicos no documento root do servidor Web. Por exemplo: é uma má idéia prover um link simbólico para /.
Esta diretiva é habilitada por default, mas pode não ser desejável. Para prevenir que visitantes naveguem pelos arquivos no servidor, remova esta diretiva.
A diretiva UserDir é desabilitada por default porque esta pode confirmar a presença de uma conta de usuário no sistema. Para possibilitar a navegação pelos diretórios do usuário no servidor, use as seguintes diretivas:
UserDir enabled UserDir disabled root |
Estas diretivas ativam a navegação em todos os diretórios de usuário, exceto no /root. Para adicionar usuários à lista de contas desativadas, adicione uma lista de usuários delimitada por espaço na linha UserDir disabled.
Por default, o lado do servidor inclui módulos que não podem executar comandos. Não é recomendado alterar esta configuração a não ser que seja absolutamente necessário, já que pode, potencialmente, possibilitar que um atacante execute comandos no sistema.
Certifique-se de conceder permissões de gravação (write) para o usuário root em todos os diretórios contendo scripts ou CGIs. Isto pode ser feito digitando os seguintes comandos:
chown root <directory_name> chmod 755 <directory_name> |
Também verifique sempre se todos os scripts rodando no sistema funcionam como planejado antes de colocá-los em produção.