Aug 09 2007

Otimização do Apache

Arquivado em: Status

No dia de ontem tivemos problemas com um cliente que teve o “asar” de escrever uma palavra errada em seu blog, e despertou a ira de um script kiddy que resolveu afirmar sua virilidade e confirmar o tamanho do pinto atacando o site do cliente, ocasionando um ataque de negação de serviço.

Os danos foram mínimos, uma pequena indisponibilidade no fim da tarde, mas que me deixou com a pulga atrás da orelha, pois temos poder de processamento de sobra, largura de banda de sobra e segurança totalmente adequada (exceto por um cliente que uma vez informou em um site de programas piratas a sua senha de FTP, nunca tivemos um caso de “defacement” na PortoFácil.

Passei a madrugada pesquisando e acabei por implementar algumas pequenas modificações na configuração do servidor, que o tornam mais resistente a estes ataques esporádicos. São elas:

  • implementei cache das consultas ao MySQL: isso fará com que as páginas que são muito acessadas — já que a maioria usa WordPress — estejam disponíveis imediatamente, sem requerer nenhum processamento extra;
  • desabilitei as conexões persistentes do Apache: estas conexões persistentes (o Apache mantém a conexão aberta por alguns segundos esperando que o mesmo cliente venha a fazer novas requisições) implicam muitos processos desperdiçados, esperando Godot.
  • aumentei o número de processos máximos do Apache: quando esse limite é atingido, os clientes são “barrados” com uma mensagem de conexão recusada; aumentei esse valor para evitar que usuários legítimos ficassem impedidos de acessar principalmente o site sob ataque.

Qualquer coisa, por favor contatem-me! :)


Textos relacionados a este:

Trackback URI | Comments RSS

Leave a Reply

É proibida a reprodução do conteúdo deste site sem prévia autorização por escrito do autor. Citações de no máximo um parágrafo acompanhadas do link para o texto original são permitidas sem necessidade de autorização escrita.