Содержание

Skip to end of metadata
Go to start of metadata


Введение


По умолчанию СКЗИ КритоПро в ОС AstraLinux Special Edition не настроено для работы под ненулевым уровнем МРД.

Работу с хранилищем сертификатов пользователя можно настроить в 2-ух режимах работы:

1) Хранилище сертификатов доступно пользователю под разными уровнями МРД;

2) Хранилище сертификатов пользователя создается на каждом уровне МРД отдельно и имеет свою классификационную метку.

Если сертификат с контейнером ключей находится в смарткарте (токене), предварительно следует настроить службу pcscd для работы ненулевыми уровнями МРД.

Инструкция: Запуск службы pcscd с ненулевыми мандатными атрибутами

Первый способ



Для того, чтобы сделать хранилище сертификатов MY, CA, ROOT доступным пользователю под различными уровнями МРД, следует в конфигурационный файл /etc/parsec/mlinks добавить следующие значения:

root ~# nano /etc/parsec/mlinks
/var/opt/cprocsp/tmp /var/private/tmp 1777

КриптоПро с 1-ым уровнем МРД

1) Данным методом сертификаты добавляются в хранилища только под нулевым уровнем МРД. 

2) Если попробовать установить сертификаты под ненулевыми уровнями, то СКЗИ КриптоПро выдаст ошибку:

"Error number 0x3 (3).
Системе не удается найти указанный путь.
"

Для корректной работы СКЗИ КриптоПро под ненулевым уровнем вся цепочка сертификатов (УЦ, сертификаты партнеров и тд) должна храниться локально в машине, в том числе и те, что указаны в личном сертификате в полях AIA и CDP.


Второй способ


Для того, чтобы сделать хранилище сертификатов MY, CA, ROOT уникальными под различными уровнями МРД, следует в конфигурационный файл /etc/parsec/mlinks добавить следующие значения:

root ~# nano /etc/parsec/mlinks

/var/opt/cprocsp/tmp /var/private/tmp 1777

/var/opt/cprocsp/users /var/private/cpro 1777


Данным методом сертификаты добавляются в хранилища под каждым уровнем отдельно. Т.е к примеру сертификаты добавленные пользователем 0-го уровня МРД, не будут доступны пользователю с ненулевым уровнем МРД и обратно.


Для корректной работы СКЗИ КриптоПро под ненулевым уровнем вся цепочка сертификатов (УЦ, сертификаты партнеров и тд) должна храниться локально в машине, в том числе и те, что указаны в личном сертификате в полях AIA и CDP.



Ограничение работы КриптоПро в определенных уровнях МРД



Для ограничения запуска работы СКЗИ КриптоПро под определенным уровнем МРД, в терминале FLY следует перейти в директорию /var/private/tmp и отобразить список директорий командой ls :

root ~# ls /var/private/tmp/

l0i0c0x0t0x0

l1i0c0x0t0x0

l2i0c0x0t0x0

l3i0c0x0t0x0


Для примера, ограничим использование СКЗИ КриптоПро под уровнем 2. Для этого перейдем в директорию l2i0c0x0t0x0 :

root ~# cd /var/private/tmp/l2i0c0x0t0x0#

далее отобразим содержимое директории командой ls -alh:

root ~# ls -alh
итого 8,0K 
drwxrwxrwt 2 root root 4,0K янв 23 12:30 .
drwxrwxrwt 4 root root 4,0K янв 23 12:30 ..
-rw-r--r-- 1 root root    0 янв 15 18:48 .registry_lock
после чего установим атрибут immutable(i) на файл .registry_lock командой chattr +i :
root ~# chattr +i .registry_lock

и убедимся, что атрибут immutable(i) был присвоен файлу .registry_lock командой lsattr:
root ~# lsattr .registry_lock  
----i---------e---- .registry_lock


Теперь, при запуске любой утилиты СКЗИ КриптоПро под 2-ым уровнем МРД система оповестит нас, что : Operation not permitted