Page tree
Skip to end of metadata
Go to start of metadata

Содержание



Описание: обеспечение доступа к смарт-картам через PC/SC (фоновая служба).

Назначение:  Служба PC/SC используется для динамического подключения/отключения драйверов считывателей смарт-карт «на лету» и управления соединениями со считывателями.

Глобальные настройки


Для обеспечения возможности работы службы pcscd с ненулевой меткой безопасности в конфигурационный файл /lib/systemd/system/pcscd.socket в секцию [socket] добавить параметр CapabilitiesParsec=PARSEC_CAP_PRIV_SOCK. Для этого выполнить команду:

sudo systemctl edit pcscd.socket --full
И добавить параметр:

[Socket]
...
CapabilitiesParsec=PARSEC_CAP_PRIV_SOCK

И перезапустить сокет:

sudo systemctl restart pcscd.socket
После запуска сокета pcscd.socket убедиться, что ему присвоен атрибут ehole. Для этого воспользуйтесь командой:
sudo pdp-ls -Ma /var/run/pcscd/pcscd.comm

1) Атрибуты файле pcscd.comm, должно быть таким:

srw-rw-rw-m-- 1 root root Уровень_0:Низкий:Нет:ehole /var/run/pcscd/pcscd.comm

2) В ином случае следует удалить pcscd.comm командой:

sudo rm -r /var/run/pcscd/pcscd.comm
и перезагрузить ПК.

Проверка


Для проверки, следует зайти под пользователем с ненулевой меткой безопасности и обратиться к токену, например, с командой:

opensc-explorer
В случае успеха, Opensc explorer сообщит, что обратился к слоту с токеном:

root@smolensk: # opensc-explorer 
OpenSC Explorer version 0.16.0
Using reader with a card: Aktiv Rutoken ECP 00 00
OpenSC [3F00]>

Запуск с определенным уровнем конфиденциальности 


Для запуска службы с определенной ненулевой классификационной меткой, в конфигурационный файл /lib/systemd/system/pcscd.service в секцию [Service] следует добавить параметр PDPLabel, значение которого будет определять  классификационную метку. Для этого использовать команду:

sudo systemctl edit pcscd.service --full
Пример задания значения параметра PDPLabel для работы с иерархическим уровнем конфиденциальности равным единице:

...
[Service]
...
PDPLabel=1:63:0
...

PDPLabel=<Уровень>:<Уровень целостности>:<Категории>
Формат метки PDPLabel аналогичен принятому в системе PARSEC за исключением поля типа - метки.

После внесения изменений перезапустить службу:

sudo systemctl restart pcscd.service