- Введение
- Ms remote desktop gateway, haproxy и перебор пароля
- Oracle api gateway
- Архитерктура tls-криптошлюза
- Аутентификация пользователей
- Возможности tls-клиента
- Вопросы и ответы по продукту vipnet tls gateway
- Дополнительные функции
- Зачем вообще нужны api gateway
- Как используют облачные api gateway
- Как работает шлюз удалённых рабочих столов?
- Мониторинг и работа с журналами
- Общие сведения
- Отказоустойчивость и масштабирование
- Подключение пользователей к ресурсам фермы rds с помощью шлюза
- Предупреждение о самоподписанном сертификате rdp
- Работа с криптоключами
- Режимы работы
- Создаем шаблон rdp сертификата в центре сертификации (ca)
- Управление tls-криптошлюзом
- Управление доступом удалённых пользователей
- Установка instantssl сертификата: citrix secure gateway
- Установка ssl-сертификата
- Установка службы rd gateway
- Выводы
Введение
В настоящее время идёт всеобщее развитие IT-инфраструктуры и автоматизации рабочих мест. У предприятий появляется потребность в надёжной и безопасной связи центрального офиса с удалёнными компьютерами сотрудников. Возникает необходимость защиты соединений для передачи конфиденциальной информации.
Кроме того, ряд нормативных актов РФ в области информационной безопасности обязывает обеспечивать защищённый обмен сведениями определённого рода. В частности, если речь идёт о персональных данных, то основанный на одноимённом Федеральном законе №152-ФЗ приказ ФСТЭК России №21 обязывает охранять их от раскрытия, модификации и навязывания — ввода ложной информации — при передаче (или подготовке к передаче) по каналам связи, имеющим выход за пределы контролируемой зоны, в том числе — беспроводным.
Схожие требования прописаны и в приказе ФСТЭК России №17, который касается обеспечения безопасности данных, содержащихся в государственных информационных системах. Также о защите каналов связи и об организации защищённого удалённого доступа говорится в нормативных актах, регламентирующих оборону критической информационной инфраструктуры, в частности — в приказах ФСТЭК России №239 и №31.
Чаще всего для организации защищённого канала связи создают виртуальную частную сеть (VPN) с использованием криптоалгоритмов ГОСТ. Для этого применяются криптошлюзы и клиентское программное обеспечение. Законодателями мод в этой нише стали такие разработчики, как «ИнфоТеКС», «Код Безопасности» и «С-Терра».
Однако подобное решение представляет собой весьма тяжёлую конструкцию, поскольку необходимо не только использовать криптошлюз, но и устанавливать VPN-клиенты на все рабочие станции, с которых требуется производить подключение. Поэтому такой вариант больше подходит для защиты каналов связи между подразделениями компании.
В то же время решения на базе TLS-криптошлюзов позволяют создавать защищённые соединения и без VPN-клиентов, с использованием одного лишь браузера и установленных сертификатов. Это даёт возможность получать доступ к корпоративным ресурсам даже со смартфонов и планшетов. Реализация данного решения требует небольшого количества времени.
Ms remote desktop gateway, haproxy и перебор пароля
Друзья, привет!
Существует множество способов подключения из дома к рабочему месту в офисе. Один из них — это использовать Microsoft Remote Desktop Gateway. Это RDP поверх HTTP. Я не хочу здесь затрагивать настройку самого RDGW, не хочу рассуждать, почему он хорош или плох, давайте отнесёмся к нему, как к одному из инструментов удалённого доступа. Я хочу поговорить о защите вашего RDGW сервера от злого интернета. Когда я настроил RDGW сервера, я тут же озаботился защитой, особенно защитой от перебора пароля. Меня удивило, что я не нашёл в интернетах статей о том, как можно это сделать. Ну что ж, придётся делать самостоятельно.
Сам по себе RDGW не имеет никаких защит. Да, его можно выставить голой ж интерфейсом в белую сеть и будет прекрасно работать. Но правильному администратору или ИБ’шнику будет от этого неспокойно. К тому же позволит избежать ситуации блокирования учётной записи, когда нерадивый сотрудник запомнил пароль корпоративного аккаунта на домашнем компьютере, а затем сменил свой пароль.
Хороший способ защиты внутренних ресурсов от внешней среды — это различные прокси, системы публикации и прочие WAF. Вспомним, что RDGW это всё таки http, тогда прям напрашивается воткнуть специализированное решение между внутренними серверами и интернетом.
Я знаю, что есть крутые F5, A10, Netscaler(ADC). Как администратор одной из этих систем, скажу, что настроить защиту от перебора на этих системах тоже возможно. И да, эти системы попутно защитят вас от всякого syn флуда.
Но далеко не каждая компания может позволить себе приобрести подобное решение (и найти администратора такой системы :), а о безопасности, при этом, позаботиться может!
Вполне возможно установить бесплатную версию HAProxy на бесплатной операционной системе. Я тестировал на Debian 10, в стабильным репозитарии версия haproxy 1.8.19. Так же проверял на версии 2.0.хх из testing репозитария.
Настройку самого debian оставим за пределом статьи. Кратко: на белом интерфейсе закрыть всё, кроме 443 порта, на сером интерфейсе — согласно вашей политике, например тоже закрыть всё, кроме 22 порта. Открыть только то, что необходимо для работы (VRRP например, для плавающего ip).
Перво-наперво настроил haproxy на SSL bridging mode (он же mode http) и включил логирование, чтобы посмотреть, что же там внутри RDP ходит. Так сказать, влез посередине. Так вот, указанный во «всех» статьях по настройке RDGateway путь /RDWeb отсутствует. Всё, что там есть, это /rpc/rpcproxy.dll и /remoteDesktopGateway/. При этом не используются стандартные GET/POST запросы, используется свой тип запроса RDG_IN_DATA, RDG_OUT_DATA.
Не много, но хоть что-то.
Давайте тестировать.
Запускаю mstsc, иду на сервер, в логах вижу четыре ошибки 401 (unauthorized), затем ввожу логин/пароль и вижу ответ 200.
Отключаю, запускаю заново, в логах вижу те же четыре ошибки 401. Ввожу ошибочные логин/пароль и вижу снова четыре ошибки 401. То, что надо. Это и будем отлавливать.
Поскольку определить login url так и не удалось, и к тому же я не знаю, как в haproxy отлавливать именно ошибку 401, то буду отлавливать (на самом деле не отлавливать, а считать) все ошибки 4xx. Тоже устроит для решения задачи.
Суть защиты будет состоять в том, что мы будем считать кол-во ошибок 4xx (на backend) в единицу времени и если оно превысит указанный предел, то отклонять (на frontend) все дальнейшие соединения с этого ip в течении указанного времени.
Технически, это не будет защитой от перебора пароля, это будет защитой от ошибок 4xx. Например, если часто запрашивать несуществующий url (404), то защита так же сработает.
Самый простой и работающий способ — это на backend посчитать и отбить, если чего лишнего появилось:
frontend fe_rdp_tsc
bind *:443 ssl crt /etc/haproxy/cert/desktop.example.com.pem
mode http
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
mode http
...
#создать таблицу, строковую, 1000 элементов, протухает через 15 сек, записать кол-во ошибок за последние 10 сек
stick-table type string len 128 size 1k expire 15s store http_err_rate(10s)
#запомнить ip
http-request track-sc0 src
#запретить с http ошибкой 429, если за последние 10 сек больше 4 ошибок
http-request deny deny_status 429 if { sc_http_err_rate(0) gt 4 }
...
server rdgw01 192.168.1.33:443 maxconn 1000 weight 10 ssl check cookie rdgw01
server rdgw02 192.168.2.33:443 maxconn 1000 weight 10 ssl check cookie rdgw02
Не самый хороший вариант, усложним. Считать будем на backend, а блокировать на frontend.
С атакующим поступим грубо, будем скидывать ему tcp соединение.
frontend fe_rdp_tsc
bind *:443 ssl crt /etc/haproxy/cert/ertelecom_ru_2020_06_11.pem
mode http
...
#создать таблицу ip адресов, 1000 элементов, протухнет через 15 сек, сохрянять из глобального счётчика
stick-table type ip size 1k expire 15s store gpc0
#взять источник
tcp-request connection track-sc0 src
#отклонить tcp соединение, если глобальный счётчик >0
tcp-request connection reject if { sc0_get_gpc0 gt 0 }
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
mode http
...
#создать таблицу ip адресов, 1000 элементов, протухнет через 15 сек, сохранять кол-во ошибок за 10 сек
stick-table type ip size 1k expire 15s store http_err_rate(10s)
#много ошибок, если кол-во ошибок за 10 сек превысило 8
acl errors_too_fast sc1_http_err_rate gt 8
#пометить атаку в глобальном счётчике (увеличить счётчик)
acl mark_as_abuser sc0_inc_gpc0(fe_rdp_tsc) gt 0
#обнулить глобальный счётчик
acl clear_as_abuser sc0_clr_gpc0(fe_rdp_tsc) ge 0
#взять источник
tcp-request content track-sc1 src
#отклонить, пометить, что атака
tcp-request content reject if errors_too_fast mark_as_abuser
#разрешить, сбросить флажок атаки
tcp-request content accept if !errors_too_fast clear_as_abuser
...
server rdgw01 192.168.1.33:443 maxconn 1000 weight 10 ssl check cookie rdgw01
server rdgw02 192.168.2.33:443 maxconn 1000 weight 10 ssl check cookie rdgw02
тоже же самое, но вежливо, будем возвращать ошибку http 429 (Too Many Requests)
frontend fe_rdp_tsc
...
stick-table type ip size 1k expire 15s store gpc0
http-request track-sc0 src
http-request deny deny_status 429 if { sc0_get_gpc0 gt 0 }
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
stick-table type ip size 1k expire 15s store http_err_rate(10s)
acl errors_too_fast sc1_http_err_rate gt 8
acl mark_as_abuser sc0_inc_gpc0(fe_rdp_tsc) gt 0
acl clear_as_abuser sc0_clr_gpc0(fe_rdp_tsc) ge 0
http-request track-sc1 src
http-request allow if !errors_too_fast clear_as_abuser
http-request deny deny_status 429 if errors_too_fast mark_as_abuser
...
Проверяю: запускаю mstsc и начинаю беспорядочно вводить пароли. После третьей попытки за 10 сек меня отпинывает, а mstsc выдаёт ошибку. Что и видно в логах.
Пояснения. Я далеко не мастер haproxy. Я не понимаю, почему, например
http-request deny deny_status 429 if { sc_http_err_rate(0) gt 4 }
позволяет сделать около 10 ошибок, прежде чем сработает.
Я путаюсь в нумерации счётчиков. Мастера haproxy, буду рад, если дополните меня, поправите, сделаете лучше.
В комментариях можете накидать других способов защиты RD Gateway, будет интересно изучить.
Касательно клиент удалённого рабочего стола Windows (mstsc), стоит отметить, что он не поддерживает TLS1.2 (во всяком случае в Windows 7), поэтому пришлось оставить TLS1; не поддерживает актуальные cipher, поэтому так же пришлось оставить старые.
Для тех, кто ничего не понял только учится, и уже хочет сделать хорошо, приведу весь конфиг.
Почему два сервера на backend? Потомучто так можно сделать отказоустойчивость. Haproxy тоже можете сделать два с плавающим белым ip.
Вычислительные ресурсы: можно начать с «два гига, два ядра, игровой ПК». Согласно википедии этого будет достаточно с запасом.
Ссылки:
Настройка rdp-gateway от HAProxy
Единственная найденная мною статья, где озаботились перебором пароля
Oracle api gateway
Сервис Oracle API Gateway стал доступен любому пользователю в конце 2021 года и уже пытается активно конкурировать с Amazon API Gateway. Получится ли у него отвоевать хотя бы часть аудитории у AWS, нам только предстоит увидеть… а сравнивать всегда интереснее на собственном опыте. Почитать про создание своего API Gateway можно вот в этой статье.
Особенности платформы:
RESTful API в комбинации с Oracle Functions, а также возможностями Kubernetes и Compute.
Каждая служба в облачной инфраструктуре Oracle интегрируется с IAM для аутентификации и авторизации (консоль, SDK или CLI и REST API).
Интеграция с системой управления доступом Oracle Cloud Infrastructure.
Бесплатный период длительностью в тридцать дней, чтобы опробовать возможности широкого спектра сервисов Oracle Cloud, в том числе к Databases, Analytics, Compute, Container Engine for Kubernetes и т. д.
Платформа Oracle Cloud позиционирует себя как более экономичное решение, чем AWS, и в качестве примера упоминает, что соотношение цены и производительности в 2 раза выше, а стоимость исходящей пропускной способности составляет только 1/4 от стоимости у AWS.
Архитерктура tls-криптошлюза
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Вид поставки | Программно-аппаратный комплекс, виртуальная машина | Программно-аппаратный комплекс, виртуальная машина | Программно-аппаратный комплекс | Программно-аппаратный комплекс, виртуальная машина | |
| Архитектура системы | Серверная и клиентская части, центр управления сетью | Серверная и клиентская части | Серверная и клиентская части | Серверная и клиентская части | |
| Совместимость со средами виртуализации | Microsoft Hyper-V 8 / 8.1 / 10 / 2008 / 2008R2 / 2021 / 2021R2 / 2021, VMware Workstation 11—15, VMware vSphere ESXi 5.5—6.7, Virtual Box 3.2—5.2, Xen 7.1—7.6 | Oracle VM VirtualBox 5.0 / 5.1 / 5.2, VMware vSphere ESXi 6.0 / 6.5 / 6.7, VMware Workstation 14 / 15, KVM | Совместим только тестовый дистрибутив | VMware ESXi, Workstation, Citrix XenServer, Microsoft Hyper-V, KVM | |
| Сетевые интерфейсы младшей модели | Модель NGate 300: 4×10/100/1000BASE-T RJ45 | Модель TLS 500: 4×10/100/1000BASE-T RJ45 | Модель IPC-50: 4х10/100/1000 BASE-T RJ45, 1x1GB SFP | Модель «С-Терра TLS 100»: 3х10/100/1000BASE-T RJ45 | |
| Сетевые интерфейсы старшей модели | Модель NGate 3000: 4х10/100/1000BASE-T RJ45, 4x10GB SFP | Модель TLS 5000: 4×10/100/1000BASE-T RJ45, 4x10G SFP | Модель IPC-3000: 1х10/100/1000BASE-T RJ45, 4x10GB SFP | Модель «С-Терра TLS 7000»: 4×10/100/1000BASE-T RJ45, 4x10G SFP | |
Аутентификация пользователей
| Критерий сравнения | КриптоПро NGate 1.0 | ViPNet TLS Gateway 1.5 | Континент TLS 2.1 | С-Терра TLS | |
| Аутентификация удалённых пользователей и администратора на основе технологии открытых ключей (X.509 v.3) | Да | Да | Да | Да | |
| Разграничение доступа к защищаемым ресурсам на основе полей сертификата, вплоть до OU (Organization Unit) | Да | Да | Да | Да | |
| Аутентификация пользователей в Active Directory с помощью протокола LDAP с использованием сертификатов, записанных в LDAP (MS AD) | Да | Да | Да | Нет | |
| Аутентификация пользователей в Active Directory с помощью протокола LDAP с использованием логина и пароля | Да | Да | Да | Нет | |
| Аутентификация пользователей по локальной базе данных | Да | Нет, в разработке | Да | Да | |
| Возможность разрешения, запрещения, ограничения использования веб-приложений клиентом на основе политик | Да | Да | Да | Нет | |
| Проверка сертификатов ключей по спискам отозванных сертификатов (CRL) | Да | Да | Да | Да | |
| Поддержка аутентификации по UPN-сертификату | Да | Нет, в разработке | Да | Нет | |
| Перечень поддерживаемых идентификаторов | «Рутокен», eToken, JaCarta, ESMART | ESMART Token, Infotecs Software Token, aKey, ViPNet HSM, JaCarta, «Рутокен», «Рутокен S», R301 Foros, SafeNet eToken (eToken Aladdin) | USB флеш-накопители / USB-ключи: «Рутокен Lite», «Рутокен S», «Рутокен ЭЦП 2.0 Flash», JaCarta PKI, JaCarta ГОСТ, JaCarta 2 ГОСТ, JaCarta PKI / ГОСТ, eToken PRO (Java), Esmart USB Token, Esmart USB Token ГОСТ; смарт-карты: «Рутокен ЭЦП», «Рутокен Lite», JaCarta PKI, JaCarta ГОСТ, eToken PRO (Java), eToken PRO, Esmart, Esmart ГОСТ; идентификаторы: DS1995, DS1996 | eToken Java 72К, JaCarta PKI, JaCarta PKI / ГОСТ, «Рутокен Lite», «Рутокен ЭЦП», «Рутокен ЭЦП 2.0» | |
| Режим работы без аутентификации пользователя | Да, в режиме TLS Offload | Да, в режиме одностороннего TLS | Да | Да, в режиме одностороннего TLS | |
Возможности tls-клиента
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Перечень поддерживаемых ОС для собственных TLS-клиентов | Microsoft Windows | 7 / 8 / 8.1 / 10 / Server 2003 / Server 2008 / Server 2008 R2 / Server 2021 / Server 2021R2 / Server 2021 | 7 / 8.1 / 10 / Server 2008R2 / Server 2021 / Server 2021R2 / Server 2021 / Server 2021 | 7 / 8.1 / 10; серверные версии, начиная с Server 2021, будут доступны в ближайшем обновлении (версия 2.2) | 10 |
| Linux | CentOS 7, Red OS, Fedora, Oracle Linux 7, SUSE Linux Enterprise Server 12, ОpenSUSE 13.2, RHEL 7, Ubuntu 14 / 16 / 17 / 18, Linux Mint 13 / 14 / 15 / 16 / 17 / 18, Debian 7 / 8 / 9, Astra Linux Special Edition, Common Edition, ALT Linux 7, «Альт 8 СП», ROSA 2021, РОСА «ХРОМ» / «КОБАЛЬТ» / «НИКЕЛЬ», ThinLinux | «Альт 8 СП “Рабочая станция”», «Альт Линукс СПТ 7.0», «РЕД ОС 7.1 “МУРОМ”», Astra Linux Common Edition 2.12, Astra Linux Special Edition 1.5 / 1.6, Debian 7.11 / 8.11 / 9.8, Ubuntu 14.04 LTS / 16.04 LTS, Ubuntu Server 16.04 LTS | Нет, будет доступно в ближайшем обновлении (версия 2.2) | Debian 9 / 10, Astra Linux Special Edition 1.6 | |
| Apple macOS | Mac OS X 10.9 / 10.10 / 10.11 / 10.12 / 10.13 / 10.14 | Mac OS X 10.10 и выше | Нет | Нет | |
| Мобильные ОС | Android, iOS | «Аврора» (встроенными средствами самой ОС); в разработке: Android, iOS | Нет, в разработке (Android, iOS, «Аврора») | Android, iOS | |
| Поддерживаемые браузеры | Любые соблюдающие спецификацию TLS | Любые соблюдающие спецификацию TLS | Любые соблюдающие спецификацию TLS | «Спутник», Chromium c поддержкой ГОСТ | |
| Собственный TLS-клиент | Да | Да | Да | Да | |
| Наличие бесплатного TLS-клиента | Да | Да | Да | Да | |
| Возможность использования защищённых ключевых носителей в клиентском ПО | Да | Да | Да | Да | |
| Поддержка мобильных устройств | Да | Да | Да | Да | |
| Возможность подключения без TLS-клиента | Да | Да, через браузер | Нет | Да, через браузер | |
Вопросы и ответы по продукту vipnet tls gateway
1. Перезагрузите ViPNet TLS Gateway.
2. Если проблема сохраняется, произведите контроль целостности ViPNet TLS Gateway, выбрав пункт 1 «Check system integrity». Если проверка выполнена неуспешно, произведите выгрузку служебных журналов и обратитесь в службу технической поддержки компании «ИнфоТеКС».
3. Если проверка контроля целостности выполнена успешно, запустите процесс повторной инициализации ViPNet TLS Gateway – 3 Restart initialization process (backup restore, system settings) of the TLS-Gateway. The system will reboot. В процессе повторной инициализации может быть несколько вариантов исправления проблемы:
3.1. Если при повторной инициализации был запущен биометрический датчик случайных чисел (электронная рулетка) «Press different keys», следуйте указаниям мастера инициализации и нажимайте произвольные клавиши на клавиатуре для работы электронной рулетки до появления сообщения «Done». Остальные шаги следует пропустить. После завершения инициализации попробуйте подключиться к веб-интерфейсу ViPNet TLS Gateway.
3.2. Если при повторной инициализации биометрический датчик случайных чисел не был запущен, возможно несколько вариантов проблем и путей решения в процессе повторной инициализации:
3.2.1. Некорректно заданы сетевые настройки. В этом случае может помочь повторный ввод сетевых настроек. Для этого в мастере инициализации откажитесь от пропуска шага «Change network settings» и задайте правильные настройки сети.
3.2.2. Истек срок действия CRL. В этом случае может помочь повторная загрузка CRL. Для этого в мастере инициализации откажитесь от пропуска шага «Load CRL».
3.2.3. Истек срок действия транспортных сертификатов. В этом случае может помочь обновление транспортных сертификатов. Для этого в мастере инициализации откажитесь от пропуска шага «Create certificate request» и создайте новые запросы на сертификаты, а затем, следуя подсказкам мастера, загрузите новые сертификаты.
3.2.4. Закончились доступные транспортные ключи. В этом случае может помочь формирование новых транспортных ключей и обновление транспортных сертификатов. Для этого в мастере инициализации откажитесь от пропуска шага «Generate keys» и сформируйте новые транспортные ключи. Затем, следуя подсказкам мастера, сформируйте запросы на транспортные сертификаты и загрузите новые сертификаты.
3.2.5. Загружен неверный сертификат Администратора TLS Gateway. Убедитесь, что серийный номер и отпечаток загружаемого сертификата совпадают с сертификатом, установленным на АРМ Администратора.
4. Если все предыдущие пункты выполнены успешно, возможно, проблема на стороне АРМ Администратора. В этом случае необходимо убедиться в следующем:
4.1. Установленный криптопровайдер ViPNet CSP зарегистрирован, в этом случае при запуске приложения не будет уведомлений с требованием регистрации.
4.2. Убедитесь, что в ViPNet CSP на закладке «Дополнительно» включены параметры «Поддержка работы ViPNet CSP через Microsoft CryptoAPI» и «Поддержка TLS 1.2».
4.2.1. Если данные пункты не отображаются, их необходимо доустановить через «Установка и удаление программ», выбрав пункт «Изменить» на приложении ViPNet CSP.
4.3. Убедитесь, что в ViPNet CSP проходит проверку установленный сертификат Администратора TLS Gateway: сертификат имеет закрытый ключ, не истек срок действия, вся цепочка сертификации валидна, установлены актуальные CRL и CA в хранилище сертификатов Windows.
5. Если все предыдущие пункты выполнены, попробуйте выполнить «Восстановление» ViPNet CSP в оснастке «Установка и удаление программ», перезагрузите ПК и проверьте подключение еще раз.
6. Если все перечисленные пункты не подошли, необходимо собрать следующую информацию:
6.1. Произведите выгрузку служебных журналов через консоль TLS Gateway.
6.2. На АРМ Администратора собрать дамп трафика при обращении к TLS Gateway при помощи любого анализатора трафика, например, Wireshark. Собранную информацию необходимо передать в службу технической поддержки компании «ИнфоТеКС».
Дополнительные функции
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Наличие функции МСЭ | Да, МСЭ FortiGate при интеграции со шлюзом безопасности «Граница» | Нет | Да | Да | |
| Наличие встроенного WAF | Да, WAF Wallarm встроен внутрь шлюза | Нет, только в версии 1.4 и ниже | Сертифицированное взаимодействие с Континент WAF | Нет | |
| Наличие Web API | Нет | Да | Да | Да | |
| Интеграция с другими решениями по информационной безопасности | Да: интеграция со шлюзом безопасности «Граница», разные SIEM, Indeed ID, SafeConnect, Check Point (управление, политики VPN) | Да: SIEM-системы, ViPNet Client, ViPNet Coordinator, ViPNet УЦ, IDPoint | Да: АПКШ «Континент», «Континент 4», Secret Net Studio, «Континент WAF», Kaspersky DDoS Protection, SIEM | Да: интеграция с «С-Терра Шлюз 4.3», «С-Терра СОВ 4.2», SIEM | |
Зачем вообще нужны api gateway
При работе с микросервисной архитектурой рано или поздно приходится столкнуться с проблемой, которой нет у монолитных систем, — с необходимостью получать и обрабатывать данные из нескольких источников для обслуживания одного-единственного запроса.
Представьте себе: у вас есть интернет-магазин по продаже реплик молота Тора. Для удобства пользователя имеется как сайт под десктоп и мобильные устройства, так и приложения для Android и iPhone, которые взаимодействуют с сервером через REST API.
Чтобы на странице товара отображались верные данные, нам нужно обратиться к нескольким службам: в одной учитывается наличие молота, в другой записаны материал, вес и длина ручки, в третьей сохраняются отзывы клиентов, а цена вообще указана в четвёртой. API Gateway позволяет обойтись одним запросом.
API Gateway выполняет множество задач: принимает, обрабатывает и распределяет запросы, контролирует трафик, осуществляет мониторинг и контроль доступа.
В микросервисной архитектуре паттерн API Gateway появился в качестве службы, обеспечивающей единую точку входа для веб-приложений и API, эдакой «серверной части для клиентской части». В чём польза именно для микросервисов?
Например — возможность повторного использования компонентов, упрощение бэкенда приложения, обеспечение доступа к статическим веб-страницам и документам, удобная проверка авторизации и подбор оптимального для каждого типа клиента API — как это делает Netflix API Gateway.
Как используют облачные api gateway
Виртуальная доска
Простое приложение, состоящее из двух конечных точек — POST для записи сообщений и GET для извлечения трёх последних сообщений. Реализовано с помощью AWS Gateway, AWS DynamoDB, AWS Serverless Application Model и Lambda.
Голосовой сервиc
Рецепт сервиса записи к врачу и регистрации в поликлинике, разработанный коммуникационной платформой Voximplant и Yandex.Cloud.
Бот для телеграма
Запуск бота на Python внутри одного из облачных сервисов, а именно — Yandex.Cloud.
Трекер пульсометрии
Один из вариантов решения для сбора данных пульсовой оксиметрии для нескольких пользователей, отслеживания этих данных и обмена ими. Фронт написан на VueJS, бэкенд реализован с применением Amazon API Gateway.
Статический сайт в облаке
Пошаговая инструкция по деплою статического сайта в облако, прикрутке к нему сертификата Let’s Encrypt, домена второго уровня и настройке API-шлюза в системе Yandex.Cloud.
Блог
И снова приложение на микросервисах — реализация клиентской части на VueJS, взаимодействие настроено через REST API и gRPC, а в качестве базы данных используется MongoDB.
Как работает шлюз удалённых рабочих столов?
Если описывать вкратце, то в случае, когда клиент инициирует подключение к шлюзу удалённых рабочих столов, шлюз первым делом устанавливает защищенное соединение между собой и клиентом. Затем, сервер шлюза проверяет учётную запись пользователя или компьютера на право доступа к службе шлюза и, в случае успеха, проводит авторизацию клиента.
После того, как клиент авторизирован шлюз проверяет имеет ли клиент право на доступ к запрашиваемому ресурсу. И в том случае, если клиент имеет право на подключение, то шлюз устанавливает соединение между собой и внутренним ресурсом. Вся дальнейшая передача каких-либо данных между внешним клиентом и внутренним ресурсом осуществляется строго через шлюз.

Нововведения в службе шлюза удалённых рабочих столов
Нововведений в службе RD Gateway по сравнению с предыдущей версией действительно много и вот самые значительные из них:
Что же нового приносят эти функции? Давайте разбираться.
Мониторинг и работа с журналами
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Регистрация событий, связанных с настройкой и функционированием TLS-криптошлюза | Да | Да | Да | Да | |
| Оперативный мониторинг состояния TLS-криптошлюза и оповещение | Да | Да, мониторинг в интерфейсе администратора и оповещение по электронной почте | Да, оповещение по электронной почте | Да, оповещение по электронной почте | |
| Статистика подключений | Да | Да | Да | Да | |
| Возможность экспорта журналов аудита во внешние системы, в том числе в SIEM | Да, через Syslog | Да, через Syslog | Да, через Syslog | Да, через Syslog | |
Общие сведения
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Компания-вендор | ООО «КРИПТО-ПРО» | ОАО «ИнфоТеКС» | ООО «Код Безопасности» | ООО «С-Терра СиЭсПи» | |
| Целевой сегмент | Крупный и средний бизнес, государственный сектор | Крупный и средний бизнес, государственный сектор | Крупный и средний бизнес, государственный сектор | Крупный и средний бизнес, государственный сектор | |
| Штаб-квартира | Россия (Москва) | Россия (Москва) | Россия (Москва) | Россия (Москва) | |
| Официальный сайт вендора | cryptopro.ru | infotecs.ru | securitycode.ru | s-terra.ru | |
| Наличие в реестре отечественного ПО | Да | Да | Да | Нет, планируется | |
| Сертификаты соответствия | Сертификаты ФСБ России №СФ/124-3631 до 01.01.2022, класс КС3; №СФ/124-3630 до 01.01.2022, класс КС2; №СФ/124-3630 до 01.01.2022, класс КС1. Сертифицированы как серверная, так и клиентская части (в т. ч. для iOS и Android) | Сертификаты ФСБ России №СФ/124-3676 до 12.04.2022, классы КС1 и КС3, для шлюза; №СФ/124-3411 до 20.06.2021, классы КС1, КС2, КС3, для ViPNet PKI Client (Windows); №СФ/124-3576 до 25.12.2021, класс КС3, для ViPNet PKI Client (Linux) | Сертификаты ФСБ России №СФ/124-3549 до 10.06.2020, классы КС1 и КС2, для «Континент TLS Клиент»; №СФ/124-3548 до 10.06.2020, класс КС2, для «Континент TLS Сервер»; сертификат ФСТЭК России №3286 по 4 уровню контроля НДВ для «Континент TLS Сервер» | Планируются сертификаты ФСБ России, классы КС1 и КС2, для шлюза и клиента (конец 2020 года) | |
| Модельный ряд | NGate ЦУС 100, NGate 300, NGate 600, NGate 1000, NGate 1500, NGate 2000, NGate 3000 | TLS VA, TLS 500, TLS 1000, TLS 5000 | IPC-50, IPC-500, IPC-1000, IPC-3000 | TLS-100, TLS-2000, TLS-3000, TLS-7000, TLS-V | |
| Сравниваемые версии | 1.0 | 1.5 | 2.1 | 4.3 | |
| Языки интерфейса | Русский и английский, возможно добавление любого языка | Русский | Русский | Русский | |
| Принцип лицензирования | ПАК или виртуальное исполнение. Лицензия на количество одновременных подключений. Лицензия на ЦУС | ПАК или виртуальное исполнение. Лицензия на количество одновременных подключений | ПАК. Лицензия на количество одновременных подключений | ПАК или виртуальное исполнение. Лицензия на количество одновременных подключений | |
| Техническая поддержка производителя | 5 видов технической поддержки (ПО — базовая, расширенная, круглосуточная; АО — базовое и расширенное обслуживание) | 5 видов технической поддержки | 4 вида технической поддержки | 2 вида технической поддержки (первый год стандартного уровня — бесплатно) | |
| Гарантия производителя | Техническая поддержка гарантирует замену оборудования в любой год эксплуатации вплоть до 5 лет | 1 год | 1 год, расширенная — 2 года и 7 дней | 3 года на аппаратную платформу | |
Отказоустойчивость и масштабирование
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Возможность «холодного» резервирования аппаратной платформы TLS-криптошлюза | Да | Да | Да | Да | |
| Возможность полноценной кластеризации в режиме Active-Active с синхронизацией сессий | Да | Нет, в разработке | Нет | Нет | |
| Возможность масштабирования TLS-криптошлюза посредством подключения в кластер новых нод шлюзов с синхронизацией сессий | Да, до 32 нод | Нет, в разработке | Да, неограниченное линейное масштабирование | Нет | |
| Возможность автоматического перераспределения нагрузки между элементами высокопроизводительного кластера TLS-криптошлюзов с использованием внешнего балансировщика трафика | Да | Да | Да | Да | |
| Возможность бесшовного переключения сессии пользователя без разрыва соединения в случае выхода из строя одного или нескольких узлов кластера | Да | Нет, в разработке | Нет | Нет | |
| Количество узлов в кластере (при использовании синхронизации сессий) | 32 | Нет, в разработке | Нет ограничений | Нет | |
| Резервное копирование и восстановление настроек | Да | Да | Да | Да | |
| Отсутствие ограничения на количество узлов в кластере (без синхронизации сессий) | Да | Да | Да | Да | |
| Поддержка LACP | Да | Да | Да | Да | |
| Наличие второго блока питания | Да (на старших моделях: NGate 1500, NGate 2000, NGate 3000) | Нет, в разработке | Да (на старших моделях: IPC-1000 и IPC-3000) | Да (на старших моделях) | |
Подключение пользователей к ресурсам фермы rds с помощью шлюза
Все настройки клиента относительно использования шлюза выполняются в окне Подключения к удалённому рабочему столу (mstsc.exe). Для того, чтобы задать клиенту параметры подключения к шлюзу, необходимо на вкладке Дополнительно в разделе Подключение из любого места нажать кнопку Параметры.

Окно параметров содержит в себе ровно те же настройки, что и окно свойств шлюза в настройках развёртывания RDS (рис.11). Здесь указываем полное доменное имя сервера шлюза, метод проверки подлинности, необходимость использования шлюза при подключении в локальной сети и необходимость использования учётных данных шлюза для удалённого компьютера.

На Windows RT и Windows 8/8.1 можно осуществлять подключение с помощью приложения Удалённый рабочий стол. Для того, чтобы указать сервер шлюза, через который будет установлено подключение, необходимо зайти в настройки приложения. Сделать это можно в окне приложения, нажав комбинацию клавиш Win I, или зайдя в пункт Параметры панели Charms.

В случае когда развернуты приложения RemoteApp и они подключены средствами Панели управления, приложений Удалённый рабочий стол или GPO, достаточно сперва выполнить обновление приложений (как описано в статье RDS на основе сеансов в Windows Server 2021 R2.
Предупреждение о самоподписанном сертификате rdp
По умолчанию в Windows для защиты RDP сессии генерируется самоподписанный
сертификат. В результате при первом подключении к RDP/RDS серверу через клиента mstsc.exe, у пользователя появляется предупреждение:
Не удалось проверить подлинность удаленного компьютер из-за проблем с сертификатом безопасности. Ошибка сертификата: сертификат выдан не имеющим доверия центром сертификации.
Чтобы продолжить установление RDP подключении пользователь должен нажать кнопку Да. Чтобы RDP предупреждение не появлялось каждый раз, можно включить опцию “Больше не выводить запрос о подключениях к этому компьютеру».
Работа с криптоключами
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Поддержка отечественных криптографических алгоритмов (ГОСТ) | ГОСТ Р 34.10-2001, ГОСТ Р 34.10-2021, ГОСТ 34.11-2021, ГОСТ 34.11-94, ГОСТ 28147-89, ГОСТ 34.12-2021 (ГОСТ Р 34.12-2021), ГОСТ 34.13-2021 (ГОСТ Р 34.13-2021); | ГОСТ Р 34.10-2001, ГОСТ Р 34.10-2021, ГОСТ 34.11-2021, ГОСТ 34.11-94, ГОСТ 28147-89, ГОСТ 34.12-2021 (ГОСТ Р 34.12-2021), ГОСТ 34.13-2021 (ГОСТ Р 34.13-2021) | ГОСТ 28147–89, ГОСТ 34.11–2021 (ГОСТ Р 34.11-94), ГОСТ Р 34.10–2021 (ГОСТ Р 34.10-2001) | ГОСТ Р 34.10-2021, ГОСТ 34.11-2021, ГОСТ Р 34.12-2021, ГОСТ Р 34.13-2021 | |
| Поддержка зарубежных криптографических алгоритмов | RSA, ECDSA, AES, AES-GCM | RSA, ECDSA, AES | Нет | RSA, AES, IDEA, Camellia, SEED | |
| Поддерживаемые версии TLS | 1.0, 1.1, 1.2 (согласно МР ТК-26), в разработке — 1.3 | 1.0, 1.1, 1.2 (согласно МР ТК-26), в разработке — 1.3 | 1.0, 1.2 (согласно МР ТК-26), в разработке — 1.3 | 1.2 (согласно МР ТК-26) | |
| Форматы поддерживаемых сертификатов и контейнеров | PEM, DER, PKCS7, PFX | PKCS7, PEM, DER, PFX | DER, PEM, PKCS7 | PEM, DER, PKCS7 | |
| Генерация на TLS-криптошлюзе закрытого ключа и формирование на его основе открытого ключа с созданием запроса на получение сертификата стороннего удостоверяющего центра (с использованием отечественных криптоалгоритмов) | Да | Да | Да | Да | |
| Генерация на TLS-криптошлюзе закрытого ключа и формирование на его основе открытого ключа с созданием запроса на получение сертификата стороннего удостоверяющего центра (с использованием зарубежных криптоалгоритмов) | Да | Да | Нет | Да | |
| Генерация закрытого ключа и формирование на его основе открытого ключа с созданием запроса на получение сертификата стороннего удостоверяющего центра на TLS-клиенте (с использованием отечественных криптоалгоритмов) | Да | Да | Да | Нет | |
| Генерация закрытого ключа и формирование на его основе открытого ключа с созданием запроса на получение сертификата стороннего удостоверяющего центра на TLS-клиенте (с использованием зарубежных криптоалгоритмов) | Да | Да | Нет | Нет | |
| Поддержка списка аккредитованных удостоверяющих центров (TSL) | Нет | Да | Да | Нет | |
Режимы работы
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Создание защищённого TLS-туннеля для приложений, использующих TCP/IP-протоколы (с использованием TLS-клиента) | Да | Да | Да | Да | |
| Режим прокси (TLS Offload) | Да | Да | Да | Нет | |
| Режим публикации приложения на портале | Да | Да | Да | Нет | |
| Количество самостоятельных порталов, которые можно создать на шлюзе | Без ограничений | 2 | 1 | Нет | |
| Возможность создания разных самостоятельных порталов на одном и том же порту | Да | Да | Нет | Нет | |
Создаем шаблон rdp сертификата в центре сертификации (ca)
Попробуем использовать для защиты RDP подключений доверенный SSL/TLS сертификат, выданный корпоративным центром сертификации. С помощью такого сертификата пользователь может выполнить проверку подлинности RDP сервера при подключении. Предположим, что у вас в домене уже развернут корпоративной центр сертификации (Microsoft Certificate Authority), в этом случае вы можете настроить автоматическую выдачу и подключение сертификатов всем компьютерам и серверам Windows в домене.
Н на вашем CA нужно создать новый тип шаблона сертификата для RDP/RDS серверов.
- Запустите консоль Certificate Authority и перейдите в секцию Certificate Templates;
- Сделайте копию шаблона сертификата Computer (Certificate Templates -> Manage -> Computer -> Duplicate);

- На вкладке General укажите имя нового шаблона сертификата – RDPTemplate. Убедитесь, что значение поля Template Name полностью совпадает с Template display name;

- На вкладке Compatibility укажите минимальную версию клиентов в вашем домене (например, Windows Server 2008 R2 для CA и Windows 7 для клиентов). Тем самым будут использоваться более стойкие алгоритмы шифрования;
- Теперь на вкладке Extensions в политике приложений (Application policy) нужно ограничить область использования такого сертификата только для Remote Desktop Authentication (укажите следующий object identifier — 1.3.6.1.4.1.311.54.1.2). Нажмите Add -> New, создайте новую политику и выберите ее;

- В настройках шаблона сертификата (Application Policies Extension) удалите все политики кроме Remote Desktop Authentication;

- Чтобы использовать данный шаблон RDP сертификатов на контролерах домена, откройте вкладку Security, добавьте группу Domain Controllers и включите для нее опцию Enroll и Autoenroll;

- Сохраните шаблон сертификата;
- Теперь в оснастке Certificate Authority, щёлкните по папке Certificate Templates, выберите New ->Certificate Template to Issue -> выберите созданный шаблон RDPTemplate.

Управление tls-криптошлюзом
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Возможность управления несколькими кластерами шлюзов безопасности из одной системы | Да | Нет, в разработке | Нет | Нет | |
| Поддержка удалённого и локального управления TLS- шлюзом | Да: в случае отдельной инсталляции — локально, в случае распределённой инсталляции — из центра управления сетью | Да | Да | Да | |
| Возможность удалённого управления TLS-криптошлюзом с использованием веб-интерфейса | Да | Да | Да | Да | |
| Возможность удалённого обновления программного обеспечения | Да | Да | Да | Да | |
Управление доступом удалённых пользователей
| Критерий сравнения | КриптоПро NGate | ViPNet TLS Gateway | Континент TLS | С-Терра TLS | |
| Управление доступом пользователей на основе даты и времени | Да | Нет, в разработке | Нет | Нет | |
| Управление доступом пользователей с двухфакторной аутентификацией через Radius | Да | Нет, в разработке | Нет | Нет | |
| Автоматическое разграничение доступа пользователей на основе используемых алгоритмов шифрования | Да | Да | Нет | Нет | |
| Разграничение доступа пользователей к защищаемым подсетям на основе членства в группах доменов | Да | Да | Да, в режиме портала приложений | Нет | |
| Контроль состояния установленных защищённых соединений с удалёнными пользователями с возможностью принудительного завершения сессии пользователя по команде администратора | Да | Да, без возможности принудительного завершения | Да, без возможности принудительного завершения | Нет | |
| Автоматический разрыв активной сессии пользователя по невалидному сертификату на основе полученного CRL | Да | Нет, в разработке | Да, в том числе при отзыве аккредитации издателя сертификата пользователя | Нет | |
Установка instantssl сертификата: citrix secure gateway
Вы можете установить сетификат на Secure Gateway server, используя команду ctxcertmgr.
Следует устанавлиавть сертификат через файл, который Вы получили от CA.
Серверные сертификаты устанавливаются в директории /var/CTXSssl/certs.
Способ установки сертификата зависит от того использовали ли Вы ctxcertreq во время генерации CSR или нет.
Если использовалась ctxcertreq:
Если Вы использовали ctxcertreq, то ctxcertreq генерирует приватный ключ и запрашивает пароль для защиты файла. Когда Вы получаете сертификат от CA, Вам нужно установить его на Secure Gateway server and соотенсти с приватным ключом и паролем.
Для того, чтобы это сделать, Вы используете ctxcertmgr для установки сертификата и включаете опцию -response.
Опция -response определяет, что сертификат соотносится с CSR, сгенерированным с использованием ctxcertreq.
Новый сертификат создан и находится на сервере Secure Gateway.
Для установки сертификата, который запрашиваля с помощью ctxcertreq
1. Зайдите в качестве root user на Secure Gateway server.
2. Наберите в командной строке:
ctxcertmgr -response filename [ -dbpassword db-password ] где filename определяет файл сертификата, выданный CA.
Далее описываются опции:
Пример. Устанавливая сертификат с использованием ctxcertreq, генерируется новый CSR c идентификатором citrix.
Также генерируется приватный ключ и пароль .secret. для защиты файла.
Новый сертификат, полученный от CA, сохраняется в директории /tmp/certs.
Для добавления сертификата на Secure Gateway и соотнесения с приватным ключом и паролем наберите:
ctxcertmgr -response /tmp/certs/cert.pem
Вам нужно ввести пароль .secret..
Если пароль верный, сертификат импортируется в хранилище и сохраняется как /var/CTXSssl/certs/citrix.pem.
Опция Usage
-response указывает, что сертификат соотносится с CSR
-dbpassword Указывает, что используется пароль для защиты сертификата.
Это база данных паролей, указанных Вами, когда Вы использовали ctxcertreq.
Если Вы включаете опцию -dbpassword, Вы должны использовать параметр db-password для определения нового пароля, который в длину составляет максимум 255 знаков.
Обратите внимание, что эта опция используется только если Вы включаете команды в shell script;
в другом случае Вам будет предложено ввести пароль.
Использование -dbpassword отображает пароль в терминале и выводит его в истории команд.
Если CSR генерировался без использования ctxcertreq
Если Вы генерировали CSR, не задействуя ctxcertreq, используйте ctxcertmgr с опцией -import для установки сертификата.
1. Войдите как root user на сервер Secure Gateway.
2. Наберите в командной строке:
ctxcertmgr -import identifier -filename filename [-format format ] [ -keyfilename key-filename ] [ -dbpassword db-password ]
[ -filepassword [ file-password ]
Установка ssl-сертификата
Для шлюза удаленного рабочего стола должен быть установлен SSL-сертификат. Чтобы установить SSL-сертификат, щелкните имя сервера удаленного рабочего стола в консоли управления удаленным рабочим столом и выберите View or modify certificate properties.
Возможно 3 способа импорта сертификатов:
- создание самоподписанного сертификата и его импорт;
- импорт ранее загруженного сертификата (самоподписанного или стороннего);
- загрузка стороннего сертификата (например, Comodo) и его импорт;
Выберите подходящий вам способ, в нашем примере мы рассмотрим первый случай с генерацией и импортом самоподписанного сертификата.
Введите имя сертификата и его расположение на сервере. Нажмите OK.
Сертификат будет сгенерирован.
В результате отобразится – кому, кем и до какого числа выдан ssl-сертификат. Нажмите Apply для сохранения изменений.
Теперь самоподписанный SSL-сертификат успешно установлен на TCP-порт 443 (порт SSL по умолчанию).
В целях безопасности рекомендуется изменить порт SSL для шлюза удаленных рабочих столов на другой номер. Обычно компании делают это, чтобы попытаться обмануть хакеров, которые могут ориентироваться на стандартный порт 443.
Чтобы изменить номер порта для шлюза RD, щелкните правой кнопкой мыши имя сервера и выберите свойства в консоли управления удаленным рабочим столом (Action →Properties).
Установка службы rd gateway
В рассматриваемом случае, роль службы шлюза удалённых рабочих столов будет устанавливаться на сервер ещё не участвовавший в развёртывании. Поэтому, сначала его необходимо добавить в Диспетчер серверов.

Запустить установку роли RD Gateway можно зайдя в Службы удалённых рабочих столов и там либо нажать на ссылку Шлюз удалённых рабочих столов в панели Обзор развёртывания либо в выпадающем меню Задачи на панели Серверы развёртывания выбрать пункт Добавить серверы шлюзов удалённых рабочих столов.

Любое из описанных выше действий приведёт к вызову мастера установки роли шлюза удалённых рабочих столов. В первом окне выбираем сервер или несколько серверов на которые будет установлена роль RD Gateway.

После выбора серверов, роли шлюза необходимо присвоить самозаверяющий SSL-сертификат. В поле для ввода указываем полное внешнее имя к которому будут подключаться клиенты. В данном случае рассмотрен наипростейший вариант, в котором организация имеет зарегистрированное доменное имя domain.ext и к серверу шлюза можно обратиться по имени rdgw.domain.ext.

В окне подтверждения выбора удостоверимся, что заданные настройки верны и если это так, необходимо нажать на кнопку Добавить.

После того, как сервер добавлен в развёртывание и на него установлены все необходимые службы, потребуется настроить сертификат подлинности. Сделать это можно прямо из окна развёртывания нажав на ссылку Настроить сертификат в уведомлении или позже зайдя в Свойства развёртывания (Диспетчер серверов > Службы удалённых рабочих столов > Общие сведения > Обзор развёртывания > Задачи).

В окне управления сертификатами, для роли шлюза удалённых рабочих столов, как и для прочих, можно задать уже существующий сертификат или создать новый. Так как в данном цикле статей не рассматриваются вопросы функционирования центров сертификации, то создадим новый самоподписанный сертификат. Для этого выбираем пункт Шлюз удалённых рабочих столов и затем Создать новый сертификат.

При создании нового сертификата указываем внешнее доменное имя, по которому будут подключаться пользователи, пароль и место хранения сертификата. Кроме всего этого, необходимо установить галочку Разрешить добавление сертификата в хранилище «Доверенные корневые центры сертификации» на конечных компьютерах. Это необходимо для того, чтобы на клиентских компьютерах сертификат можно было установить вручную.

После создания сертификата, необходимо применить его, нажав на соответствующую кнопку.

Когда сертификат успешно создан и применен, из окна Ход выполнения (рис.7) можно перейти к свойствам шлюза удалённых рабочих столов. К этим же свойствам можно получить доступ и через Свойства развёртывания.
Окно свойств шлюза RDS позволяет настроить самые основные параметры, а именно: выполнить ли конфигурацию RD Gateway в автоматическом режиме, задать настройки вручную либо вовсе не использовать службу шлюза удалённых рабочих столов. Если выбрана опция Использовать следующие параметры сервера шлюза удалённых рабочих столов, то нижеследующие параметры потребуется указать вручную:
- Имя сервера. Внешнее имя шлюза к которому обращаются пользователи.
- Метод входа. Доступны варианты для настройки проверки подлинности пользователя используя пароль или используя смарт-карту.
- Использовать ли учётные данные шлюза удалённых рабочих столов для удалённых компьютеров.
- Не использовать сервер шлюза удалённых рабочих столов для локальных подключений. Этот параметр позволяет снизить нагрузку на RD Gateway, т.к. для локальных клиентов соединение с фермой RDS устанавливается минуя шлюз.

После того, как служба шлюза удалённых рабочих столов была успешно установлена на выбранный сервер, во вкладке Общие сведения окна Службы удалённых рабочих столов в Диспетчере серверов можно увидеть, что иконка шлюза в обзоре развёртывания изменилась и приобрела вид туннеля, а на панели Серверы развёртывания добавился новый сервер.

Выводы
На данный момент применение TLS-шифрования является весьма перспективным направлением организации защищённых соединений с использованием отечественных криптоалгоритмов по упрощённой схеме, что, с одной стороны, позволит соблюсти требования российского законодательства в области информационной безопасности, а с другой стороны, поможет организовать удобный доступ пользователей к корпоративным ресурсам с различными схемами аутентификации и широкими возможностями разграничения доступа.
Также большим подспорьем для развития TLS-криптошлюзов станет наращивание защитной функциональности — например, добавление инструментов межсетевого экранирования, средств обнаружения вторжений, брандмауэров веб-приложений (Web Application Firewall) и других подобных модулей, — а также расширение возможностей интеграции с другими элементами системы информационной безопасности и IT-инфраструктуры.
Бушующая в настоящее время пандемия COVID-19 спровоцировала всплеск интереса компаний к различным механизмам, которые позволяли бы перевести сотрудников на удалённую работу, обеспечивая при этом непрерывность функционирования рабочих процессов и в то же время сохраняя требуемую степень безопасности информации.
