Primeiramente, é importante que você compreenda que a solução de integração AWS Cloudfront é específica de orientação técnica para projetos Criação .cc que não se enquadrem com o uso da Cloudflare como solução.
Certificado público AWS Certificate Manager
Conforme documentação na AWS:
Um certificado público é necessário para suas distribuições do Amazon CloudFront para configurar o CloudFront para exigir que os visualizadores usem HTTPS, para que as conexões sejam criptografadas quando o CloudFront se comunicar com os visualizadores.
Siga os seguintes passos para gerar o certificado:
- Acesse console.aws.amazon.com/acm, certifique de emitir o certificado na região Norte da Virgínia;
- Clique no botão Solicitar;
- Na etapa Tipo de certificado, selecione a opção Solicitar um certificado público;
- Na etapa Tipo de certificado certificado público, siga com as seguintes informações:
- Nomes de domínio: preencher com o domínio e subdomínio www do seu site. (ex, criacao.cc e www.criacao.cc)
- Método de validação: Validação de DNS
- Algoritmo da chave: RSA 2048
- Clique no botão Solicitar.
Assim o próximo passo é fazer a validação do certificado. Clique no link da coluna ID do certificado referente ao certificado criado para abrir os detalhes do certificado.
O valor do status do certificado estará como Validação pendente. E as informações para validar o certificado estão na seção Domínios. Caso o domínio esteja na AWS Route 53, clique no botão Criar registros no Route 53. E na tela seguinte clique em Criar registros. Caso a tabela de DNS esteja em outro provedor, crie o registro CNAME na tabela do registro manualmente. A validação pode levar alguns minutos.
Depois que o status do certificado mudar para Emitido, os registros na tabela de DNS utilizados para a verificação não são mais necessário e podem ser excluídos.
Distribuição na CloudFront
A distribuição será responsável pela segurança e performance da aplicação.
Siga os seguintes passos para gerar o certificado:
- Acesse console.aws.amazon.com/cloudfront;
- Clique no botão Create distribution;
- Na seção Origin, preencha as seguintes informações:
- Origin domain: noproxy.criacao.cc
- Protocol: HTTPS only
- Minimum origin SSL protocol: TLSv1.2
- Origin path: deixe o campo vazio
- Name: Criação .cc
- Add custom header: não adicione nenhum header
- Enable Origin Shield: No
- Additional settings: Mantenha os valores pré-definidos
- Origin domain: noproxy.criacao.cc
- Na seção Default cache behavior, preencha as seguintes informações:
- Path pattern: Default (*)
- Compress objects automatically: Yes
- Viewer:
- Viewer protocol policy: Redirect HTTP to HTTPS
- Allowed HTTP methods: GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
- Não marque a opção para cachear o método OPTIONS
- Restrict viewer access: No
- Cache key and origin requests
- Legacy cache settings
- Headers: Include the following headers
- Add header: Host, Origin, Referer
- Headers: Add Custom
- Enter a custom header: Options
- Enter a custom header: User-Agent
- Query strings: All
- Cookies: All
- Object caching: Customize
- Minimum TTL: 0
- Maximum TTL: 0
- Default TTL: 0
- Response headers policy: deixe o campo vazio
- Não faça nenhuma alteração na seção Function associations
- Na seção Settings, preencha as seguintes informações:
- Price class: Use all edge locations (best performance)
- AWS WAF web ACL: deixe o campo vazio
- Alternate domain name (CNAME):
- domínio principal do seu site (ex, criacao.cc);
- subdomínios www do seu site (ex, www.criacao.cc);
- Custom SSL certificate: Selecione o certificado público gerado na AWS Certificate Manager
- Legacy clients support: não marque
- Security policy: TLSv1.2_2021 (recommended)
- Supported HTTP versions: marque apenas HTTP/2
- Default root object: deixe o campo vazio
- Standard logging: Off
- IPv6: On
- Description: Site Criação .cc
Certificado para servidor de origem
É necessária a instalação de um certificado SSL válido dentro do servidor da Criação .cc para a realização uma conexão segura com a CloudFront.
Certificados públicos criados na AWS ACM podem ser utilizados apenas em serviços da AWS. Portanto é necessária a geração de um certificado por uma autoridade de certificação reconhecida. O Cloudfront utiliza a lista de autoridades reconhecidas da Mozilla para certificar que a conexão entre a Cloudfront e o servidor da Criação .cc é segura.
IMPORTANTE: A Criação .cc não faz a gestão de certificados. Essa é uma responsabilidade do nosso cliente. Recomendamos a Let’s Encrypt como solução gratuita para a geração dos certificados.
Assim, tendo os arquivos do certificado em mãos, eles devem ser enviados para [email protected].
Cadastro de registro na tabela de DNS
ATENÇÃO: Essa etapa é crítica e deve ser feita no momento em que o site vai para o ar e com acompanhamento do suporte técnico da Criação .cc. Qualquer configuração errada, pode causar indisponibilidade do site.
Para que a distribuição seja acessível pelo endereço do site, é necessário o cadastro do endereço na tabela de DNS.
O registro é um CNAME e o valor dele é a Distribution domain name. Você encontra essa informação na seção Details na aba General da distribuição CloudFront.
Então caso utilize o serviço Route 53, basta acessar a zona hospedada do domínio e criar (ou editar) a entrada que vai responder pelo site.
- Nome do registro: nome do subdomínio do site. Se o site ficará no site principal, deixar em branco.
- Tipo de registro: A
- Marque a opção Alias
- Rotear tráfego para:Alias para distribuição do CloudFront
- No campo de busca, escolha a distribuição referente ao endereço.
- Política de roteamento: Roteamento Simples
- Clique em Criar registros se estiver criando o registro ou em Salvar caso esteja editando
Agora você terá realizado junto com o time da Criação .cc a integração AWS Cloudfront.
Por fim, te convidamos a conferir outros tutorias da categoria Configurações de domínio.