LINUX.ORG.RU
ФорумAdmin

КриптоПро (cptools) не запускается у второго пользователя

 


1

1

Доброго времени суток.

На ПК установлена ОС AltLinux P9 с ISO alt-p9-cinnamon-20201212-x86_64.iso

На данный дистрибутив, по статье с wiki был установлен КриптоПро. Использован дистрибутив КриптоПро 5 (5.0.11455, последняя Сертифицированная версия КриптоПро CSP 5.0.11455 (Fury) от 8.05.2019) , полученный из личного кабинета КриптоПро. Была установлена ГУИ cptools (apt-get install cprocsp-cptools-gtk*).

На ПК сотрудники будут работать в несколько смен (не подразумевается одновременная работа, а поочередная работа пользователей, с авторизацией каждого пользователя под своей учетной записью).

После установки запускаем утилиту у пользователя «Пользователь1» через «Пуск» -> «Параметры» -> «Инструменты КриптоПро» - утилита cptools запускается, всё в порядке.
Заходим на данную машину под другим пользователем «Пользователь2», запускаем утилиту через «Пуск» -> «Параметры» -> «Инструменты КриптоПро» - утилита cptools НЕ запускается.
При попытке запуска у пользователя «Пользователь2» утилиты cptools через терминал видим вывод у терминале:

double free or corruption (top)
Аварийный останов

Запускаем у пользователя «Пользователь2» утилиту cptools воспользовавшись strace и видим, что cptools пытается обратиться к файлам в каталоге /var/opt/cprocsp/tmp/. Так как файлы уже созданы и владельцем созданных файлов является «Пользователь1», то у пользователя «Пользователь2» возникает ошибка «Операция не позволена (1)».

Если под пользователем «root» очистить каталог /var/opt/cprocsp/tmp/ от содержащихся файлов, то у пользователя «Пользователь2» утилита cptools успешно запустится, но при этом перестанет запускаться у пользователя «Пользователь1». Ну далее последовательность вы поняли.

Задал вопрос на форуме AltLinux - как бороться с данной проблемой, ответ пока не получил.
Задал вопрос на форуме КриптоПро - как бороться с данной проблемой, ответ так же пока не получил.

Кто-нибудь сталкивался с такой проблемой? Как можно вылечить данную ситуацию?

★★★★★

Последнее исправление: ivanlex (всего исправлений: 1)

https://wiki.astralinux.ru/pages/viewpage.action?pageId=67110662

В этой wiki правда astralinux указывается выставить права 1777 на директорию /var/opt/cprocsp/tmp/ почитай.

На самом деле, странное решение, что настройки относящиеся в пользователю хранятся в /var/opt/cprocsp/tmp/, а не в домашней директории пользователя.

Возможно, есть некоторые переменные окружения.

Читай документацию по крипто про, она доступна вместе с дистрибутивами в личном кабинете, самое оптимальное решение - перенастроить крипто про, чтобы tmp директория файлов крипто про для каждого пользователя была в его личной домашней директории.

anonymous
()
Ответ на: комментарий от anonymous

В документации пока не нашел как настроить КриптоПро, что бы /var/opt/cprocsp/tmp/ хранился у каждого пользователя в его профиле. Если кто знает на вскидку, заранее спасибо. А пока изучаю.

ivanlex ★★★★★
() автор топика

если одновременно не требуется работать юзерам, то почему не настроить свой DM, чтоб при входе юзера не очищались эти файлы?

anonymous
()
Ответ на: комментарий от ivanlex

Если кто знает на вскидку, заранее спасибо.

Симлинк, создаваемый при входе в профиль.

crutch_master ★★★★★
()
Ответ на: комментарий от anonymous

Потому что КриптоПро хранит настройки и кэш где угодно, но не в каталоге пользователя.

ТС, а в техподдержку пробовал обращаться? У тебя ж всё официально(тм).

PPP328 ★★★★★
()
Ответ на: комментарий от PPP328

Написал, и на форум, и в официальную техническую поддержку КриптоПро. Они просто молчат. Ответа нет никакого.

И да, если им нравится весь свой багаж хранить в /var/opt/cprocsp/tmp/ то пусть, но почему нельзя было сделать /var/opt/cprocsp/tmp/${HOME}/ ???

И до сих пор не нашел как в каких либо настройках изменить эти пути. В документации пусто, никаких упоминаний (или просто я не нашёл). В описании других дистриботивах тоже никаких упоминаний, как будто просто больше никто не сталкивался с подобной ошибкой. Инструкция от AstraLinux так же не помогла.

ivanlex ★★★★★
() автор топика
Ответ на: комментарий от ivanlex

Если кто знает на вскидку, заранее спасибо.

Только разве что шаманить через proot, методом подмены /var/opt/cprocsp/tmp на директорию пользователя(через proot -b).

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

Я думал, что есть решения через fusefs, которое умеет мапить каталоги по uid/username.

vel ★★★★★
()
Ответ на: комментарий от ivanlex

если контора брала дистр за деньги - по спросите собрать пакет в их саппорте, иначе спросите в багзилле или форуме собрать…

а вообще сборка в альте не сложнее чем в любом другом дистре…

но если делать все «правильно» и планируете сидеть на альте, то лучше освоить их инструменты

https://www.altlinux.org/Hasher/%D0%A0%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D1%82%D0%B2%D0%BE

anonymous
()
Ответ на: комментарий от PPP328

mount другого каталога на этот перед запуском

Из под юзера? sudo предлагаешь? а размонтировать как(а то после входа от другого пользователя там такой бутерброд будет из наслоений)?

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

sudo предлагаешь?

Depends what GUI you use:

Gnome: The script /etc/gdm/PostSession/Default is run by root whenever someone quits his X session.

Source: How can I make a script run automatically after gdm login and logout? | Ask Ubuntu

Unity (Ubuntu default): in /etc/lightdm/lightdm.conf. below a chapter of [SeatDefaults] a command session-cleanup-script=/path/to/your-script.sh will do the trick.

Source: How to run a script at logout | Ask Ubuntu

KDE will run /usr/shutdown script.

На стартап аналогично само из по рута запустит.

В итоге mount на логин, umount на logout.

PPP328 ★★★★★
()
Ответ на: комментарий от anonymous

выдерни шнур, выдави стекло

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.