Configurando wildcard em servidor com cPanel e Apache

O tutorial abaixo é um guest post do nosso leitor: Rafael Viana. Visitem seu site: RafaelFPViana.com

Este tutorial serve para ajudar como configurar um domínio para funcionar da seguinte forma:

http://bobmarley.letrasdemusicas.com.br

http://blew.nirvana.letrasdemusicas.com.br

Ou seja, faz com que subdomínios sejam configurados para cair na mesma página do site principal, ao invés de serem configurados para utilizarem uma pasta na conta do cliente.

O que é necessário

  • Domínio em questão precisa estar registrado e com os dns apontando para o servidor
  • Acesso ao WHM como root
  • WHM com o ConfigServer Explorer instalado ou acesso SSH como root
  • Saber a versão do Apache
  • Saber o nome de usuário de FTP/[cPanel] para o domínio a ser instalado o wildcard

Configurando os DNS

  • Acesse o WHM e vá em Main >> DNS Functions >> Edit DNS Zone
  • Procure o domínio em questão na listagem e clique no botão Edit
  • Na primeira linha do formulário em Add New Entries Below this Line adicione um * (asterístico ) no primeiro campo
  • No terceiro campo onde está com a palavra Select, selecione a opção CNAME
  • Aparecerá um novo campo, coloque o endereço do site em que estamos instalando o wildcard sem o www e com um . (ponto), geralmente este campo é idêntico ao primeiro campo no início do formulário de edição de zona de dns, portanto poderá copiar e colar sem problemas.
  • Clique em Save
  • Pronto, dns configurado, estarei utilizando o domínio dominio.com.br como teste, portanto a minha linha ficou mais ou menos assim:
* 14400 IN CNAME dominio.com.br.

Configurando o Apache

  • Primeiramente cerfique-se que o ConfigServer Explorer está instalado, sem ele você terá que fazer por SSH
  • Se o ConfigServer Explorer estiver instalado, no campo Change Directory… digite /usr/local/apache/conf/

Diretórios

  • Caso o diretório userdata não exista em /usr/local/apache/conf/ iremos criar
  • Caso o diretório std não exista em /usr/local/apache/conf/userdata/ iremos criar
  • Agora iremos criar um diretório de acordo com a sua vesão do apache, ou seja, se o seu apache é versão 2.0.63 iremos crair o diretório 2, caso a versão seja 1.3.41 iremos crair o diretório 1, isso dentro de /usr/local/apache/conf/userdata/std/, para o exemplo irei criar o diretório 1.
  • Agora crie um diretório com o nome de usuário dentro /usr/local/apache/conf/userdata/std/1/, irei criar o diretório usuario como exemplo

Arquivo

Agora que estamos dentro do diretório do usuário /usr/local/apache/conf/userdata/std/1/usuario/ crie um arquivo chamado ServerAlias.conf

Dentro deste arquivo coloque o seguinte:

ServerAlias *.dominio.com.br

Salve o arquivo

Aplicando as configurações

Agora digite o seguinte comando, poderá ser feito por SSH ou até mesmo no ConfigServer Explorer no último campo do formulário, o campo Command:

perl /scripts/ensure_vhost_includes --user=usuario

Note que em –user= eu digitei usuario, este é o meu usuário de exemplo, troque para o nome de usuário que você está configurando o wildcard.

Finalizando

Agora basta reiniciar o Apache e aguardar a propagação dos DNS.

Como corrigir dns recursivo aberto

Uma vulnerabilidade bastante comum e que abre a possibilidade de alguns tipos de ataques, são as “Open DNS” para consultas externas.

Possíveis Riscos com “DNS Recursivo Aberto”:

• Ser vítima de ataques de envenenamento de cache (cache poisoning), que levam o servidor recursivo a armazenar informações forjadas. Tais informações podem ser usadas para comprometer a segurança de clientes que façam consultas a esse servidor.
• Ter esse servidor abusado por atacantes e utilizado para desferir ataques de negação de serviço distribuídos (DDoS), que podem implicar nas seguintes conseqüências:

– o grande número de consultas DNS forjadas recebidas e, principalmente, a quantidade de respostas grandes enviadas para a vítima, podem consumir uma quantidade considerável de banda da rede com um servidor DNS recursivo aberto;
– dependendo do contrato do provedor de conectividade, a rede com o DNS aberto sendo abusado pode ser co-responsabilizada em caso de ataque de negação de serviço contra terceiros.

Para verificar se este é o seu caso, vá em

http://www.intodns.com e digite um domínio no servidor que deseja verificar.

Se estiverem abertas, você irá ver um alerta em vermelho “Open DNS”

Para corrigir este problema siga os passos abaixo:

Efetue login como root em seu servidor pleo SSH e edite o named:

pico /etc/named.conf

Procure por:

key "rndckey" {

};

Após este código acima de options { insira:

acl "trusted" {
xxx.xxx.xxx;
xxx.xxx.xxx;
xxx.xxx.xxx;
127.0.0.1
};

onde xxx são os números de seus servidores de DNS, geralmente definidos no arquivo /etc/nameserverips

Dentro de “options {”
abaixo de:

// query-source address * port 53;

coloque o seguinte:

version "Servidor DNS Seguro";
allow-recursion { trusted; };
allow-notify { trusted; };
allow-transfer { trusted; };

Salve e feche o editor ( ctrl+x e y)

Agora, reinicie seu servidor DNS

service named restart

Se você utiliza um firewall deixe aberta a porta 53 tanto para udp quanto para tcp.

Germano P. Ferreira
Administrador Linux