Este é um conjunto das 10 principais coisas que vieram na minha mente sobre servidores Web. Estou falando de Apache, Nginx, Lighttp e qualquer outra coisa que rode no Linux — Saí pra lá IIS (Web Server do tio Bill) :(- e que vocês precisam saber antes de falarem ou fazerem merda. Eu já fiz e faço muita, por isso desejo compartilhar o máximo com vcs.. 🙂

  1. Servidor Web depende do Linux/Sistema Operacional, então tenha uma máquina bem tunada/configurada, caso contrário, ele será impactado porque alguém esqueceu de mudar o open files, deixando-o default (1024), por exemplo. – há S.Os que já vêm com 8196 configurados para o openfiles..
  2. Quando o assunto é segurança, um monte de administrador puxa do notebook uma dezena de receitas de bolo para configurarem em seus brinquedos. Calma, vamos por parte. Para que você precisa do PHP Suhosin instalado no seu apache se ele não trabalha ou trabalhará com PHP, mas sim como proxy reverso de um WebLogic ou Jboss ?!
  3. O Hardening do seu web server dependerá do objetivo da sua utilização, proxy reverso, conteúdo de páginas php, wordpress, entre outros. Regra básico  para quase tudo quando o assunto é segurança. Mas ninguém falou que você não pode ter um OSSEC, mod_security ou qualquer solução de segurança instalada nele. Se não tem, faça isso agora.
  4. Nginx é melhor que o Apache. Isso é verdade, mas não é motivo para sair migrando todo o seu ambiente para o russinho aí, até porque ele, o Nginx, não possui uma série de módulos e compatibilidades (Weblogic e Jboss por exemplo) necessárias para muitos portais e sites. Migre aos poucos e análise se de fato você terá um ganho de performance colocando o Nginx no lugar do velho índio, até porque ele é bom contra alguns tipos de ataques Layer 7 e na performance com PHP, falando do Nginx agora, mas péssimo quando o assunto é proxy reverso trabalhando com servidores aplicacionais.
  5. Virtualhost é uma coisa maravilhosa, facilita e muito a vida da galera, além de economizar uma puta grana de infra, mas não é por isso que você tem que deixar os logs sendo apontados para o mesmo local. Organize o seu ambiente de uma forma que qualquer administrador alfabetizado possa ler e entender o que está acontecendo com o seu ambiente.
  6. O logstalgia é muito legal para qualquer ambiente que trabalhe com Apache ou Nginx.
  7. Sempre, eu digo sempre, tenha backup dos seus arquivos de configuração. Faça um script e coloque em uma cron, guarde na cueca, faça qualquer coisa, mas sempre tenha backup – um dia você irá precisar, seja como exemplo de alguma configuração ou para fazer um restore às pressas.
  8. WebServer instalado a partir de um repositório tipo Yum ou apt-get ou compilá-lo, eis a questão ? A resposta para essa pergunta está no fato de saber qual distribuição linux você utiliza e se ela possui suporte. Não adianta reclamar, o Ubuntu é bom pacas, eu gosto e muito dele, mas usar o apache na versão 2.2.15 enquanto estamos na versão 2.2.22 ou já na 2.4.2 é foda. Então pare de ser preguiçoso, baixe o bicho e compile-o, você estará trabalhando melhor assim, isso sem falar na segurança.
  9. Assine as listas de discussões do Apache e do Nginx, mesmo que seja o RSS deles ou a conta de Twitter. Fique atento às vulnerabilidades. Sempre tem algo novo rolando por aí e você não quer vacilar como eu fiz com o blog, né ?!
  10. Estudem expressões regulares. Elas podem salvas a sua vida.

P.S.: Esqueci de mencionar o Cache e a compressão de dados com mod_deflate por exemplo – Ambos melhoram tanto a performance quanto a segurança de seus sites, mas iria contra o número de coisas da lista.. hehehe Cache – eu falo de Varnish e compressão, eu falo de mod_deflate mesmo.. 🙂 Memcached é bom, mas depende para que você irá utilizá-lo.

Compartilhar:
Fechar Menu