SSL-підключення до Windows VDS через RDP Gateway
Створення безпечного каналу зв'язку між віддаленими користувачами та сервером Windows‑VDS є одним із головних завдань адміністратора. Це можна зробити за допомогою правильного налаштування шлюзу віддалених робочих столів RD Gateway та встановлення SSL-сертифіката на його сервері. При цьому трафік протоколу RDP буде тунелюватися через HTTPS, гарантуючи наявність надійного з'єднання. Про те, як правильно це зробити і які при цьому можуть виникнути проблеми, поговоримо в цій статті.
Порядок дій
Існування безпечного каналу зв'язку вимагає тісної взаємодії різних служб і компонентів, тому важливо чітко дотримуватися послідовності кроків для їх встановлення та налаштування. Послідовність кроків при цьому буде такою:
Попередня підготовка;
- Генерація запиту на підпис сертифіката CSR;
- Встановлення SSL-сертифіката на сервер RD Gateway;
- Перевірка коректності роботи встановленого документа;
- Усунення помилок.
Нижче будуть реалізовані зазначені етапи створення захищеного каналу зв'язку.
Попередня підготовка
Перед встановленням документа та виконанням налаштувань слід виконати низку необхідних умов:
- Отримати доступ з правами адміністратора до Windows VDS-сервера з встановленим шлюзом RD Gateway;
- Призначити шлюзу повне доменне ім'я (FQDN), наприклад, rd.mydomain.ua;
- Мати чинний SSL-сертифікат, виданий на домен шлюзу RD;
- Завершено налаштування ролі шлюзу RD;
- Наявність доступу до диспетчера IIS;
- Для можливості імпорту документ повинен бути перетворений за допомогою OpenSSL у формат .pfx.
Генерація запиту на підпис CSR
Перед придбанням SSL-сертифіката необхідно згенерувати запит на його підпис або CSR (Certificate Signing Request). CSR містить відкритий ключ і відомості про домен, які необхідні для випуску документа Центром сертифікації.
Згенерувати CSR можна двома способами – за допомогою диспетчера IIS або використовуючи PowerShell і службу сертифікації Windows. Другий спосіб є більш складним і вимагає наявності великого досвіду. Тому для демонстрації процесу виберемо перший спосіб.
Для створення CSR слід на сервері виконати наступні дії:
- Запустити диспетчер IIS (Пуск > Виконати > inetmgr);
- У вікні диспетчера вибрати ім'я сервера;
- Відкрити закладку Сертифікати сервера;
- У правій частині вікна вибрати запис Створити запит на сертифікат;
- Ввести наступні дані:
- Доменне ім'я шлюзу RD Gateway;
- Ім'я власника домену або назва компанії;
- Адреса компанії.
- Вказати постачальника послуг криптографії (Microsoft RSA SChannel);
- Вказати довжину ключа;
- Зберегти файл CSR.
Якщо все було зроблено правильно, файл CSR готовий до використання.
Встановлення SSL-сертифіката
Виконаємо встановлення документа та його прив'язку до шлюзу віддаленого робочого столу. Для цього на сервері необхідно виконати наступні дії:
- Запустити диспетчер RD Gateway: Пуск > Адміністрування > Служби віддалених робочих столів > Диспетчер шлюзу віддалених робочих столів;
- У лівій половині вікна диспетчера виділити ім'я сервера RD Gateway і за допомогою контекстного меню відкрити вікно його властивостей;
- У вікні, що відкрилося, перейти на вкладку Сертифікат SSL і включити опцію Імпортувати сертифікат у сховище сертифікатів шлюзу віддалених робочих столів (локальний комп'ютер)/особисте сховище;
- Вибрати команду Імпорт сертифіката;
- У вікні, що відкрилося, вибрати об'єкт Сертифікат і натиснути кнопку Відкрити;
- Ввести пароль закритого ключа і підтвердити введення;
- Вибрати опцію Імпорт сертифіката і натиснути ОК.
Для того, щоб встановлений документ був застосований на сервері, необхідно перезапустити сервер або тільки службу RD Gateway.
Перевірка коректності роботи SSL-сертифіката
Коректність роботи встановленого сертифіката можна перевірити наступним чином:
- Підключитися до шлюзу RD за допомогою віддаленого клієнта і переглянути повідомлення, що з'явилися;
- Перевірити, щоб документ був виданий вашому домену і відображався як довірений;
- Перевірити документ також можна в онлайн режимі за допомогою сторонніх інструментів, наприклад, тут, ввівши в спеціальній формі повне доменне ім'я шлюзу RD.
Усунення помилок
Розглянемо деякі з найбільш поширених помилок, що виникають у процесі встановлення документа на сервері.
Помилка 1: The certificate is not from trusted certifying authority (Документ не виданий довіреним центром сертифікації).
Для її виправлення потрібно перевірити, щоб абсолютно всі сертифікати проміжних центрів сертифікації були встановлені в довіреному кореневому сховищі або на сервері.
Помилка 2: The certificate has expired or is not yet valid. (Термін дії сертифіката закінчився або він ще не дійсний.)
Для виправлення ситуації необхідно виконати наступні дії:
- Оновити або перевипустити документ у разі закінчення терміну його придатності;
- Перевірити, щоб годинник на сервері показував правильний час.
Помилка 3: The Server Name on the Certificate is incorrect. (У сертифікаті вказано неправильне ім'я сервера.)
Для виправлення помилки потрібно перевірити, чи доменне ім'я, яке прописано в SAN або CN документі, збігається з ім'ям, яке клієнти використовують для підключень.
Помилка 4: Connection fails due to missing SSL certificate selection, lack of user permission, or incorrect remote computer name format. (Підключення не вдалося через відсутність обраного SSL-сертифіката, відсутність дозволу користувача або неправильний формат імені віддаленого комп'ютера.)
Для її виправлення слід перейти в диспетчер шлюзу RD, де вибрати: Властивості > Сертифікат SSL, і вказати правильний документ.
Помилка 5: Сертифікат, пов'язаний з цим сайтом, не має закритого ключа.
Виправити ситуацію можна наступним чином:
- Кілька разів перевірити введений пароль на наявність помилок;
- Перевірити, чи імпортований закритий ключ правильно пов'язаний із сертифікатом;
- Перевірити наявність доступу у мережевої служби до закритого ключа.
Після виконання зазначених кроків, найімовірніше, помилка буде виправлена.