Содержание
Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1
- Astra Linux Special Edition РУСБ.10015-16 исп. 2
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
Описание: обеспечение доступа к смарт-картам через службу PC/SC (фоновая служба).
Назначение: Служба PC/SC используется для динамического подключения/отключения драйверов считывателей смарт-карт «на лету» и управления соединениями со считывателями.
Глобальные настройки
Для обеспечения возможности работы службы pcscd с ненулевой меткой безопасности сокету pcscd.socket необходимо добавить привилегию PARSEC_CAP_PRIV_SOCK (см. Привилегии PARSEC). Для этого:
Выполнить команду:
sudo systemctl edit pcscd.socketВ открывшемся текстовом редакторе указать следующий текст:
[Socket] CapabilitiesParsec=PARSEC_CAP_PRIV_SOCK
- Сохранить изменения;
Перезапустить сокет:
sudo systemctl restart pcscd.socket
После перезапуска сокета pcscd.socket убедиться, что ему присвоен атрибут ehole. Для этого использовать команду:
sudo pdp-ls -Ma /var/run/pcscd/pcscd.comm
Атрибуты файла /var/run/pcscd/pcscd.comm должны быть такими:
srw-rw-rw-m-- 1 root root Уровень_0:Низкий:Нет:ehole /var/run/pcscd/pcscd.comm
В ином случае следует удалить pcscd.comm командой:
Проверка
Для проверки обратиться к токену из процесса с ненулевой классификационной меткой, например, с командой:
root@smolensk: # opensc-explorer OpenSC Explorer version 0.16.0 Using reader with a card: Aktiv Rutoken ECP 00 00 OpenSC [3F00]>
Запуск с определенным уровнем конфиденциальности
Для запуска службы pcscd с определенной ненулевой классификационной меткой следует назначить службе эту метку. Для этого:
Выполнить команду:
sudo systemctl edit pcscd.serviceВ открывшемся текстовом редакторе указать имя секции [Service] и нужную метку, например, для задания метки иерархическим уровнем конфиденциальности равным единице:
[Service] PDPLabel=1:63:0
Формат метки:
PDPLabel=<Уровень>:<Уровень целостности>:<Категории>
Формат метки PDPLabel аналогичен принятому в системе PARSEC за исключением поля типа - метки.
- Сохранить изменения;
Перезапустить службу:
sudo systemctl restart pcscd.service