Fala, galera!
Já imaginaram rodar seus sites com um domínio próprio e ainda em HTTPS no Azure?
Neste artigo irei explicar como podemos utilizar o Azure Web App utilizando um domínio customizado com o Let’s Encrypt.
- E o que seria o Let’s Encrypt?
Let’s Encrypt é um serviço gratuito, automatizado e uma Autoridade Certificadora Aberta. Isso significa que você pode obter certificados para SSL (Secure Socker Layer) de forma gratuita, ou seja, transformar seu site http:// para https://.
Ele usa um protocolo chamado “ACME – Automated Certificate Management Environment” que auxilia nas instalações do certificado no seu site.
O Let’s Encrypt é tão fantástico que existe uma extensão que auxilia na instalação do certificado no seu site.
Habilitando HTTPS no seu Azure Web App
Para habilitar o HTTPS no seu Azure Web App devemos seguir alguns passos e usar alguns serviços do Azure que irão auxiliar nesta tarefa.
1 – Criar um Azure Web App
Crie o Azure Web App e escolha um plano de serviço que forneça domínio customizado e HTTPS, conforme mostrado na imagem abaixo:
2 – Configurar seu domínio customizado no Azure Web App
Com seu domínio já comprado, faça o registro, associe ao Azure Web App e ative somente o HTTPS conforme a imagem abaixo:
3 – Registrar o Web App no Azure AD
Para que possamos rodar o WebJob do Let’s Encrypt e instalar o certificado de segurança, devemos registrar o nosso Web App no Azure AD conforme a figura abaixo. Copie o ID DO APLICATIVO, pois iremos usar posteriormente.
4 – Criar uma senha do Aplicativo
Após o registro, vá em Settings, e em Keys e crie uma senha conforme mostrado abaixo. Copie a senha – usaremos posteriormente.
5 – Instalar a Extensão do Let’s Encrypt
Feita toda a configuração do Azure AD, temos que instalar a extensão do Let’s Encrypt no Web App.
6 – Configurar o WebJob
O Let’s Encrypt cria certificados SSL com validade de 90 dias, mas não se preocupe, você não precisará repetir esse processo a cada 90 dias.
A extensão do Let’s Encrypt cria um Web Job no qual ele fará todo o processo de instalação do certificado SSL pra você. Vamos configurar nosso Web Job conforme a figura abaixo para que faça esse trabalho pra nós.
Vá em Settings e ligue o Always On e em seguida vamos configurar as chaves do Web Job.
Para que o Web Job funcione corretamente, precisamos criar uma conta no Azure Storage. Na criação da chave do Web Job vamos configurar a connection string do Azure Storage.
A connection string do Azure Storage é uma chave parecida com essa abaixo:
- DefaultEndpointsProtocol=https;AccountName=[myaccount];AccountKey=[mykey];
7 – Configurar Lets Encrypt e instalar certificado de segurança SSL
Nesta última parte do nosso artigo vamos configurar o Let’s Encrypt. Para isso devemos ir em Advanced Tools, conforme a imagem abaixo:
Vamos preencher o formulário com as informações abaixo:
- Tenant: você obtêm no Azure Active Directory, ou clique em seu nome no canto superior direto e vá em mudar diretório – lá você encontra a informação do seu Tenant
- Subscription Id: você obtém na aba Overview do seu Web App
- ClientId: ID do Aplicativo que foi copiado do passo 3 do registro do aplicativo
- Client Secret: senha que foi criada no passo 4
- ResourceGroupName: grupo de recurso no qual o Web App está inserido. Obtido na aba Overview.
Ao inserir as informações você será redirecionado para outro formulário, conforme a imagem abaixo:
Selecione o seu domínio customizado e preencha com a informação de seu e-mail.
Ao clicar em “Request and Install Certificate“, você deverá ver uma tela indicando que o certificado foi instalado com sucesso.
Para testar, vamos entrar no site e verificar que realmente estamos usando o Let’s Encrypt como Autoridade Certificadora.
Com isso, agora o certificado do Let’s Encrypt está instalado em nosso Web App e estamos em HTTPS.
A instalação do Let’s Encrypt não é um trabalho complicado, porém, são muitos detalhes que temos que nos atentar. O Let’s Encrypt é uma mão na roda para se usar em sites pequenos e até mesmo em hotsite.
Abraços e até a próxima!