Instalar e configurar serviços Web (Apache Virtual Hosting) no Zentyal Server - Parte 9
O objetivo deste tutorial é demonstrar como o Zentyal 3.4 Server pode ser usado como uma Plataforma Web com vários sites (subdomínios) usando Apache Virtual Hosts .
Zentyal 3.4 usa o pacote Apache (também conhecido como httpd) como servidor web, que é o servidor web mais usado na Internet atualmente e é um código aberto completo.
A Hospedagem Virtual representa a capacidade do Apache de servir mais de um site (domínios ou subdomínios) em uma única máquina ou nó, um processo completamente transparente para os usuários finais e baseado em vários IP ou vhosts.
Leia também: Hospedagem Virtual Apache: Hospedagem Virtual Baseada em IP e Baseada em Nome
Requisitos
O antigo guia de instalação do Zentyal
Etapa 1: Instale o servidor Web Apache
1. Faça login nas Ferramentas de administração da Web do Zentyal 3.4 apontando o navegador para o endereço IP ou nome de domínio do Zentyal ( https://domain_name ).
2. Vá para Gerenciamento de Software -> Componentes Zentyal e escolha Servidor Web.
3. Clique no botão Instalar e aceite também o pacote Autoridade de Certificação (necessário para certificados SSL usados para criptografar conexões https).
4. Após a conclusão da instalação, vá para Status dos Módulos, selecione Servidor Web, aceite o prompt Ativação e clique em Salvar. para aplicar novas alterações.
O prompt Enable apresentará alguns detalhes sobre quais pacotes e arquivos de configuração serão modificados pelo Zentyal.
Por enquanto o Apache Web Server está instalado e funcional, mas possui apenas a configuração padrão até o momento.
Etapa 2: criar hosts virtuais e alterar a configuração de DNS
Nesta configuração queremos adicionar um Virtual Host no Apache para que nosso endereço final seja enviado como um subdomínio como http://cloud.mydomain.com, mas o O problema aqui é que o módulo Zentyal 3.4 Apache e o módulo DNS não funcionarão por alguns motivos com hosts virtuais no IP do sistema.
Os hosts virtuais criados a partir do módulo Web são anexados ao servidor DNS como um novo nome de domínio, não como um novo registro A de host. Existem alguns truques para configurar Hosts Virtuais no Zentyal, um deles é usar Interfaces IP Virtuais.
Felizmente, outra maneira de superar esse problema é fazer alguns truques de configuração no módulo Zentyal DNS.
5. Para começar, vamos adicionar um host virtual. Vá para Módulos de Servidor Web -> Hosts Virtuais -> ADICIONAR NOVO.
6. Marque Ativado, digite o nome deste host virtual (anexe o nome de domínio completo) e clique em ADD.
7. Após o host ter sido adicionado e listado em Virtual Hosts, clique no botão superior Salvar para aplicar as alterações.
O principal problema é que o subdomínio recém-criado (host virtual) não está disponível porque o servidor DNS ainda não contém um registro de nome de host A.
Executar um comando ping neste subdomínio tem a mesma resposta negativa.
8. Para resolver esse problema, vá para o módulo DNS e clique em Hostnames no domínio listado.
Como você pode ver obviamente, o host virtual criado (ou subdomínio) existe e precisa de um endereço IP adicionado.
Como a hospedagem virtual está configurada para o Apache servir arquivos da web do nó Zentyal, o módulo DNS precisa de um registro de nome de host A para apontar para Zentyal mesmo IP (configuração que o Zentyal não permitirá).
O DNS do Zentyal 3.4 não permite usar o endereço IP do sistema atribuído com nomes de host diferentes (vários registros de nome de host DNS A no mesmo IP).
9. Para superar esta situação indesejada usaremos um truque baseado em registros DNS CNAME (Aliases). Para que isso funcione faça a seguinte configuração.
- Exclua o registro de nome de host DNS recém-adicionado ao seu domínio
10. Vá para o registro do nome do host Zentyal DNS FQDN, clique no botão Alias e depois no botão ADICIONAR NOVO.
Digite o mesmo nome fornecido no Apache Virtual Host (sem o domínio de ponto) no campo Alias, clique em ADD e Salvar alterações.
11. Agora seu registro DNS deve estar totalmente funcional e apontar para Apache Virtual Host que em troca servirá páginas da web hospedadas na diretiva DocumentRoot (/ srv/www/nome_do_seu_host_virtual) no Zentyal.
12. Para testar a configuração abra um navegador e digite em URL seu nome de host virtual (subdomínio) usando o protocolo http.
Você também pode emitir um comando ping de um sistema diferente na sua rede com o nome do subdomínio.
Agora o Apache Web Server está configurado e habilitado para servir páginas web em portas http menos seguras 80, mas queremos adicionar uma camada segura entre servidor e clientes, siga o passo < b>#3 conforme as instruções abaixo.
Etapa 3: Crie SSL para Apache
Para ativar a criptografia SSL (Secure Sockets Layer) no Zentyal 3.4 é necessário se tornar uma CA (Autoridade de Certificação) e emitir o certificado digital, as chaves públicas e privadas necessárias para que servidores e clientes troquem dados por um canal seguro.
13. Navegue até o módulo Autoridade de Certificação -> Geral.
14. Em Certificado de Autoridade insira as seguintes configurações e clique em Criar.
- Nome da Organização: seu nome de domínio (neste caso o domínio é “meudominio.com”).
- Código do país: o código do seu país (2 a 3 caracteres).
- Cidade : localização principal da sua organização.
- Estado : deixe em branco.
- Dias para expirar: 3.650 – por padrão (10 anos).
15. Após a criação do Certificado de Autoridade principal, emitimos um novo para nosso host virtual com as seguintes configurações.
- Nome comum : insira o nome do seu host virtual ou FQDN do servidor (neste caso é cloud.mydomain.com ).
- Dias para expirar : 3.650.
- Nomes alternativos do assunto: o parâmetro mais comum aqui é seu endereço de e-mail (email:[email ).
16. Após a geração do Certificado você poderá baixá-lo, revogá-lo ou renová-lo.
17. A próxima etapa é vincular este certificado ao Apache Service. Vá novamente para Autoridade de Certificação -> Certificados de Serviços e destaque Módulo de Servidor Web.
18. No Módulo de Servidor Web selecione Ativar e clique no ícone Ação para editar o certificado.
19. Em Nome Comum insira o nome criado anteriormente na etapa #15 (esse Nome Comum é o Nome do Certificado ), marque Ativar novamente, pressione o botão Alterar e clique no topo Salvar alterações para aplicar as novas configurações.
Agora seu certificado foi gerado e vinculado ao Web Server Service, mas ainda não está operacional em Virtual Hosts porque o protocolo HTTPS não está habilitado em Servidor Web.
Etapa 4: habilitar Apache HTTPS
No Zentyal 3.4 SSL o tratamento é feito pelo serviço HAProxy, mas ainda precisamos ativar o arquivo de configuração Apache SSL e a diretiva Port.
20. Navegue até Servidor Web –> selecione Enabled –Port 443 (porta SSL padrão) nas configurações de portas de escuta HTTPS e clique no botão Alterar.
21. Navegue até o final da página e clique no botão Ação em seus Hosts Virtuais listados para editar as configurações de SSL.
22. No suporte SSL, escolha a opção Permitir SSL, clique em Alterar e depois clique em Salvar alterações.
23. Agora o Apache servirá o host virtual “cloud.mydomain.com” em ambas as portas http padrão 80 e 443.
24. Repetindo as etapas acima, você pode transformar Zentyal em uma caixa de hospedagem na Web e adicionar quantos domínios ou subdomínios com Apache Virtual Host forem necessários e configure tudo para usar os protocolos de comunicação HTTP e HTTPS usando o certificado emitido anteriormente.
Embora possa não haver nenhuma configuração complexa que implique uma plataforma de hospedagem web real (algumas podem ser criadas a partir da linha de comando e usando o arquivo .htaccess do Apache), Zentyal 3.4 pode ser usado hospedagem para sites de médio porte e simplifica muito a edição e configuração de serviços da web.