КріптоПро на віртуальній машині. НВІС на віртуальній машині під управлінням hyper-v

КріптоПро на віртуальній машині. НВІС на віртуальній машині під управлінням hyper-v

Добрий день!. Останні два дні у мене була цікава задача з пошуку рішення на ось таку ситуацію, є фізичний або віртуальний сервер, на ньому встановлена \u200b\u200bнапевно багатьом відома КріптоПро. На сервер підключений , Який використовується для підпису документів для ВТБ24 ДБО. Локально на Windows 10 все працює, а ось на серверній платформі Windows Server 2016 і 2012 R2, КріптоПро не бачить ключ JaCarta. Давайте розбиратися в чому проблема і як її виправити.

опис оточення

Є віртуальна машина на Vmware ESXi 6.5, в якості операційної системи встановлена \u200b\u200bWindows Server 2012 R2. На сервері стоїть КріптоПро 4.0.9944, останньої версії на поточний момент. З мережевого USB хаба, за технологією USB over ip, підключений ключ JaCarta. Ключ в системі бачиться, А ось в КріптоПро немає.

Алгоритм розв'язання проблем з JaCarta

КріптоПро дуже часто викликає різні помилки в Windows, простий приклад (Windows installer service could not be accessed). Ось так от виглядає ситуація, коли утиліта КріптоПро не бачить сертифікат в контейнері.

Як видно в утиліті UTN Manager ключ підключений, він бачиться в системі в смарт картах у вигляді Microsoft Usbccid (WUDF) пристрої, але ось CryptoPRO, цей контейнер не визначає і у вас немає можливості встановити сертифікат. Локально токен підключали, все було те ж саме. Стали думати що зробити.

Можливі причини з визначенням контейнера

  1. По-перше, це проблема з драйверами, наприклад, в Windows Server 2012 R2, JaCarta в ідеалі повинна визначатися в списку смарт карт як JaCarta Usbccid Smartcard, а не Microsoft Usbccid (WUDF)
  2. По друге якщо пристрій бачиться як Microsoft Usbccid (WUDF), то версія драйверів може бути застарілою, і через що ваші утиліти будуть не визначати захищений USB носій.
  3. Застаріла версія CryptoPRO

Як вирішити проблему, що КріптоПро не бачить USB ключ?

Створили нову віртуальну машину і стали ставити софт все послідовно.

Перед установкою будь-якого програмного забезпечення працює з USB носіями на яких знаходяться сертифікати і закриті ключі. потрібно ОБОВ'ЯЗКОВО відключити токен, якщо застромлять локально, то відключаємо його, якщо по мережі, розриваємо сесію

  • Насамперед оновлюємо вашу операційну систему, всіма доступними оновленнями, так як Microsoft виправляє багато помилок і багів, в тому числі і драйверами.
  • Другим пунктом є, у випадку з фізичним сервером, встановити всі свіжі драйвера на материнську плату і все периферійне устаткування.
  • Далі встановлюєте Єдиний Клієнт JaCarta.
  • Встановлюєте свіжу версію КріптоПро

Установка єдиного клієнта JaCarta PKI

Єдиний Клієнт JaCarta - це спеціальна утиліта від компанії "Аладдін", для правильної роботи з токенами JaCarta. Завантажити останню версію, даного програмного продукту, ви можете з офіційного сайту, або у мене з хмари, якщо раптом, не вийти з сайту виробника.

Далі отриманий архів ви розпаковуєте і запускаєте інсталяційний файл, під свою архітектуру Windows, у мене це 64-х бітна. Приступаємо до установки Jacarta драйвера. Єдиний клієнт Jacarta, ставиться дуже просто (нагадує ваш токен в момент інсталяції, повинен бути відключений). На першому вікні майстра установки, просто натискаємо далі.

Приймаємо ліцензійну угоду і натискаємо "Далі"

Щоб драйвера токенов JaCarta у вас працювали коректно, досить виконати стандартну установку.

Якщо виберете "Вибіркову установку", то обов'язково встановіть галки:

  • драйвери JaCarta
  • модулі підтримки
  • Модуль підтримки для КріптоПро

Через пару секунд, Єдиний клієнт Jacarta, успішно встановлений.

Обов'язково зробіть перезавантаження сервера або комп'ютера, щоб система побачила свіжі драйвера.

Після установки JaCarta PKI, потрібно встановити КріптоПро, для цього заходите на офіційний сайт.

https://www.cryptopro.ru/downloads

На поточний момент остання версія КріптоПро CSP 4.0.9944. Запускаємо інсталятор, залишаємо галку "Встановити кореневі сертифікати" і натискаємо "Встановити (Рекомендується)"

Інсталяція КріптоПро буде виконана в фоновому режимі, після якої ви побачите пропозицію, про перезавантаження браузера, але я вам раджу повністю перезавантажитися.

Після перезавантаження підключайте ваш USB токен JaCarta. У мене підключення йде по мережі, з пристрою DIGI, через. В клієнті Anywhere View, мій USB носій Jacarta, успішно визначено, але як Microsoft Usbccid (WUDF), а в ідеалі повинен визначитися як JaCarta Usbccid Smartcard, але потрібно в будь-якому випадку перевірити, так як все може працювати і так.

Відкривши утиліту "Єдиний клієнт Jacarta PKI", підключеного токена виявлено не було, значить, щось з драйверами.

Microsoft Usbccid (WUDF) - це стандартний драйвер Microsoft, який за замовчуванням встановлюється на різні маркери, і буває, що все працює, але не завжди. Операційна система Windows за замовчуванням, ставить їх на увазі своєї архітектури і настройки, мені от особисто в даний момент таке не потрібно. Що робимо, нам потрібно видалити драйвера Microsoft Usbccid (WUDF) і встановити драйвера для носія Jacarta.

Відкрийте диспетчер пристроїв Windows, знайдіть пункт "Зчитувачі пристроїв смарт-карт (Smart card readers)" клацніть по Microsoft Usbccid (WUDF) і виберіть пункт "Властивості". Перейдіть на вкладку "Драйвера" і натисніть видалити (Uninstall)

Погодьтеся з видаленням драйвера Microsoft Usbccid (WUDF).

Вас повідомлять, що для вступу змін в силу, потрібно перезавантажити систему, обов'язково погоджуємося.

Після перезавантаження системи, ви можете побачити установку пристрою і драйверів ARDS Jacarta.

Відкрийте диспетчер пристроїв, ви повинні побачити, що тепер ваш пристрій визначено, як JaCarta Usbccid Smartcar і якщо зайти в його властивості, то ви побачите, що смарт карта jacarta, тепер використовує драйвер версії 6.1.7601 від ALADDIN RDZAO, так і повинно бути .

Якщо відкрити єдиний клієнт Jacarta, то ви побачите свій електронний підпис, це означає, що смарт карта нормально визначилася.

Відкриваємо CryptoPRO, і бачимо, що КріптоПро не бачить сертифікат в контейнері, хоча все драйвера визначилися як потрібно. Є ще одна фішка.

  1. У RDP сесії ви не побачите свій токен, тільки локально, вже така робота токена, або я не знайшов як це поправити. Ви можете спробувати виконати рекомендації щодо усунення помилки "Неможливо підключитися до служби управління смарт-картами".
  2. Потрібно зняти одну галку в CryptoPRO

ОБОВ'ЯЗКОВО зніміть галку "Чи не використовувати застарілі cipher suite-и" та перезавантажитеся.

Після цих маніпуляцій у мене КріптоПро побачив сертифікат і смарт карта jacarta стала робочою, можна підписувати документи.

Ще можете в пристроях і принтерах, побачити ваш пристрій JaCarta,

Якщо у вас як і у мене, токен jacarta встановлений у віртуальній машині, то вам доведеться встановлювати сертифікат, через console віртуальної машини, і так само дати на неї права відповідальному людині. Якщо це фізичний сервер, то там доведеться давати права на порт управління, в якому так само є віртуальна консоль.

Коли ви встановили всі драйвера для токенов Jacarta, ви можете побачити при підключенні по RDP і відкритті утиліти "Єдиний клієнт Jacarta PKI" ось таке повідомлення з помилкою:

  1. Чи не запущена служба смарт-карт на локальній машині. Архітектурою RDP-сесії, розробленої Microsoft, не передбачено використання ключових носіїв, підключених до віддаленого комп'ютера, тому в RDP-сесії віддалений комп'ютер використовує службу смарт-карт локального комп'ютера. З цього випливає що, запуску служби смарт-карт всередині RDP-сесії недостатньо для нормальної роботи.
  2. Служба управління смарт-картами на локальному комп'ютері запущена, але недоступна для програми всередині RDP-сесії через налаштувань Windows і / або RDP-клієнта. \\

Як виправити помилку "Неможливо підключитися до служби управління смарт-картами".

  • Запустіть службу смарт-карт на локальній машині, з якої ви ініціюєте сеанс віддаленого доступу. Налаштуйте її автоматичний запуск при старті комп'ютера.
  • Дозволяє програмі використовувати локальних пристроїв і ресурсів під час віддаленого сеансу (зокрема, смарт-карт). Для цього, в діалозі "Підключення до віддаленого робочого столу" в параметрах виберіть вкладку "Локальні ресурси", далі в групі "Локальні пристрої та ресурси" натисніть кнопку "Подробнее ...", а в діалозі виберіть пункт "Смарт-карти" і натисніть "ОК", потім "Підключити".

  • Переконайтеся в цілості налаштувань RDP-підключення. За умовчанням вони зберігаються в файлі Default.rdp в каталозі "Мої Документи" Простежте, щоб у даному файлі була присутня строчка "redirectsmartcards: i: 1".
  • Переконайтеся в тому, що на віддаленому комп'ютері, до якого ви здійснюєте RDP-підключення, не активована групова політика
    - [Конфігурація комп'ютера \\ адміністративні шаблони \\ компоненти windows \\ служби віддалених робочих столів \\ узел сеансів віддалених робочих столів \\ перенаправлення пристроїв і ресурсів \\ Не дозволяти перенаправлення пристрою читання смарт-карт]. Якщо вона включена (Enabled), то вимкніть її, і увійдіть або комп'ютер.
  • Якщо у вас встановлена \u200b\u200bWindows 7 SP1 або Windows 2008 R2 SP1 і ви використовуєте RDC 8.1 для з'єднання з комп'ютерами під управлінням Windows 8 і вище, то вам необхідно встановити оновлення для операційної системи https://support.microsoft.com/en-us/ kb / 2913751

Ось такий от був траблшутінг по налаштуванню токена Jacarta, КріптоПро на термінальному сервері, для підпису документів в ВТБ24 ДБО. Якщо є зауваження або поправки, то пишіть їх в коментарях.

День перший

На Windows 7 x64 були спільно встановлені Virtual Box (версії 4 і 5) з розширенням Extension Pack і CryptoPro CSP (КріптоПро CSP 3.6 R4 для Windows).

При запуску віртуальної машини через Virtual Box система падала в синій екран. Причина в неможливості спільної роботи КріптоПро CSP і Virtual Box.

Щоб не було синього екрану при запуску віртуальної машини VirtualBox видалив КріптоПро CSP і перезавантажив комп'ютер. Рішення тимчасове, не зміг розібратися як подружити два продукти, а VirtualBox був потрібніше, ніж КріптоПро.

Допомогло вийти на зв'язок VirtualBox + КріптоПро \u003d\u003d BSOD повідомлення на форумі:
На форумі Кріпто Про також є обговорення:
Звіти з програми blueScreenView:

Bug Check String SYSTEM_SERVICE_EXCEPTION
Bug Check Code 0x0000003b
Parameter 1 00000000`c0000005
Parameter 2 fffff800`032735af
Parameter 3 fffff880`0412eb90
Parameter 4 00000000`00000000
Caused By Driver ntoskrnl.exe
Caused By Address ntoskrnl.exe + 73c40
File Description NT Kernel & System
File Version
Major Version 15
Minor Version 7601
A problem has been detected and Windows has been shut down to prevent damage to your computer. The problem seems to be caused by the following file: ntoskrnl.exe SYSTEM_SERVICE_EXCEPTION Technical Information: *** STOP: 0x0000003b (0x00000000c0000005, 0xfffff800032735af, 0xfffff8800412eb90, 0x0000000000000000) *** ntoskrnl.exe - Address 0xfffff80003292c40 base at 0xfffff8000321f000 DateStamp 0x5625815c Висновок - Virtual Box (версії 4 і 5) і CryptoPro CSP (КріптоПро CSP 3.6 R4 для Windows) поки несумісні на Windows 7 x64 SP1.

================

День другий

Підключив до першого монітора другий монітор, використовуючи USB 3.0 VGA Adapter. Модель пристрою - Fresco Logic FL200 USB Display Adapter. Якщо підключити адаптер до включення віртуальної машини, то порядок. А якщо підключати адаптер під час роботи віртуальної машини Virtual Box, то буде знову синій екран.

Bug Check StringIRQL_NOT_LESS_OR_EQUAL
Bug Check Code0x0000000a
Parameter 100000000`00000088
Parameter 200000000`00000002
Parameter 300000000`00000001
Parameter 4fffff800`032579e6
Caused By Driverntoskrnl.exe
Caused By Addressntoskrnl.exe + 73c00
File DescriptionNT Kernel & System
File Version6.1.7601.19110 (win7sp1_gdr.151230-0600)
Major Version15
Minor Version7601

A problem has been detected and Windows has been shut down to prevent damage to your computer. The problem seems to be caused by the following file: ntoskrnl.exe IRQL_NOT_LESS_OR_EQUAL Technical Information: *** STOP: 0x0000000a (0x0000000000000088, 0x0000000000000002, 0x0000000000000001, 0xfffff800032579e6) *** ntoskrnl.exe - Address 0xfffff80003276c00 base at 0xfffff80003203000 DateStamp 0x5684191c
З того, що видно перед помилкою - диспетчер пристроїв (HAL) повідомляє, що підключено нове USB 2.0 пристрій, а потім система падає. Диспетчер пристроїв не правий, тому що підключається USB 3.0 пристрій в USB 3.0 порт.

Можливо, просто збіг, два BSOD-а поспіль. І причина BSOD в реалізації драйверів для Fresco Logic FL200 USB Display Adapter.

Але є припущення, що причина помилок в реалізації підтримки USB 2.0 / USB 3.0 в VirtualBox. А особливі можливості підтримки USB з'являються при установці Oracle VM VirtualBox Extension Pack.

Видалити VirtualBox не хотілося б, іноді буває потрібен. А видалити Extension Pack можу запросто. Сподіваюся, що після видалення VirtualBox Extension Pack синіх екранів більше не буде. І можна буде повторно встановити КріптоПро CSP 3.6 R4 для Windows і користуватися двома моніторами.

1 етап. Проходження тестування (взаємодія з тестовим контуром ГВС ГМП) # Адреса сервісу ГІС ГМП тестовий:
gisgmp.wsdlLocation \u003d http: //213.59.255.182: 7777 / gateway / services / SID0003663? wsdl
gisgmp.wsdlLocation.endPoint \u003d http: //213.59.255.182: 7777 / gateway / services / SID0003663
Ця електронна адреса прописується в настройках СП.Дополнітельно потрібно прописати в файлі налаштувань логгірованія, вказавши значення TRACE. Після внесення зазначених значень, потрібно запустити СП і клієнт АЦК (перезапустити, якщо вже був запущений) Далі, з ЗОР або Заявки БО / АУ на виплату коштів потрібно виконати дію "Створити Зведення про платіж", якщо будуть пройдені системні контролі - то створиться Зведення про платіж. Яке надалі потрібно буде вивантажити.
Після вивантаження потрібно перевірити статус дією "Запит статусу обробки". Після чого ЕД Зведення про платіж переходить на статус "Прийнято ГІС ГМП" - ...

дано: Таблиця MSG (повідомлення) з великою кількістю записів.
CREATETABLEmsg (idINTEGERNOTNULLPRIMARYKEY, descriptionCHAR (50) NOTNULL, date_createDATE);
завдання:
Необхідно очистити таблицю від даних /
Рішення: Для вирішення даного завдання є кілька способів. Нижче опис і приклад кожного з них.
Найпростіший спосіб ( перший варіант) - виконання оператора видалення запису. При його виконанні ви будете бачити результат (скільки записів видалено). Зручна штука коли необхідно точно знати і розуміти правильні дані видалені. АЛЕ має недоліки перед іншими варіантами вирішення поставленого завдання.

DELETE FROMmsg; - Видалить всі рядки в таблиці --Удаліт все рядки у яких дата створення "2019.02.01" DELETE FROMmsg WHEREdate_create \u003d "2019.02.01";

Другий варіант. Використання оператора

Днями перевів термінальний сервер (windows 2003 server x64 standard) на віртуальну машину. На терміналке бухгалтера працювали зі НВІС. Сертифікати для НВІС зберігаються на флешці, вона на виртуалку НЕ прокидати. Бухи нервують, треба щось робити:

  1. Спробував створити диск і скопіювати туди сертифікати, але crypto про не бачить локальних дисків. облом 1
  2. Переніс НВІС на віртуальну машину під windows server 2012R2, прокинув флешку (режим розширеного сеансу). Вона визначилася як локальний диск. облом 2

Тут я вирішив зателефонувати в техпідтримку НВІС (при слові віртуальна машина консультант впав з ступор і почав давати дивні поради ....). На третьому консультанта я отримав відповідь, що тільки через реєстр (що мені не хотілося робити). Ну да ладно, почав робити через реєстр ....

І тут мене осінило, є ж можливість підключати діскету.Евріка))))
Створив дискету через HYPER-V MANAGER скинув туди сертифікати. Відкрив crypro про і переконався, що сертифікати видно! Начебто на цьому мало закінчиться, але немає ...
При підписи або «відправці отриманні» отримуємо помилку не найден закритий ключ шифрування ... Для вирішення цієї проблеми Йдемо в ПАНЕЛЬ УПРАВЛІННЯКріптоПро CSPСЕРВІСВИДАЛИТИ після успішної реєстрації ПАРОЛІВИДАЛИТИ ІНФОРМАЦІЮ ПРО ВИКОРИСТАНИХ знімних НОСІЇВ(Ставимо галку). І настає щастя, але не у всіх ... Дану процедуру треба повторити під усіма користувачами, які користуються crypto pro (будь то сайти держ закупівель або НВІС ...).

P.S: варіант з реєстром цілком робочий, але не охота його було робити!

3 Comments

  1. тримаю на ESXi 5.5 Windows 2012 R2
    варто крипто про 3.9
    чому то після закриття НВІС іноді процес залишається висіти в пам'яті, не стикалися з такою проблемою?
    при цьому можна запустити ще раз НВІС і він відкриється нормально, ніякі файли не будуть заблоковані попередньою версією.
    не можу зрозуміти в чому справа, від'їдає пам'ять сильно якщо кілька копій залишаться запущені Весет ..

 

 

Це цікаво: