0

Tornando seu Servidor Web Mais Seguro

criado por Rogério Bourscheidt Kunkel em 25/02/2006 5:55pm
Manter seu servidor Web atualizado pode ser muito fácil. A maioria dos fornecedores tem malas diretas para mantê-lo informado sobre novas versões de seu servidor e da disponibilidade de emendas ou correções. Se seu site Web usa Apache, consulte o site Apache Week (www.apacheweek.com) e assine sua newsletter semanal. Este site também possui um repositório completo de problemas mais comuns. Novamente, sites como o CERT, Security Focus e Packet Storn são uma fonte de informações excelente. Outro site que pode ser útil é WebServer Compare (webservercompare.internet.com). Ele possui muitas informações sobre diferentes servidores Web e tornará a escolha de um servidor Web conveniente muito mais fácil.

A seguir irei detalhar uma lista de configurações para o Apache. Mais informações sobre a configuração do Apache podem ser encontradas na documentação on-line Apache (www.apache.org).

Permissões dos Diretórios ServerRoot

O diretório ServerRoot (o diretório onde o Apache é instalado) não deve pertencer ao usuário no qual o servidor Web funciona ( normalmente www ou nobody). Além disso, os usuários normais e o usuário no qual o servidor Web funciona não devem ser capazes de mudar nada no diretório ServerRoot ou nos diretórios que estão abaixo dele. Desse modo, você pode se certificar de que é muito difícil, se não for impossível, que os usuários mudem a configuração do servidor Web. Talvez você queira mudar as permissões no diretório DocumentRoot, para que seus usuários possam mudar os arquivos neles existentes, mas apenas isso.

Contudo, certifique-se de que o usuário que funciona como servidor Web tenha permissão para escrever no diretório de log. Se você não fizer isto, não terá nenhum arquivo de log.

Você provavelmente já pensou sobre as configurações de seu servidor Web; portanto, provavelmente desejará evitar que seus usuários mudem suas configurações em nível de servidor. Com o Apache, isso pode ser feito com a diretiva AllowOverride. Você pode especificar None para proibir completamente que seus usuários anulem as configurações ou listar as configurações que eles podem mudar.

Você não deve permitir que o servidor Web acesse arquivos fora do diretório DocumentRoot. Isso pode ser feito com uma instrução Directory.

Isso diz ao servidor Web para que não acesse nenhum arquivo fora de DocumentRoot. Um detalhe importante a ser percebido é que agora você precisa dizer ao servidor Web que é permitido acessar arquivos em DocumentRoot. Isso já foi feito na configuração padrão do Apache; portanto, não deve ser problema.

Dando a cada usuário sus própria home page

Você pode usar a diretiva UserDir para permitir que os usuários tenham sus própria home page. O uso da diretiva UserDir tem o potencial de permitir que as pessoas leiam arquivos do diretório de base do usuário-raiz (normalmente / ou /root). Você pode se certificar de que isso não possa acontecer, desativando a home page do usuário-raiz. Isso só funciona para o Apache 1.3 e versões mais recentes.

Essa configuração primeiramente desativa as home pages pessoais de todos os usuários e depois ativra os usuários Alice e bob para terem suas próprias home pages. O Apache procurará essas home pages no diretório public_html de seus diretórios de base. Os usuários não podem anular as configurações em nível de servidor, mas podem usar SSI ( mas não iniciar programas dentro dos SSIs). Os links simbólicos serão seguidos apenas se o usuário também possuir o arquivo ou diretório para o qual eles apontam. Desse modo, os usuários não podem fornecer facilmente acesso de Web a arquivos que não dem estar acessíveis através da Web (como o diretório de base de outrra pessoa). Note que esse exemplo presume que os diretórios de base de todos os usuários residem em /home. Se esse não for o caso, basta incluir um bloco Directory extra para cada diretório. Por exemplo, se alguns de seus usuários têm um diretório de base localizado em /staff, você poderia simplesmente incluir o texto a seguir no arquivo de configuração.

A configuração padrão do Apache permite que os usuários coloquem uma home page em public_html e não desativa a home page da raiz. Você poderia desativar a home page da raiz incluindo a linha a seguir no arquivo de configuração.

Comentários:

Mostrando 1 - 2 de 2 comentários
Me ajudou bastante em conhecimento!
13/05/2006 2:12pm (~10 anos atrás)

Cara, parabéns viu!!!
Gostei muito do seu artigo, ótimo pra quem tá querendo começar a deixar o seu servidor mais seguro...
14/03/2006 5:28am (~10 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)