ruToken+Horizon View 6.x+PCoIP

Уважаемые коллеги!
Как сделать так, чтобы это всё работало в связке. Т.е., чтобы на тонком клиенте (Linux+VMware Horizon View Client v3.2) пользователь указывал адрес Security (или Connection) Server'а, десктоп (пул), вводил пинкод (а лучше даже и без него) и попадал в свою VDI-машину?
Сделал (вроде бы!) всё по инструкции VMWare (http://guides.vmwdemo.com/g/vmware-hori … on-6/22631). Однако всё рвно требует логин/пароль.
Для справки:
Драйвер ruToken на гостевой (целевой) виртуальной машине установлен
USB-redirect включён
После логина токен в гостевой (целевой) виртуальной машине виден и сертификат читаемый
Что я делаю не так?

Re: ruToken+Horizon View 6.x+PCoIP

После логина токен в гостевой (целевой) виртуальной машине виден и сертификат читаемый

Значит компоненты рутокен настроены верно.

Что я делаю не так?

Могут быть тысячи причин.
Лучше обратиться в vmware и их спросить.

Re: ruToken+Horizon View 6.x+PCoIP

Кирилл Мещеряков пишет:

Могут быть тысячи причин.
Лучше обратиться в vmware и их спросить.

Ну, это, конечно, отличный способ уйти от ответа :)
И, да, я обратился, куда Вы указали. VMware в принципе ничего не имеет против рутокенов, но практического опыта с рутокенами не имеют, поскольку вендор не обращался за сертификацией на совместимость.
А ещё они посоветовали использовать eToken. Я попробовал, с виндовым клиентом сразу получилось.
Я бы забил, но заказчик традиционно использует именно рутокены.
Так что вопрос остаётся открытым.

Re: ruToken+Horizon View 6.x+PCoIP

Спасибо за ответ, Антон.

Вы выписываете сертификаты на рутокены и на eToken одинаковым образом?
Рутокен у вас какой модели?

Re: ruToken+Horizon View 6.x+PCoIP

Кирилл Мещеряков пишет:

Спасибо за ответ, Антон.

Вы выписываете сертификаты на рутокены и на eToken одинаковым образом?
Рутокен у вас какой модели?

Выписываю в каждом случае согласно документации
Рутокен - ЭЦП, етокен про джава 72к.
Я вообще склоняюсь к мысли, что принципиально не важен носитель сертификата...
Тут вопрос немного сложнее: какой минимальный набор пакетов нужно установить в Линукс, чтобы отработала так называемая presession authentification (как это называет teradici)

Re: ruToken+Horizon View 6.x+PCoIP

Если Рутокен - это Рутокен ЭЦП разницы между ним и eToken Java не должно быть никакой.
И тот и другой это стандартные смарт-карты в ccid-ридерах.
В linux для работы смарт-карточного уровня необходимо чтобы были установлены libpcsclite/pcscd/libccid.
Большая часть прикладного ПО после этого нормально работает.

Другой вопрос, что ПО vmware может особым образом обрабатывать токены/смарт-карты которые он "знает".

Re: ruToken+Horizon View 6.x+PCoIP

Кирилл Мещеряков пишет:

Если Рутокен - это Рутокен ЭЦП разницы между ним и eToken Java не должно быть никакой.
И тот и другой это стандартные смарт-карты в ccid-ридерах.
В linux для работы смарт-карточного уровня необходимо чтобы были установлены libpcsclite/pcscd/libccid.
Большая часть прикладного ПО после этого нормально работает.

Другой вопрос, что ПО vmware может особым образом обрабатывать токены/смарт-карты которые он "знает".

Понимаете, настройки их инфраструктуры для авторизации через смарткарту проста, как пружина от дивана. Все проблемы на стороне тонкого клиента, особенно, если это - линукс. В частности, сборка прошивки конструктором Thinstation.
Вот очень неплохо было бы, так сказать, объединить усилия в интеграции необходимых компонентов для рутокена в пресловутый Thinstation. Там есть некоторые нюансы, которыми я готов поделиться.

Re: ruToken+Horizon View 6.x+PCoIP

Если нюансы несекретные, то поделитесь конечно.

Re: ruToken+Horizon View 6.x+PCoIP

Кирилл Мещеряков пишет:

Если нюансы несекретные, то поделитесь конечно.

Ок, завтра всё подробно распишу.

Re: ruToken+Horizon View 6.x+PCoIP

В общем, с рутокеном всё оказалось плохо даже под Windows.
Итак, исходные условия:
Windows - AD+CA+OCSP
Client - Windows 8.1 x64, rutoken & etoken latest drivers installed, Horizon View Client 3.3 configured to use SmartCard over PCoIP
VMware - Horizon Connection Server v6, smartcard authentication configured and allowed
Сертификаты созданы из штатного шаблона Smart Card Logon.
Проверка:
Установлен eToken, при запуске Horizon Client предлагает ввести PIN-код от свистка и успешно логинит в виртуальный десктоп. В логе это выглядит так:

2015-05-20 16:25:17.556+03:00 INFO (1334) [libcdk] Alt name 1 matches hostname stand-vdi-con.maindomain.ivk.ru
2015-05-20 16:25:17.556+03:00 INFO (1334) [libcdk] Skipping non-useful EKU: TLS Web Client Authentication
2015-05-20 16:25:17.556+03:00 INFO (1334) [libcdk] Found a valid EKU: TLS Web Server Authentication
2015-05-20 16:25:17.556+03:00 INFO (1334) [WinCDK] Services::AuthInfoLoadCallback : X509_Certificate Callback: Entry.
2015-05-20 16:25:17.556+03:00 INFO (1334) [WinCDK] Services::AuthInfoLoadCallback : X509_Certificate Callback: Exit.
2015-05-20 16:25:17.556+03:00 INFO (1334) [WinCDK] Services::AuthInfoCallback : X509_Certificate Callback: Entry.
2015-05-20 16:25:17.556+03:00 INFO (1334) [WinCDK] Services::AuthInfoCallback : X509_Certificate Callback: Exit.
2015-05-20 16:25:17.556+03:00 INFO (1334) [libcdk] TaskCombiner: SetResult for CdkGetConfigurationTask(PEND).
2015-05-20 16:25:17.556+03:00 INFO (1334) [libcdk] TaskCombiner: CdkGetConfigurationTask(PEND) removed, group task num:0, total task num:3.
2015-05-20 16:25:17.825+03:00 INFO (1334) [WinCDK] AuthDlg::OnInitDialog : [User] Enter Init.
2015-05-20 16:25:17.828+03:00 INFO (1334) [WinCDK] AuthDlg::UpdateWindowState : Update auth dialog. The auth type is CDK_AUTH_INFO_TYPE_X509_CERTIFICATE.
2015-05-20 16:25:17.829+03:00 INFO (1334) [WinCDK] AuthDlg::OnInitDialog : [User] Exit  Init.
2015-05-20 16:25:25.840+03:00 INFO (1334) [WinCDK] AuthDlg::OnOk : [User] Enter X509_Certificate:Ok.
2015-05-20 16:25:25.890+03:00 INFO (1334) [WinCDK] AuthDlg::EndDialog : [User] Enter EndDialog(1).
2015-05-20 16:25:25.892+03:00 INFO (1334) [WinCDK] AuthDlg::EndDialog : [User] Exit  EndDialog(1).
2015-05-20 16:25:25.892+03:00 INFO (1334) [WinCDK] AuthDlg::OnOk : [User] Exit  X509_Certificate:Ok.
2015-05-20 16:25:25.894+03:00 INFO (1334) [WinCDK] AuthDlg::OnDestroy : [User] Enter Destroy.
2015-05-20 16:25:25.894+03:00 INFO (1334) [WinCDK] AuthDlg::OnDestroy : [User] Exit  Destroy.
2015-05-20 16:25:25.897+03:00 INFO (1334) [libcdk] Send request successful: 03564380
2015-05-20 16:25:25.941+03:00 INFO (1334) [libcdk] Verify server's certificate for Request 0359F700
2015-05-20 16:25:25.941+03:00 INFO (1334) [libcdk] Find rpc request 0359F700 from list
2015-05-20 16:25:25.941+03:00 INFO (1334) [libcdk] Alt name 1 matches hostname stand-vdi-con.maindomain.ivk.ru

Ок, заканчиваю сессию, вынимаю eToken. Теперь то же самое с рутокеном:
Во-первых, никакого запроса на ввод PIN-кода не было, а просто выдан был штатное окно ввода учётных данных логин/пароль/домен. Ну и в логе тоже ничего про чтение сертификата нет

2015-05-20 16:30:00.518+03:00 INFO (1CBC) [libcdk] Alt name 1 matches hostname stand-vdi-con.maindomain.ivk.ru
2015-05-20 16:30:00.518+03:00 INFO (1CBC) [libcdk] Skipping non-useful EKU: TLS Web Client Authentication
2015-05-20 16:30:00.518+03:00 INFO (1CBC) [libcdk] Found a valid EKU: TLS Web Server Authentication
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [WinCDK] Services::AuthInfoLoadCallback : X509_Certificate Callback: Entry.
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [WinCDK] Services::AuthInfoLoadCallback : X509_Certificate Callback: Exit.
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [WinCDK] Services::AuthInfoCallback : X509_Certificate Callback: Entry.
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [WinCDK] Services::AuthInfoCallback : X509_Certificate Callback: Exit.
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [libcdk] TaskCombiner: SetResult for CdkGetConfigurationTask(PEND).
2015-05-20 16:30:00.519+03:00 INFO (1CBC) [libcdk] TaskCombiner: CdkGetConfigurationTask(PEND) removed, group task num:0, total task num:3.
2015-05-20 16:30:00.710+03:00 INFO (1CBC) [libcdk] Send request successful: 02C00F38
2015-05-20 16:30:00.780+03:00 INFO (1CBC) [libcdk] Verify server's certificate for Request 02C0FDF0
2015-05-20 16:30:00.780+03:00 INFO (1CBC) [libcdk] Find rpc request 02C0FDF0 from list
2015-05-20 16:30:00.781+03:00 INFO (1CBC) [libcdk] Alt name 1 matches hostname stand-vdi-con.maindomain.ivk.ru

То есть возникает ощущение, что API, используемый Horizon View Client'ом, не совместим (или не совсем совместим) с API ruToken'а. Ну, то есть словно приложение вообще не видит этот ридер.
Ваши соображения?

Re: ruToken+Horizon View 6.x+PCoIP

Антон, а какой вы используете CSP для выписывания сертификата типа Smart Card Logon на Рутокен ЭЦП?

Re: ruToken+Horizon View 6.x+PCoIP

Vermin пишет:

Антон, а какой вы используете CSP для выписывания сертификата типа Smart Card Logon на Рутокен ЭЦП?

Как говорится, хороший вопрос! Я ждал его!
Использую что-то там Aktiv-бла-бла-бла... Кстати, для eToken использую Microsoft CSP.
Думаете, в этом всё дело?

Re: ruToken+Horizon View 6.x+PCoIP

Антон Бородин пишет:

Кстати, для eToken использую Microsoft CSP.

Microsoft Base Smart Card CSP?
А вы не могли бы попробовать очистить eToken и выписать на него сертификат, используя eToken CSP ?

Re: ruToken+Horizon View 6.x+PCoIP

Vermin пишет:
Антон Бородин пишет:

Кстати, для eToken использую Microsoft CSP.

Microsoft Base Smart Card CSP?
А вы не могли бы попробовать очистить eToken и выписать на него сертификат, используя eToken CSP ?

Нет, что-то типа Microsoft Base Crypto Provider.
И, мог бы, но не буду и объясню почему. Когда я генерю сертификат для етокена, то он как-то сам пишется на носитель (в смысле, при выборе CSP "по умолчанию"), а вот для рутокена (чтобы оснастка certmgr.msc автоматически начала писать сертификат на токен) вынужден использовать CSP Aktiv.
Уважительная причина?

Re: ruToken+Horizon View 6.x+PCoIP

Это очень сомнительно, поскольку со смарт-картами и токенами работают смарт-карточные CSP, в обычных такая функциональность отсутствует.

Вы можете упростить выписывание сертификатов на наши токены - создайте дубликат шаблона Smart Card Logon, назовите его Rutoken Logon (или как пожелаете) и укажите в нем использование CSP компании Актив.

Я предложил вам выписать сертификат на eToken с помощью eToken CSP с целью нахождения источника проблемы работы токенов Рутокен.
В зависимости от того, будут ли работать токены eToken на их родном CSP будет понятно, в каком направлении искать решение.