Pesquisar este blog

segunda-feira, 25 de fevereiro de 2008

Como instalar um Certificado Digital SSL

Segurança sempre é bem vinda - os visitantes deste humilde blog já devem ter percebido que eu sou um tanto paranóico com o tema - devido principalmente ao número de tópicos/posts sobre o mesmo. Eu prometo que irei ampliar o foco do blog, mas neste momento a minha paranóia é maior.

Segue um pequeno passo-a-passo para configuração e instalação do SSL pelo cPanel (usando o painel WHM), um tema que vem sendo pedido também pelo pessoal de nossa comunidade no ORKUT.

O CSR é um pequeno certificado com informações sobre o domínio/servidor onde será instalado o SSL. O CSR será enviado ao seu emissor de SSL (a empresa que emitirá o sSL para você) e será baseado no mesmo que o SSL será criado. Para criar o CSR pelo WHM é simples. Lembre-se que caso você seja revenda ou VPS o seu WHM deverá estar configurado com permissão para a instalação/manipulação do CSR/SSL:

Acesse o WHm e clique o link "Generate a SSL Certificate and Signing Request" do menu "SSL/TLS". Na tela serão pedidas algumas informações:

Email Address the Cert will be sent to: email ao qual o cPanel enviará uma cópia do CSR e da KEY (criada pelo sistema);
Host to make cert for: Aqui entre com o nome do domínio que terá o SSL instalado - lembre-se, www.dominio.com.br é diferente de dominio.com.br e é diferente de loja.dominio.com.br - se você pedir o CSR para o www.dominio.com.br ele NÃO será ativado ao acessar dominio.com.br e vice-versa;
Country (2 letter Abbrivation): Esta é simples, use BR;
State: O estado (UF) de onde o domínio/empresa está presente, por exemplo, SP ou RJ;
City: Cidade, por exemplo Rio de Janeiro;
Company Name: Nome da empresa que é dona do domínio que usará o SSL;
Company Division: Divisão da empresa que usuará o SSL, ou pode ser usado o nome fantasia ou até mesmo copiar o "Company Name";
Email: email de contato da empresa dona do SSL;
Password: Algumas pessoas fazem confusão com este campo. Esta senha NÃO é sua senha de acesso ao WHM ou ao servidor, mas sim a senha de autenticação caso você migre este futuro SSL para outro servidor apache com a função de autenticação;


Após criar o CSR você deverá contatar uma empresa emissora de SSL como a DigitalSSL por exemplo para que possa efetuar sua configuração. Você deverá informar a chave CSR que você acabou de criar.

IMPORTANTE: Você deve ter um número de IP único configurado para o domínio que terá o SSL instalado.

Para instalar o SSL que vocÊ receebrá é mais simples ainda. Acesse seu WHM e clique no link "Install a SSL Certificate and Setup the Domain" e copie e cole o SSL recebido no primeiro campo do formulário. O cPanel fará o resto (ele puxará o CSR/KEy criados que estão salvos no servidor e efetuará a configuração, bastando você clicar no botão "submit")

terça-feira, 19 de fevereiro de 2008

Otimização para Motores de Busca

Informações importantes sobre otimização (SEO) em sites e motores de busca: http://www.criarweb.com/divulgacao/

Vale a pena dar uma lida.

sexta-feira, 15 de fevereiro de 2008

Instalando e configurando o sistema BFD (Brute Force Detection)

Continuando a série sobre Firewalls vamos falar sobre o sistema BFD (Brute Force Detection) muito usado em conjunto com o APF.

O que é o sistema BFD (Brute Force Detection) ?

O BFD é um script shell modular que verifica a cada período de tempo os logs de acesso de seu servidor, porcurando identificar no mesmo tentativas de acesso com erro (authentication failures) repetidas em curto espaço de tempo.

O sistema então identifica o IP do acesso e o cadastra como possível invasor, enviando um comando ao APF (Firewall) bloqueando-o imediatamente. Este sistema é importantíssimos para o correto funcionamento e segurança de seu servidor (seja ele um Servidor Dedicado ou um VPS). você pode obter mais informações em http://www.rfxnetworks.com/bfd.php

Requerimentos:
- Você tem que ter o APF instalado e ativo antes de instalar o BFD.
- Acesso root ou su ao seu servidor.Instalação:

Acesse seu servidor como root ou su e no mesmo execute os comandos:

1. cd /root/downloads ou outro endereço temporário que você use;
2. wget http://www.rfxnetworks.com/downloads/bfd-current.tar.gz
3. tar -xvzf bfd-current.tar.gz
4. cd bfd-0.7
5. Execute o comando de instalação: ./install.sh


Instalação efetuada:
.: BFD installed
Install path: /usr/local/bfd
Config path: /usr/local/bfd/conf.bfd
Executable path: /usr/local/sbin/bfd

Configurando :

Execute:
pico -w /usr/local/bfd/conf.bfd

Ache a linha: ALERT_USR="0" Mude para: ALERT_USR="1"
Ache a linha: EMAIL_USR="root" Mude para: EMAIL_USR="your@yourdomain.com"


O BFD usa o APF para bloquear os IPs identificados como possíveis invasores que estejam tentando invadir usando a técnica de "Força Bruta".

Execute o programa com o comando: /usr/local/sbin/bfd -s

quarta-feira, 13 de fevereiro de 2008

Instalando e configurando o firewall APF para Linux

Segurança é sempre um item importante nos tempos de hoje. Existem alguns sistemas bastante seguros e usados em servidores de hospedagem em Linux - os firewalls - que ajudam a prevenir ataques e problemas indesejados.

Existem 2 destes sistemas que são os mais usados atualmente, o APF/BFD e o CSL/LFD. Eu vou postar rapidamente como instalar e configurar ambos. Vamos iniciar com o APF.

Necessário:
- Acces root ao servidor

Instalando
Acesse seu Servidor Dedicado ou VPS como root ou su e execute:

1. cd /root/downloads ou outro diretório temporário seguro.

2. wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz

3. tar -xvzf apf-current.tar.gz

4. cd apf-0.9.5-1/

5. Execute o instlador: ./install.sh - após alguns segundos você receberá uma mensagem dizendo que o sistema esta instalado:

Installing APF 0.9.5-1: Completed.

Installation Details:
Install path: /etc/apf/
Config path: /etc/apf/conf.apf
Executable path: /usr/local/sbin/apf
AntiDos install path: /etc/apf/ad/
AntiDos config path: /etc/apf/ad/conf.antidos
DShield Client Parser: /etc/apf/extras/dshield/

Agora vamos configurar ele para operar com o cPanel de forma correta e segura. abra o arquivo de configuração:

pico -w /etc/apf/conf.apf

Modifique:


USE_DS="0"
Mude para: USE_DS="1"

Modifique IG_TCP_CPORTS e IG_UDP_CPORTS por:

IG_TCP_CPORTS="21,22,25,53,80,110,143,443,2082,2083,2086,2087,2095,2096,3000_3500"
IG_UDP_CPORTS="53"


Modifique EGF, EG_TCP_CPORTS, EG_UDP_CPORTS por:

EGF="1"
EG_TCP_CPORTS="21,25,80,443,43,2089"
EG_UDP_CPORTS="20,21,53"


Agora salve, saia e execute:

apf -s

Tudo correu bem ? voce continua logado no ssh ? Pois bem volte para a edição do apf.conf e mude a linha:

FIND: DEVM="1"
Mude para: DEVM="0"

O DEVM é o sistema de teste seguro do APF - caso você tenha feito algo de errado fechando portas que não deveria (como a 22 por exemplo que é aporta default do SSH) basta aguardar 5 minutos que o sistema APF será desligado via CRON.

Depois salve novamente e execute:

apf -r

Outros comandos na linha e comando:


usage ./apf [OPTION]
-s|--start ......................... load firewall policies
-r|--restart ....................... flush & load firewall
-f|--flush|--stop .................. flush firewall
-l|--list .......................... list chain rules
-st|--status ....................... firewall status
-a HOST CMT|--allow HOST COMMENT ... add host (IP/FQDN) to allow_hosts.rules and
immediately load new rule into firewall
-d HOST CMT|--deny HOST COMMENT .... add host (IP/FQDN) to deny_hosts.rules and
immediately load new rule into firewall

Agora vamos instalar um acessório importante, o BFD. O BFD é um sistema anti-intruso. ele verificará se estão tentando se logar a determinada porta e caso o possível invasor não tenha permissão de acesso, ou seja esteja tentando invadir usando uma técnica conhecida como "brute force' (força bruta) BFD executa o APF bloqueando o IP do invasor.

Mas isso apenas no próximo post. Vamos debulhar mais o sistema APF nos próximos dias.

segunda-feira, 11 de fevereiro de 2008

Um estranho novo (?) erro no Apache...

Um post rápido sobre um erro recorrente no cPanel com o novo apache (o apache do cPanel é um apache "modificado" na distribuição feita na própria instalação do cPanel - o que os gurus do LINUX chamam de versão "patched").

Este estranho erro passou a ocorrer no Apache 2.0.X (não testei ainda na versão 2.2 e superiores derivadas) e trata sobre o uso de memória aliado a espaço em disco no sistema, derrubando o apache por completo e nem adianta dar restart, não restarta nada (não precisa dizer que dor de cabeça é isso para uma empresa de hospedagem que se preze) Verificando os logs de erro do apache em /etc/http/log:
[emerg] (28)No space left on device: Couldn't create accept lock
ou então
[crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed
Apesar do erro confuso existe espaço de sobra em todas as partições do servidor (neste caso ele reclama que não tem espaço no próprio /etc/http/log). A única solução era o reboot do servidor físico mesmo.

Atenção: estes comandos abaixo não executam nada de perigoso no seu sistema, mas você deve usa-los de preferência apenas se você estiver passando por um problema parecido, o que tem sido bem comum no apache 2.0 integrado ao cPanel.

Ou uma solução mais simples:

ipcs -s | grep nobody

Isso lhe mostrá os rótulos "semaphore-arrays" que por algum motivo que não consegui identificar são deixados abertos. Você verá uma extensa lista.

Isso mata tudo:

ipcs -s | grep nobody | perl -e 'while () { @a=split(/\s+/); print `ipcrm sem $a[1]`}'

Agora reinicie o apache:
service httpd restart
Pronto. Problema solucionado, pelo menos até voce tomar vergonha (como eu) e compilar o sistema com o easyapache usando o apache2.2.