Как обращаться с результатами `systemd-analysis security`?

Я смущен этими результатами. Как мне исправить эти предупреждения? Это нормально для домашнего компьютера с Ubuntu? Благодаря.

me@ubuntu:~$ systemd-analyze security 
UNIT                                  EXPOSURE PREDICATE HAPPY
ModemManager.service                       5.6 MEDIUM             
2
задан 20 October 2019 в 22:07

1 ответ

systemd-analyze security взгляды на функции песочницы встроены в systemd. Это не проверяет сам сервис. Таким образом, безопасно проигнорировать их, но если Вы действительно хотите обратиться, они видят freedesktop systemd на как для опций песочницы:

Игра в песочнице

Следующие опции игры в песочнице являются эффективным способом ограничить воздействие системы к процессам единицы. Рекомендуется включить столько этих опций для каждой единицы, сколько возможно, негативно не влияя на способность процесса работать. Обратите внимание, что многие из этих функций игры в песочнице корректно выключены в системах, где механизм базового актива не доступен. Например, ProtectSystem= не имеет никакого эффекта, если ядро создается без пространства имен файловой системы или если менеджер по сервису работает в контейнерном менеджере, который делает пространство имен файловой системы недоступным к его полезной нагрузке. Подобный, RestrictRealtime= не имеет никакого эффекта на системы, которые испытывают недостаток в поддержке фильтрации системного вызова SECCOMP, или в контейнерах, где поддержка этого выключена.

Также обратите внимание, что некоторая функциональность игры в песочнице обычно не доступна в пользовательских сервисах (т.е. сервисах, выполненных менеджером по сервису в расчете на пользователя). А именно, различные настройки, требующие поддержки пространства имен файловой системы (такой как ProtectSystem=) не доступны, поскольку базовая функциональность ядра только доступна для привилегированных процессов.

Существует длинный список опций, которые можно установить для осуществления единицы для соблюдения более строгой политики каждого с долгим объяснением на том, что это делает.

Некоторые:

ProtectSystem =

Берет булев аргумент или специальные значения, "полные" или "строгие". Если это правда, монтирует/usr и каталоги начальной загрузки/, только для чтения для процессов, вызванных этой единицей. Если установлено на "полный", / и т.д. каталог смонтирован только для чтения, также. Если установлено на "строгий" иерархия целой файловой системы смонтирована только для чтения, за исключением поддеревьев файловой системы API/dev,/proc и/sys (защитите эти каталоги использование PrivateDevices =, ProtectKernelTunables =, ProtectControlGroups =). Эта установка гарантирует, что любая модификация предоставленной поставщиками операционной системы (и дополнительно ее конфигурация и локальное монтирование) запрещается для сервиса. Рекомендуется включить эту установку для всех продолжительных сервисов, если они не связаны с системными обновлениями или должны изменить операционную систему другими способами. Если эта опция используется, ReadWritePaths = может использоваться для исключения определенных каталогов из того, чтобы быть сделанным только для чтения. Эта установка подразумевается, если DynamicUser = установлен. Эта установка не может обеспечить защиту во всех случаях. В целом это имеет те же ограничения как ReadOnlyPaths =, посмотрите ниже. Значения по умолчанию к прочь.

ProtectHome =

Берет булев аргумент или специальные значения, "только для чтения" или "tmpfs". Если это правда, каталоги,/home, / корень и/run/user, сделаны недоступными и пустыми для процессов, вызванных этой единицей. Если установлено на "только для чтения", эти три каталога сделаны только для чтения вместо этого. Если установлено на "tmpfs", временные файловые системы смонтированы на этих трех каталогах в режиме только для чтения. Значение "tmpfs" полезно для сокрытия корневых каталогов, не относящихся к процессам, вызванным единицей, все еще позволяя необходимым каталогам быть сделанным видимым при списке в BindPaths = или BindReadOnlyPaths =.

Установка этого к "да" главным образом эквивалентна для установки этих трех каталогов в InaccessiblePaths =. Точно так же "только для чтения" главным образом эквивалентно ReadOnlyPaths =, и "tmpfs" главным образом эквивалентен TemporaryFileSystem = с ": ro".

Рекомендуется включить эту установку для всех продолжительных сервисов (в особенности стоящие с сетью), гарантировать, что они не могут получить доступ к данным частного пользователя, если сервисы на самом деле не требуют доступа к частным данным пользователя. Эта установка подразумевается, если DynamicUser = установлен. Эта установка не может обеспечить защиту во всех случаях. В целом это имеет те же ограничения как ReadOnlyPaths =, посмотрите ниже.

Эта опция только доступна для системных служб и не поддерживается для сервисов, работающих в экземплярах в расчете на пользователя менеджера по сервису.

RuntimeDirectory =, StateDirectory =, CacheDirectory =, LogsDirectory =, ConfigurationDirectory =

Эти опции берут разделенный от пробела список имен каталогов. Указанные имена каталогов должны быть относительными, и не могут включать ".. ". Если установлено, один или несколько каталогов указанными именами будут созданы (включая их родителей) ниже местоположений, определенных в следующей таблице, когда единица будет запущена. Кроме того, соответствующая переменная среды определяется с полным путем каталогов. Если несколько каталогов установлены, то в переменной среды пути связываются с двоеточием ("":).

1
ответ дан 2 December 2019 в 04:35

Другие вопросы по тегам:

Похожие вопросы: