Angie на пониженном уровне целостности в Astra SE

Пакет установленный из репозитория запускается с уровнем целостности 63. Я пробовал добавить PDPLabel в юнит systemd, но в этом случае юнит не запускается, т.к. не может создать .pid файл в /run.

Может быть кто-то уже сталкивался с этой проблемой и может помочь.

Добрый день. Покажите, пожалуйста выводы следующих команд:

cat /etc/*release
cat /etc/astra_version
sudo cat /sys/module/parsec/parameters/max_ilev
sudo astra-mic-control status
sudo service angie status
sudo astra-digsig-control status
sudo gpg /etc/digsig/keys/angie-astra-public.gpg

cat /etc/*release

DISTRIB_ID=“AstraLinux”
DISTRIB_DESCRIPTION=“Astra Linux 1.7 x86-64”
DISTRIB_RELEASE=1.7_x86-64
DISTRIB_CODENAME=1.7_x86-64
PRETTY_NAME=“Astra Linux”
NAME=“Astra Linux”
ID=astra
ID_LIKE=debian
ANSI_COLOR=“1;31”
HOME_URL=“https://astralinux.ru
SUPPORT_URL=“Поддержка | Astra Linux
LOGO=astra
VERSION_ID=1.7_x86-64
VERSION_CODENAME=1.7_x86-64

#cat /etc/astra_version
1.7.5

#cat /sys/module/parsec/parameters/max_ilev
63

#astra-mic-control status
АКТИВНО

#service angie status
angie.service - Angie - high performance web server
Loaded: loaded (/lib/systemd/system/angie.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-11-21 08:04:56 MSK; 14h ago
Docs: About — Angie 1.4.0 documentation
Process: 803 ExecStart=/usr/sbin/angie -c /etc/angie/angie.conf (code=exited, status=0/SUCCESS)
Main PID: 886 (angie)
Tasks: 3 (limit: 2272)
Memory: 58.7M
CPU: 269ms
CGroup: /system.slice/angie.service
├─886 angie: master process v1.3.1 #1 [/usr/sbin/angie -c /etc/angie/angie.conf]
├─887 angie: worker process #1
└─888 angie: worker process #1

ноя 21 08:04:55 sr1-xxx systemd[1]: Starting Angie - high performance web server…
ноя 21 08:04:56 sr1-xxx systemd[1]: Started Angie - high performance web server.

#astra-digsig-control status
АКТИВНО

#gpg /etc/digsig/keys/angie-astra-public.gpg
gpg: создан каталог ‘/root/.gnupg’
gpg: создан щит с ключами ‘/root/.gnupg/pubring.kbx’
gpg: Внимание: команда не отдана. Пытаюсь угадать, что имелось в виду …
pub gP256 2023-02-07 [SC]
1BDFC80750582DE4DEB1445CA8F6AD47046D4718
uid ООО “Веб-Сервер” (key for signing) legal@wbsrv.ru

Работа ПО с поддержкой МРД и МКЦ на данный момент официально Angie не поддерживается и тестирование корректности функционирования ПО по этой причине не проводилось:
https://astralinux.ru/upload/parser_jira/certs/Prot_se17_rdy-15041.pdf

Однако, вы можете попробовать вручную выполнить следующие действия:

  1. Создайте директорию “/run/angie/”
sudo mkdir /run/angie
  1. Затем в файле кофигурации “/etc/angie/angie.conf” поменяйте путь к PID-файлу
pid /run/angie/angie.pid;
  1. Добавьте переменную ‘PIDFILE’ в файл “/etc/default/angie”
PIDFILE="/run/angie/angie.pid"
  1. Приведите юнит-файл “/lib/systemd/system/angie.service” к следующему виду (укажите желаемый PDPLabel, например, 32)
[Unit]
Description=Angie - high performance web server
Documentation=https://angie.software/en/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/run/angie/angie.pid
PDPLabel=:32
ExecStart=/usr/sbin/angie -c /etc/angie/angie.conf
ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /run/angie/angie.pid)"
ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /run/angie/angie.pid)"

[Install]
WantedBy=multi-user.target
  1. Перезагрузите systemd, чтобы прочесть новый юнит-файл
sudo systemctl daemon-reload
  1. Перезапустите angie
sudo service angie restart

Проверить, что angie работает на низком уровне целостности, можно так

sudo pdpl-ps `cat /run/angie/angie.pid`

Хочу отметить, что при upgrade пакета angie юнит-файл перепишется и, как следствие, не случится graceful upgrade на post фазе. Что, в свою очередь, повлечет необходимость правки юнит-файла заново и запуска angie вручную.
Также, при удалении пакета angie созданная вручную директория /run/angie не будет удалена автоматически.

Спасибо! Рецепт работает