Налаштування let's Encrypt на Microsoft Azure

Довго шукав, як безболісно налаштувати SSL сертифікат від let's Encrypt на Microsoft Azure. У рунеті з цим виявилися проблеми, але на просторах великого інтернету знайшлася дуже і дуже придатна статья, по якій мені вдалося налаштувати це шайтанство. Думаю, для новачків, у яких проблеми з іноземними мовами (буває таке, але всі ми вчимося), переклад статті стане в нагоді.

image

Отже, почнемо.

1. Сервісний план обслуговування нашого веб-додатки на Azure повинен бути не нижче «Стандартного» (простіше кажучи, будь-який, окрім Basic — Базового).

image

2. Свій домен. Для налаштування SSL сертифікату необхідний кастомный домен, який можна прикрутити в меню «Власні домени» в панелі налаштувань програми. Налаштувати SSL сертифікат для домену, подібного .azurewebsites.net не можна.



МагіяНаступні два пункти я погано розумію, але і без них працює чудово. Але це у мене, як буде працювати у вас — не знаю, тому, якщо хто в курсі, що це таке і з чим його їдять — буду радий і додам до статті.

3. Створюємо аккаунт сховища даних. Докладно описано в этой статті, але вона на англ. мовою. По-простому: . Створюємо.

4. Налаштовуємо
5. Налаштовуємо доступ до нашим службам

Встановлюємо і запускаємо PowerShell від імені адміністратора. Встановлюємо AzurePowerShellModule

# Install the Azure Resource Manager modules from the Gallery PowerShell
Install-Module AzureRM

# Install the Azure Service Management module from the Gallery PowerShell
Install-Module Azure

# To make sure the Azure PowerShell module is available after you install
Get-Module -ListAvailable Azure*

Import-Module "C:\Program Files\WindowsPowerShell\Modules\Microsoft\XXXX\azure.psd1"
Import-Module "C:\Program Files\WindowsPowerShell\Modules\Microsoft\XXXX\expressroute\expressroute.psd1"

Логинимся в Azure

Login-AzureRmAccount

Задаємо логін-пароль для подальшої авторизації програми let's Encrypt:

$uri = 'http://{some random name}'
$password = '{some strong password}'

Виконуємо кілька магічних команд)))

$app = New-AzureRmADApplication -DisplayName {some display name} -HomePage $uri -IdentifierUris $uri -Password $password

New-AzureRmADServicePrincipal -ApplicationId $app.ApplicationId

New-AzureRmRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $app.ApplicationId

$app.ApplicationId

Тепер у нас є
ClientSecret = $password
ClientID = ApplicationID
Запам'ятаємо їх.

Установка let's Encrypt

Йдемо в SCM консоль (https://{your site name}.scm.azurewebsites.net), переходимо в розділ Розширення(Site Extentions), вибираємо пункт «Галерея» і шукаємо там модуль let's Encrypt Azure. Встановлюємо!

image

Після установки модуля перезапускаємо сайт (кнопка Restart Site), і запускаємо модуль. Тепер нам залишилося його налаштувати.

image

Заповнюємо поля:

letsencrypt:Tenant
letsencrypt:SubscriptionId
letsencrypt:ClientId
letsencrypt:ClientSecret
letsencrypt:ResourceGroupName

Наступним чином:

image

letsencrypt:Tenant з мітки #1.
letsencrypt:SubscriptionId з мітки #2
letsencrypt:ResourceGroupName з мітки #3
letsencrypt:ClientId = наш ClientID, який ми пам'ятаємо
letsencrypt:ClientSecret = наш ClientSecret, який ми пам'ятаємо і нікому не говоримо

Тепер, в налаштуваннях програми на порталі Azure повинні бути видні налаштування нашого розширення:

image

Задоволені собою, SCM консолі сміливо жмякаем «Next» і йдемо випускати сертифікат.
Тут все просто — з випадаючого меню вибираємо домен, для якого випускаємо сертифікат, і вказуємо пошту, яку хочемо.

image

Закінчуємо налаштування, на всякий випадок перезапускаємо сайт (це ж Microsoft! Переустановка часто допомагає від зависань, багів, гаймориту і простого чиха).

Якщо все пройшло добре — вітаємо, тепер у вас є безкоштовний SSL сертифікат, котируються майже всіма браузерами.

image

І це ще не все!

На жаль, не вдалося це перевірити (так як налаштовував всі днями і термін перевипуску домену ще не настав), але передбачається, що сертифікат автоматично перевыпустится, коли закінчиться термін його дії. У будь-якому випадку, зайти і перевипустити сертифікат можна буквально одним натисканням кнопки, але передбачається (і я щиро на це сподіваюся), що перевипуск сертифіката вже налаштований.

image

P. S. Знаючих людей прошу поділитися відсутньої інформацією, щоб стаття була більш повною.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.