Настройка двухфакторной аутентификации в VMware Horizon View 7 c использованием OTP и сервера JAS

В нашей прошлой статье мы рассказывали о настройке двухфакторной аутентификации в VMware Horizon View на основе PKI-инфраструктуры и x509-сертификатов. Сегодня рассмотрим другой вариант 2FA-аутентификации — одноразовые пароли (OTP). Использование PKI-технологии, возможно, более надежное, но в наш век всеобщей мобильности и тенденции BYOD, когда пользователям нужно получать доступ к информационным ресурсам с любых устройств, включая мобильные, использование технологии PKI не всегда удобно, а иногда совсем невозможно. Поэтому аутентификация по одноразовым паролям (OTP) набирает всё большую популярность.

Реализация OTP в нашем примере основана на продукте нашей компании. Это сервер аутентификации — JaCarta Authentication Server (JAS). В качестве аутентификатора (средства генерации OTP) могут выступать:

  • программный токен (google authenticator для смартфонов под управлением iOS, Android, Windows);
  • физический токен с USB-портом (JaCarta WebPass, Yubikey и другие);
  • физический токен без USB-порта (eToken Pass и другие).


Поддерживаются следующие алгоритмы генерации OTP:

  • RFC 4226 + HMAC-SHA-1 (6 символов);
  • RFC 4226 + HMAC-SHA-256 (6 символов);
  • RFC 4226 + HMAC-SHA-256 (7 символов);
  • RFC 4226 + HMAC-SHA-256 (8 символов).


Также существует возможность подключить СМС-шлюз и получать одноразовые пароли в виде СМС-сообщений.

Как и в прошлый раз предполагается, что VDI в рамках VMware Horizon View уже развернут и настроен на простую парольную аутентификацию. Также уже установлен и настроен сервер JAS и NTP-плагин для него. А для пользователей заведены программные или аппаратные токены. Об установке и настройке JAS у нас есть большой скучный документ, входящий в комплект поставки.

Далее мы покажем как легко и просто связать имеющийся сервер JAS с сервером VMware Horizon View и реализовать OTP-аутентификацию.

Ход настройки


На сервере, где установлен JAS и NPS-плагин, перейдите в оснастку Network Policy Server и добавьте новый RADIUS Client.

9ivj3kjslaunw_zklureevspgro.png


Задайте Friendly name, IP-адрес Horizon View Connection Server и общий Shared secret.

5yv-dxh64camlrokrxr3ouhzmoi.png


Перейдите на сервер VMware View, откройте консоль администрирования View Connection Server.

Перейдите в View Configuration → Servers →Connection Servers.

Выберите необходимый сервер аутентификации и нажмите кнопку Edit.

plrbtrmxycthtlvzpylqm5kcjsw.png


В открывшемся окне перейдите во вкладку Authentication. В разделе Advanced Authentication 2-factor authentication выберите из выпадающего меню RADIUS.

hjpg4gtpjfokixcmrkf3v54h4hy.png


Снимите чек-боксы со значений Enforce 2-factor and Windows user name matching и Use the same user name and password for RADIUS and Windows authentication.

cazekqza9b-kaorv5ezp41iid8q.png


Нажмите кнопку Manage Authenticators. В новом окне кликните по кнопке Add…

ssoaxa-fzb7osf8frmjekwtcte8.png


Заполните поля Label — Название сервера, отображаемое клиенту, Hostname/address — адрес NPS-сервера с OTP-плагином, Shared Secret. Authentication type — PAP.

tufwp-bppvysqv1idb_q2doqg0k.png


Теперь настройка окончена, необходимо выполнить проверку.

Проверка работоспособности с ноутбука


Запустите VmWare Horizon Client (это может быть на ОС Windows, Linux и MacOS) и подключитесь к серверу.

ylo3yofp7scelqnlmg7fqrkqwsc.png


После подключения к серверу будет отображено диалоговое окно входа с требованием ввода имени пользователя и OTP (поле Passcode).

ebyia22bmq-oe9ttr8owm8boi70.png


Откройте google authenticator для получения OTP-значения.

mt5fq2k8kgvbfqn9ifldvokczwg.png


После успешной аутентификации по OTP будет произведен запрос на вход по имени пользователя и паролю.

9yk7jis9pb3dv3nfvqpycensyak.png


Запрос OTP→Password происходит именно в такой последовательности, а не наоборот. Это сделано для защиты пароля от подбора.

Проверка работоспособности с мобильного устройства


С мобильного телефона все будет выглядеть похожим образом. Ниже пример на iOS (Android также поддерживается).

В начале запустите приложение Horizon и подключитесь к серверу.

lho49sq496aomjsqtzjzsnpagac.png

kizr2hkpg1wrfcyc-jadqyyese8.png


Сервер запросит OTP.

qh3l9mkq1d1h7gcbfvezfyyjrxq.png


Переключитесь на Google authenticator, запомните OTP-значение.

v5sytzpn4gswba_cld_p3_jksa4.png


Переключитесь на Horizon введите OTP.

_2q7sq1aqdxinuwoaf2uomh6nwe.png


Далее введите пароль.

ngwm_6afwbamvrq4qqna77xqufw.png


Выберете нужный десктоп или приложение.

kh7_r0s7roheb3jfz0961cjppoo.png

r2zrd03okbmebfncsemck9ve1ka.png


На этом всё.

© Habrahabr.ru