Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

3 Страницы123>
Опции
К последнему сообщению К первому непрочитанному
Offline dmitriyqwe  
#1 Оставлено : 15 декабря 2023 г. 16:54:03(UTC)
berdievda

Статус: Участник

Группы: Участники
Зарегистрирован: 15.12.2023(UTC)
Сообщений: 12
Российская Федерация
Откуда: Петрозаводск

Сказал(а) «Спасибо»: 6 раз
Здравствуйте, форумчане. Есть организация, необходимо развернуть рабочее пространство для клиентов на базе ОС Astra Linux.
Все компоненты для входа по ЭЦП на госуслуги установлены: (конкретно сам КриптоПРО последней версии, плагин Рутокен, драйвера к нему, IFCplagin, cades plugin, расширение для гос услуг, расширение самого криптопро), однако возникает следующая проблема - пока с переносного носителя сертификат не установлен в личное хранилище - браузер не видит ЭЦП. То есть, чтобы увидел, это нужно установить сертификат как "Личный" или по средству графической оболочки или через команду
Код:
/opt/cprocsp/bin/amd64/csptestf -absorb -certs -autoprov
. Нужно сделать так, чтобы браузер автоматически брал из переносного носителя сертификат, а не создавать ситуацию, при которой необходимо было бы его устанавливать в личное хранилище. Возможно ли это сделать, не прибегая к скриптам со считыванию смены носителей и установки в хранилище/удаление из него?

Отредактировано пользователем 28 декабря 2023 г. 10:02:24(UTC)  | Причина: Не указана

Offline nickm  
#2 Оставлено : 15 декабря 2023 г. 17:41:51(UTC)
nickm

Статус: Активный участник

Группы: Участники
Зарегистрирован: 31.05.2016(UTC)
Сообщений: 2,675

Сказал(а) «Спасибо»: 618 раз
Поблагодарили: 460 раз в 434 постах
Автор: dmitriyqwe Перейти к цитате
Нужно сделать так, чтобы браузер автоматически брал из переносного носителя сертификат, а не создавать ситуацию, при которой необходимо было бы его устанавливать в личное хранилище. Возможно ли это сделать, не прибегая к скриптам со считыванию смены носителей и установки в хранилище/удаление из него?

А, как Вы это Себе представляете, если каждая вторая ИС требует наличие сертификата в личном хранилище пользователя?

Та же страница тестирования плагина КриптоПро умеет перечислять сертификаты в контейнере и работать с ними.
Offline dmitriyqwe  
#3 Оставлено : 18 декабря 2023 г. 8:59:26(UTC)
berdievda

Статус: Участник

Группы: Участники
Зарегистрирован: 15.12.2023(UTC)
Сообщений: 12
Российская Федерация
Откуда: Петрозаводск

Сказал(а) «Спасибо»: 6 раз
Понял, то есть решить проблему можно только по средству скриптов. Спасибо.
Offline nickm  
#4 Оставлено : 18 декабря 2023 г. 9:24:51(UTC)
nickm

Статус: Активный участник

Группы: Участники
Зарегистрирован: 31.05.2016(UTC)
Сообщений: 2,675

Сказал(а) «Спасибо»: 618 раз
Поблагодарили: 460 раз в 434 постах
Автор: dmitriyqwe Перейти к цитате
Понял, то есть решить проблему можно только по средству скриптов.

Как можно попробовать понять из Вашего сообщения, то Вы реализовываете работу в режиме киоск? Когда пользователи пользуются системой в общедоступном месте?

Тогда да, попробовать использовать сценарии в нужном месте (например, создать правила udev и т.п.): устанавливать сертификаты при подключении носителя, и удалять их после отключения оного.

Очистить личное хранилище сертификатов можно одной командой, например:
Код:
$ /opt/cprocsp/bin/amd64/certmgr -delete -store uMy -all
thanks 1 пользователь поблагодарил nickm за этот пост.
berdievda оставлено 18.12.2023(UTC)
Offline dmitriyqwe  
#5 Оставлено : 18 декабря 2023 г. 11:46:51(UTC)
berdievda

Статус: Участник

Группы: Участники
Зарегистрирован: 15.12.2023(UTC)
Сообщений: 12
Российская Федерация
Откуда: Петрозаводск

Сказал(а) «Спасибо»: 6 раз
Это не совсем киоск в рамках понимания самой Астры. Это просто отдельная учётная запись клиента с ограниченными правами. У клиента есть доступ с информационным ресурсам (сайтам домена *.gov/сбербанк аст и пр), к либре офис, сканированию документов и пр. Подразумевается многопоточность клиентов, поэтому встал вопрос об автоматическом внесении сертификата с носителя в хранилище, чтобы хоть как-то автоматизировать процесс. Если базовых инструментов КриптоПРО для этого нет - приходится как раз через файл правил и баш скриптов что-то придумывать. Возник как раз вопрос - написал скрипт, что с lsusb берет айди вендора/продукта с грепом "Рутокен" и записывать в переменные окружения. Сработает ли это, если я в файле правил инициализирую эти переменные окружения? Будет ли он отрабатывать нормально?

Отредактировано пользователем 18 декабря 2023 г. 11:50:01(UTC)  | Причина: Не указана

Offline nickm  
#6 Оставлено : 18 декабря 2023 г. 12:25:34(UTC)
nickm

Статус: Активный участник

Группы: Участники
Зарегистрирован: 31.05.2016(UTC)
Сообщений: 2,675

Сказал(а) «Спасибо»: 618 раз
Поблагодарили: 460 раз в 434 постах
Автор: dmitriyqwe Перейти к цитате
Возник как раз вопрос - написал скрипт, что с lsusb берет айди вендора/продукта с грепом "Рутокен" и записывать в переменные окружения. Сработает ли это, если я в файле правил инициализирую эти переменные окружения? Будет ли он отрабатывать нормально?

Почитайте эту тему на форуме "Рутокен".

thanks 1 пользователь поблагодарил nickm за этот пост.
berdievda оставлено 18.12.2023(UTC)
Offline dmitriyqwe  
#7 Оставлено : 18 декабря 2023 г. 16:43:43(UTC)
berdievda

Статус: Участник

Группы: Участники
Зарегистрирован: 15.12.2023(UTC)
Сообщений: 12
Российская Федерация
Откуда: Петрозаводск

Сказал(а) «Спасибо»: 6 раз
Спасибо за статью! Обидно, что вроде файл *.rules прописан правильно, но он не отрабатывает вообще ничего :(
Offline nickm  
#8 Оставлено : 19 декабря 2023 г. 13:42:23(UTC)
nickm

Статус: Активный участник

Группы: Участники
Зарегистрирован: 31.05.2016(UTC)
Сообщений: 2,675

Сказал(а) «Спасибо»: 618 раз
Поблагодарили: 460 раз в 434 постах
Автор: dmitriyqwe Перейти к цитате
Обидно, что вроде файл *.rules прописан правильно, но он не отрабатывает вообще ничего :(

А, что Вы прописывали?

Быстро, на коленке, попробовал создать два systemd-юнита с запуском от имени единственного пользователя системы, и два правила для токена "Rutoken ECP" с запуском этих юнитов.

Для установки сертификата использовал certprop из состава дистрибутива СКЗИ v5.

Работает как часы:
  • подключил токен - сертификат установился;
  • отключил токен - личное хранилище зачистилось.

Отредактировано пользователем 19 декабря 2023 г. 13:43:08(UTC)  | Причина: Не указана

Offline berdievda  
#9 Оставлено : 25 декабря 2023 г. 9:27:04(UTC)
berdievda

Статус: Участник

Группы: Участники
Зарегистрирован: 15.12.2023(UTC)
Сообщений: 12
Российская Федерация
Откуда: Петрозаводск

Сказал(а) «Спасибо»: 6 раз
Автор: nickm Перейти к цитате

А, что Вы прописывали?

Здравствуйте, извините, отсутствовал какое-то время. Создал 3 скрипта:
  1. Первый скрипт - 90-rutoken.rules (содержимое файла ниже);
  2. Второй скрипт - rutoken-inserted.sh, хранит в себе
    Код:
    #!/bin/bash
    /opt/cprocsp/bin/amd64/csptestf -absorb -certs -autoprov
    

  3. Третий скрипт - rutoken-removed.sh, хранит в себе
    Код:
    #!/bin/bash
    /opt/cprocsp/bin/amd64/certmgr -del -all
    



Содержимое 90-rutoken.rules:
Код:
ACTION=="add", ATTRS{idVendor}=="0a89", ATTRS{idProduct}=="0025", RUN+="/usr/local/bin/rutoken-inserted.sh"
ACTION=="remove", ENV{ID_VENDOR_ID}=="0a89", ENV{ID_MODEL_ID}=="0025", RUN+="/usr/local/bin/rutoken-removed.sh"


Также прикрепляю вывод lsusb:
Код:
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 001 Device 004: ID 05e3:0610 Genesys Logic, Inc. 4-port hub
Bus 001 Device 003: ID 0d62:910e Darfon Electronics Corp. HP USB Business Slim Keyboard
Bus 001 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 001 Device 006: ID 0a89:0025 Aktiv Rutoken lite
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


Быть может я что-то не так делаю, но по итогу не работает. Пробовал заместо
Код:
RUN+="/usr/local/bin/rutoken-inserted.sh"
прописать
Код:
RUN+="/usr/bin/mkdir /etc/test.sh"
, а при отключении рутокена
Код:
RUN+="/usr/bin/rmdir /etc/test.sh"
файл создаёт, но не удаляет.
Offline nickm  
#10 Оставлено : 25 декабря 2023 г. 16:43:59(UTC)
nickm

Статус: Активный участник

Группы: Участники
Зарегистрирован: 31.05.2016(UTC)
Сообщений: 2,675

Сказал(а) «Спасибо»: 618 раз
Поблагодарили: 460 раз в 434 постах
Автор: dmitriyqwe Перейти к цитате
Быть может я что-то не так делаю, но по итогу не работает.

Используйте:
Код:
udevadm monitor --env

, что бы извлечь необходимые переменные из событий add/ remove при подключении/ извлечении токена соответственно, для написания правил udev.

И да, следует добавить, что простой запуск сценариев Вам может и не поможет, т.к. следует учитывать и понимать, от какого пользователя они будут выполняться.

Отредактировано пользователем 25 декабря 2023 г. 21:48:16(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
3 Страницы123>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.