Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением БЮЛЛЕТЕНЬ № 20220829SE16 (оперативное обновление 1.6.11)
Введение
В состав Astra Linux входит инструмент командной строки at, позволяющий выполнять команды в указанное время. Инструмент может быть установлен командой:
sudo apt install at
Описание работы с инструментом доступно в справочной системе man: man at
Инструмент at формирует задания для выполнения в указанное время. Контроль очереди заданий выполняется системной службой atd (устанавливается при установке инструмента at). При использовании Astra Linux Special Edition с включенным мандатным разграничением доступа (МРД, см. Метка безопасности: структура и состав) служба atd по умолчанию работает на высоком уровне целостности. В соответствии с правилами МРД субъекты с низким уровнем целостности не могут изменять объекты с высоким уровнем целостности. Из этого следует, что пользователи (субъекты), работающие в сессиях с низким уровнем целостности, не могу передавать задания службе atd (объекту), работающему на высоком уровне целостности. Таким образом, работа инструмента at в пользовательских сессиях с низким уровнем целостности по умолчанию заблокирована.В Astra Linux Special Edition 1.6 МРД включено всегда. В в Astra Linux Special Edition x.7 МРД может быть отключено и в таком случае настоящая статья не актуальна.
Настройка службы atd для работы с пользовательскими сессиями с низким уровнем целостности
Для того, чтобы службе atd было разрешено принимать задание из пользовательских сессий с низким уровнем целостности эта служба должна быть запущена на низком уровне целостности. Для этого:
Выполнить команду:
sudo systemctl edit atdВ открывшемся окне текстового редактора ввести следующие данные:
[Service] ExecStartPre=+/usr/sbin/pdpl-file :0 /var/run/atd PDPLabel=:0
Сохранить сделанные изменения и выйти из текстового редактора (при использовании редактора nano - Ctrl+O, Enter, Ctll+X);
Перезапустить службу atd:
sudo systemctl restart atdУбедиться, что служба atd работает на низком уровне целостности можно командой:
sudo pdpl-ps `cat /var/run/atd/atd.pid`