Пусть нам нужно захарденить какую-то нетривиальную систему (1 компьютер), против ненадёжного пользователя, имеющего аккаунт, т.е. который может как угодно ковырять систему. Используя более-менее дефолтные встроенные инструменты (SELinux получается в сторону).
Если есть структурированный мануал с тематическими главами и разделами (как например для octave, ngspice), мы быстро узнаём, что для решения есть вот это, это, и только это (ничего больше). Мы быстро приобретаем уверенность что не пропустили никакой настройки важной для решения задачи.
Для systemd нет никакого цельного мануала со списком тематических глав и разделов. Чтобы быть уверенным что мы ничего не пропустили, надо читать всё, целиком. Потому что как ты узнаешь, что тебе остальное не нужно, вдруг там есть что-то нужное?
Вспоминается OpenBSD. Там нет никаких удобств и фич, они могут легко бросить что-то пользовательское. Зато там мало кода => мало манов => у нас появляется уверенность что мы всё сконфигурили правильно.
Чтение системд манов это боль. Димез и ликсис целиком не читали. Спрашивать ии, ясно не вариант – нам нужна уверенность.
В интернете много тьюториалов как харденить. Но это всё «в первом приближении»: они показывают общие секьюрные фичи. А я про разнообразные «невинные» настройки, самых разных подсистем, особенности в которых злоумышленник может как-то скомбинировать. По дефолту там может быть много чего открыто, что можно было бы закрыть – на всякий случай.
В связи с этим вопрос. Как секьюрятся systemd-системы?










