Дерево страниц

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 18 Следующий »

Содержание



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

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

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


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

[Socket]
...
CapabilitiesParsec=PARSEC_CAP_PRIV_SOCK

И перезапустить службу:

systemctl daemon-reload
systemctl stop pcscd.service
systemctl stop pcscd.socket
systemctl start pcscd.service
После запуска сервиса pcscd убедиться, что ей присвоен атрибут 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 следует привезти к виду:

[Unit]
Description=PC/SC Smart Card Daemon

[Service]
ExecStart=/usr/sbin/pcscd --foreground
ExecReload=/usr/sbin/pcscd --hotplug
PDPLabel=1:63:0

[Install]
WantedBy=multi-user.target

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


В блоке кода, указан пример с запуском службы pcscd с иерархическим уровнем конфиденциальности равным единице.

После чего перезапустить службу:

sudo systemctl daemon-reload
sudo systemctl restart pcscd.service 

  • Нет меток