|
|||||||
Проблема запуска скрипта на сервере ALD домена при логине пользователя с нулевой мандатной меткой
Время создания: 23.12.2021 12:35
Автор: xintrea
Текстовые метки: Astra Linux, домен, ALD, вход пользователя, скрипт, запуск
Раздел: Компьютер - Linux - Дистрибутив Astra Linux
Запись: xintrea/mytetra_syncro/master/base/16402521367f19s9a2lm/text.html на raw.github.com
|
|||||||
|
|||||||
Здесь описана попытка решения проблемы запуска скрипта на сервере ALD домена при логине пользователя с нулевой мандатной меткой. Проблема описана здесь: https://forum.astralinux.ru/threads/3430/ На сервере домена ALD имеются директории: /etc/ald/ald.mac.session.d /etc/ald/session.d Судя по файлу README, который в них лежит, в эти директории можно помещать скрипты, которые будут выполняться при логине пользователя в домен: # Scripts in this directory are executed as root when a user log in # The username of the user logging out is provided in the $USER environment # variable. То есть, скрипты будут выполняться от пользователя ROOT, но в переменной $USER будет находиться имя входящего в домен пользователя. Однако, если в этих директориях ALD-сервера разместить скрипт loginHandler.sh (задав права 755) с содержимым: #!/bin/bash echo "$USER is login" >> /tmp/loginlog.txt ... и попытаться войти в домен каким-либо пользователем, то ничего не происходит, файл /tmp/loginlog.txt не создается, в нем ничего нет. Логин происходит доменным пользователем с нулевой мандатной меткой. Вопрос: что где еще надо докручивать, чтобы выполнялись скрипты при логине пользователя в домен? Ответа на официальном форуме нет. Ответа в Телеграм-канале пользователей Astra Linux (https://t.me/astralinux_chat) тоже нет. Техподдержка в качестве решения рекомендует обновления, которые в данном случае нельзя накатывать из-за уже прошедшей сертификации. Возможные зацепки Упоминание файлов /etc/ald/ald.reset и /etc/ald/ald.session встречаются в следующих библитотеках: /lib/x86_64-linux-gnu/security pam_ald_mac.so pam_ald.so Рядом с этими строками видны строки: EnsureU 0000DDD0 73 65 72 00 │ 50 61 6D 53 │ 65 73 73 69 │ 6F 6E 4F 70 │ 65 6E 69 6E │ 67 00 2F 00 ser.PamSessionOpening./. 0000DDE8 50 61 6D 4F │ 70 65 6E 53 │ 65 73 73 69 │ 6F 6E 00 2F │ 65 74 63 2F │ 61 6C 64 2F PamOpenSession./etc/ald/ 0000DE00 61 6C 64 2E │ 73 65 73 73 │ 69 6F 6E 00 │ 43 4C 49 45 │ 4E 54 5F 4D │ 4F 55 4E 54 ald.session PAM_PARSEC_NOZEROBIND.n 000039A8 6F 6E 65 00 │ 41 4C 44 5F │ 70 61 6D 5F │ 6D 61 63 5F │ 6D 6F 64 75 │ 6C 65 5F 64 one.ALD_pam_mac_module_d 000039C0 61 74 61 00 │ 2F 6D 61 63 │ 00 2F 65 74 │ 63 2F 61 6C │ 64 2F 61 6C │ 64 2E 73 65 ata./mac./etc/ald/ald.se 000039D8 73 73 69 6F │ 6E 00 55 53 │ 45 52 00 77 │ 00 4D 6F 75 │ 6E 74 20 7A │ 65 72 6F 20 ssion.USER.w.Mount zero 000039F0 68 6F 6D 65 │ 20 2E 2E 2E │ 00 45 72 72 │ 6F 72 20 75 │ 6E 6D 6F 75 │ 6E 74 69 6E home Строка "PamOpenSession" найдена в: /usr/lib/x86_64-linux-gnu/ald/config-modules/ libald-cfg-parsec-macc.so Использование строки "PamSessionOpening" найти не получилось. Настройки PAM Библиотеки pam_ald_mac.so и pam_ald.so (в которых есть упоминание /etc/ald/ald.session) прописаны в нескольких конфигах PAM-подсистемы, расположенных в каталоге /etc/pam.d . Пока что неясно, что и куда надо прописать, чтобы произошел вызов скрипта /etc/ald/ald.session при открытии доменной сессии пользователя. В данный момент неясно, правильно ли написаны библиотеки pam_ald_mac.so и pam_ald.so и вызывают ли они необходимые процедуры при возникновении события создания сессии пользователя. UPD: модули PAM работают. Однако настройки модулей не соответствуют документации. Решать проблему через техподдержку, расчитывать на переписку в пару месяцев. Альтернативное решение через распространение документа Если попытаться решить проблему с помощью механизма распространения конфигурационных файлов в домене ALD (пункт 7.2.4.4 документации РУСБ.10015-01 95 01-1), то будет происходить следующее. Будет успешно производиться добавление файлов в список распространения командами ald-admin doc-add ... Файлы будут успешно распространятся по доменным компьютерам. Проблема будет в том, что конфигурирующие файлы в Linux зачастую являются скриптами, которые, естественно, должны исполняться. Например, файл /etc/x11/fly-dm/Xstartup - это конфигурационный файл сервера X11, который подходит для того, чтобы в него поместить вызов нужного скрипта при логине пользователя. Однако при распространении этого файла на компьютеры домена через механизм рапространения документа, этот файл будет распространен, но у него будут сброшены права доступа. И данный файл перестанет быть исполняемым. А в механизме распространения нет команд, которые бы выставляли нужные права доступа распространяемым файлам, и позволяли бы их делать исполняемыми. Поэтому альтернативное решение через механизм распространения документа в домене ALD не работает. Ответ техподдержки Astra Linux: Изменение прав на распространяемый файл командой ald-admin doc-add не представляется возможным. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|