Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением безопасности 6 и выше (частично, см. комментарии в тексте)
- Astra Linux Common Edition 2.12.29 и выше (частично, кроме инструментов для работы с мандатным контролем доступа, а также см. комментарии в тексте)
Общие параметры вызова переключателей
Команды-переключатели (за исключением команд astra-modeswitch и astra-strictmode-control), входящие в состав пакета astra-safepolicy, поддерживают стандартный набор опций вызова:
- enable - включить/разрешить управляемое инструментом действие.
В некоторых командах для включения требуется дополнительный параметр (например, уровень для astra-mic-control enable или имя пользователя для astra-autologin-control); - disable - выключить/запретить управляемое инструментом действие (в инструменте astra-strictmode-control опция disable не поддерживается);
- status - показать, если возможно, фактическое состояние управляемого действия (например, переключатель включен, но для изменения состояния требуется перезагрузка).
В сценариях можно использовать код завершения команды (0 - активно, 1 - неактивно); - is-enabled показать положение переключателя (включен/выключен).
В сценариях можно использовать код завершения команды (0 - включён, 1 - выключен);
В случаях, когда команда поддерживает ещё какие-либо опции, кроме указанного выше минимального набора, параметры дополнительных опций приводятся в описании команды (см. ниже).
Запуск команд-переключателей без параметров используется при необходимости повторно привести настройки системы в соответствие с состоянием переключателя (применяется только внутри unit-файлов, создаваемых при включении некоторых переключателей)".
Команды-переключатели
astra-autologin-control
Управление автоматическим входом в графическую среду.
Дополнительный параметр
astra-bash-lock
Управление блокировкой интерпретатора команд bash. Аналогична блокировке других интерпретаторов команд, но вынесена в отдельную блокировку, т.к. доставляет больше неудобств, в том числе для служб, работающих в фоновом режиме.
В частности, после блокировки интерпретатора bash становится невозможным вход непривилегированных пользователь, использующих bash в качестве командной оболочки, в консольную сессию.
Не распространяет своё действие на пользователей из группы astra-admin.
Изменение режима блокировки вступает в действие немедленно.
astra-commands-lock
Управление блокировкой запуска пользователями следующих программ:
- df;
- chattr;
- arp;
- ip.
Программы блокируются для пользователей с помощью выставления на них прав доступа 750 (rwx r-x - - -). Эти программы необходимо блокировать при обработке в одной системе информации разных уровней конфиденциальности, т.к. с их помощью можно организовать скрытый канал передачи информации между уровнями.
Изменение режима блокировки вступает в действие немедленно.
astra-console-lock
Управление блокировкой доступа к консоли и терминалам для пользователей, не входящих в группу astra-console. При необходимости группа astra-console автоматически создается и при этом в неё включаются пользователи, состоящие в группе astra-admins на момент включения этой функции.
Изменение режима блокировки вступает в действие немедленно.
astra-digsig-control
Позволяет из командной строки включать и выключать режим замкнутой программной среды (ЗПС) в исполняемых файлах. Команда astra-digsig-control enable включает режим ЗПС (параметр DIGSIG_ELF_MODE=1 в файле /etc/digsig/digsig_initramfs.conf), команда astra-digsig-control disable выключает режим ЗПС (параметр DIGSIG_ELF_MODE=0 в файле /etc/digsig/digsig_initramfs.conf).
Изменения будут применены после перезагрузки.
astra-docker-isolation
Переводит сервис docker с высокого уровня целостности на уровень целостности 2. Для этого в каталоге /etc/systemd размещаeтся override-файл. Изменения вступают в силу после перезапуска сервиса docker. Если служба docker не установлена, включение или отключение изоляции docker недоступно.
astra-format-lock
Включает или отключает запрос пароля администратора при форматировании съемных носителей. По умолчанию включено (пароль запрашивается).
astra-hardened-control
Включает/отключает в загрузчике grub2 загрузку ядра hardened по умолчанию, если такое ядро присутствует в системе.
astra-ilev1-control
Применимо к:
По умолчанию сетевые службы в Astra Linux работают с полным набором неиерархических категорий целостности (имеют "высокий уровень целостности"). Команда
переводит сетевые службы на работу c неиерархической категорией целостности 1 (зарезервированная категория целостности "Сетевые сервисы"). Для перевода в каталоге /etc/systemd размещаются override-файлы для этих служб. Изменения касаются следующих служб:
- apache2;
- dovecot;
- exim4.
Если указанные службы не были установлены в момент включения функции, то функция будет автоматически применена и к вновь установленным службам. Для изменения уровня целостности работающей службы требуется её перезапуск. Выполнить перезапуск указанных служб можно или перезагрузкой системы, или командой:
astra-interpreters-lock
См. также astra-bash-lock.
Блокирует запуск пользователями командных интерпретаторов, таким образом блокируя исполнение произвольных пользовательских сценариев. Блокируются интерпретаторы:
- perl;
- python;
- irb;
- dash;
- ksh;
- zsh;
- csh;
- tcl;
- tk;
- expect;
- lua;
- ptksh (начиная с обновления БЮЛЛЕТЕНЬ № 2024-0212SE17MD (срочное оперативное обновление 1.7.5.UU.1));
- qemu-user-static (начиная с обновления БЮЛЛЕТЕНЬ № 2024-0212SE17MD (срочное оперативное обновление 1.7.5.UU.1));
- В Astra Linux Special Edition (очередное обновление 1.8) также блокируются программы, содержащие встроенные интерпретаторы:
- vim.gtk3;
- blenderplayer;
- cpan.
Блокировка astra-interpreters-lock:
- НЕ БЛОКИРУЕТ интерпретатор bash, так как это может отключить функционал, использующий bash, что приведёт к нарушению нормальной работы ОС. Для блокировки интерпретатора bash используйте переключатель astra-bash-lock.
- Не распространяется на пользователей из группы astra-admin.
Запуск сценариев, имеющих установленный бит разрешения исполнения, остаётся возможен. Блокировка запуска командных интерпретаторов должна использоваться совместно с astra-nochmodx-lock, т.к. в противном случае пользователь может сам создать сценарий, назначить ему бит исполнения и запустить, обойдя таким образом эту блокировку. Поэтому при активации astra-interpreters-lock автоматически активируется блокировка astra-nochmodx-lock.
Изменение режима блокировки вступает в действие немедленно.
astra-lkrg-control
Если установлен пакет lkrg (lkrg-5.10.0-1045-generic, lkrg-5.4.0-81-generic, lkrg-5.10-generic, lkrg-5.4.0-54-generic, lkrg-5.4-generic и пр.) и используется ядро generic, настраивает автозагрузку модуля ядра lkrg при загрузке системы (на этапе загрузки initrd) и загружает модуль lkrg сразу после включения функции astra-lkrg-control. При отключении функции astra-lkrg-control модуль lkrg удаляется из автозагрузки и выгружается из ядра. lkrg - это экспериментальный модуль, обеспечивающий обнаружение некоторых уязвимостей и защиту пространства памяти ядра от модификации. Может конфликтовать с драйверами виртуализации, например, virtualbox.
astra-macros-lock
Блокирует исполнение макросов в документах libreoffice. Для этого из меню программ libreoffice удаляются соответствующие пункты, а файлы, отвечающие за работу макросов, перемещаются или делаются недоступными пользователю. Блокировка макросов решает две задачи - защищает от выполнения вредоносного кода при открытии документов и не позволяет злонамеренному пользователю исполнять произвольный код через механизм макросов.
Изменение режима блокировки вступает в действие немедленно.
astra-mac-control
Включает или отключает возможность работы приложений с ненулевым уровнем конфиденциальности. Состояние по умолчанию - включено. Изменения применяются после перезагрузки.
Файловые объекты, имеющие ненулевую метку конфиденциальности после отключения возможности работы с ними сохраняются.
Доступ к таким объектам не может быть получен штатными средствами ОС, но доступ к ним может быть получен при наличии неконтролируемого физического доступа к ПК, позволяющему использовать нештатные средства.
astra-mic-control
Включает или отключает механизм контроля целостности в ядре, изменяя значение параметра parsec.max_ilev командной строки ядра. После отключении механизма контроля целостности и перезагрузки целостность на файловой системе сбрасывается на нулевые значения. После включения механизма контроля целостности и перезагрузки на объектах файловой системы восстанавливаются принятые по умолчанию значения целостности (высокий уровень целостности на каталоги /dev, /proc, /run, /sys). При включении этой функции возможно указать значение максимальной целостности, отличное от принятого по умолчанию (63), что требуется для специальных применений (Брест).
astra-modban-lock
Блокирует загрузку неиспользуемых модулей ядра. Неиспользуемыми считаются те модули, которые не загружены в момент включения функции.
Изменение режима блокировки вступает в действие немедленно.
astra-modeswitch
Переключает и отображает уровни защищенности ОС:
- Базовый;
- Усиленный;
- Максимальный.
При изменении уровня защищенности:
- В сторону снижения уровня защищенности: автоматически отключаются опции, которые для данного уровня защищенности недоступны;
- В сторону увеличения уровня защищенности: при увеличении уровня защищенности состояние опций (МРД и МКЦ) автоматически не изменяется, но опции, доступные в новом режиме, становятся доступными для включения.
Из того, что "состояние опций автоматически не изменяется" следует, что после выполнения команды повышения уровня, например:
sudo astra-mac-control enable
sudo astra-digsig-control enable
sudo astra-secdel-control enable
sudo astra-swapwiper-control enable
Для того, чтобы переключение уровня защищенности и опций вступило в силу, необходимо перезагрузить систему.
Функции, недоступные в выбранном режиме, невозможно будет включить:
Уровни защищенности Функция безопасности | Базовый | Усиленный | Максимальный |
---|---|---|---|
Замкнутая Программная Среда (ЗПС) | Недоступен | Выкл | Выкл |
Очистка освобождаемой внешней памяти | Недоступен | Выкл | Выкл |
Мандатный Контроль Целостности (МКЦ) | Недоступен | Вкл | Вкл |
Мандатное Управление Доступом (МРД) | Недоступен | Недоступен | Вкл |
Дополнительные опции команды:
- list - вывести список доступных режимов;
- get - вывести текущий режим в числовом представлении;
- getname - вывести текущий режим в текстовом представлении;
set <режим> - установить режим, указанный параметром <режим> (число или текст). Допустимые значения для задания режимов:
Уровни защищенности Текстовое значение Числовое значение Базовый base 0 Усиленный advanced 1 Максимальный maximum 2
astra-mode-apps
Включает и выключает:
- режим AstraMode службы apache2 (конфигурационный файл /etc/apache2/apache2.conf). Переключение режима AstraMode выполняется только в конфигурационном файле /etc/apache2/apache2.conf (глобальное задание режима) и не затрагивает указания режима в иных конфигурационных файлах;
- режим МасEnable службы cups (конфигурационный файл /etc/cups/cupsd.conf).
astra-mount-lock
Запрещает монтирование съемных носителей с помощью службы fly-reflex-service/fly-admin-reflex непривилегированным пользователям.
Изменение режима монтирования вступает в действие немедленно.
astra-noautonet-control
Отключает автоматическую настройку сетевых подключений, блокируя работу служб NetworkManager, network-manager и connman, а также отключает элемент управления сетью в трее графического интерфейса.
Изменение режима блокировки вступает в действие немедленно.
astra-nobootmenu-control
Отключает отображение меню загрузчика grub2. Это затрудняет вмешательство пользователя в процесс загрузки и несколько ускоряет загрузку.
astra-nochmodx-lock
Блокирует возможность установки на файлы бита разрешения исполнения (chmod +x), не позволяя пользователям привнести в систему посторонний исполняемый или интерпретируемый код. Запрет распространяется, в том числе, и на пользователей из группы astra-admin, но не распространяется на пользователя root.
Блокировка astra-nochmodx-lock автоматически включается при включении блокировки интерпретаторов astra-interpreters-lock.
Изменение режима вступает в действие немедленно.
astra-overlay
Включает overlay на корневой файловой системе (ФС). Фактическое содержимое корневой ФС монтируется в overlay одновременно с файловой системой, хранящейся в памяти. После этого все изменения файлов сохраняются только в памяти, а файловая система, хранящаяся на носителе, остается без изменений. После перезагрузки все изменения теряются, и система каждый раз загружается в исходном состоянии. Эта функция может применяться в тех случаях, когда носитель, на котором расположена корневая ФС, аппаратно защищен от записи, либо необходимо программно защитить ее от изменений.
astra-ptrace-lock
При включении устанавливает максимальные ограничения на использование механизма ptrace:
- параметру kernel.yama.ptrace_scope присваивается значение 3 (полный запрет трассировки ptrace);
- присвоенное значение применяется немедленно;
- создается системный служба (юнит), восстанавливающая полный запрет при перезагрузке.
При отключении блокировки параметру kernel.yama.ptrace_scope присваивается значение 1 (ограниченная трассировка), восстановление запрета при перезагрузке отключается. Для отключения блокировки обязательна перезагрузка, без перезагрузки блокировка не может быть отключена.
astra-rootloginssh-control
Инструмент astra-rootloginssh-control доступен начиная с очередного обновления Astra Linux Special Edition 1.8. Инструмент обеспечивает управление доступом по протоколу SSH для учетной записи root.
Команда:
полностью запрещается любой доступ пользователя root по протоколу ssh. При этом параметру PermitRootLogin в конфигурационном файле службы sshd /etc/ssh/sshd_config присваивается значение no .
Команда:
разрешает доступ пользователя root по протоколу SSH только с использованием ключей безопасности. Доступ по паролю при этом запрещен. Параметру PermitRootLogin присваивается значение prohibit-passwd (это значение также используется по умолчанию).
Для работы инструмента должен быть установлен пакет openssh-server.
При изменении режима доступа выполняется перезапуск службы sshd. Изменение режима доступа происходит немедленно, однако подключения, установленные до изменения, не разрываются.
astra-secdel-control
Включает режим безопасного удаления файлов на разделах с файловыми системами, присутствующими в файле /etc/fstab. Поддерживаются следующие форматы файловых систем:
- ext2;
- ext3;
- ext4;
- xfs;
Когда функция astra-secdel-control включена, при удалении файлов содержимое файлов затирается, чтобы его нельзя было восстановить. В обычных условиях при удалении файлы логически помечаются как удаленные, но их содержимое остается на носителе, пока не будет затерто новыми данными.
Изменение режима работы вступает в действие после следующего монтирования файловой системы (в т.ч. после перезагрузки ОС).
astra-shutdown-lock
Блокирует выключение компьютера пользователями, не являющимися суперпользователями. Для этого добавляется политика policykit (/etc/polkit-1/localauthority/10-vendor.d/ru.astralinux.noshutdown.pkla), которая запрещает выключение компьютера без ввода пароля администратора. Дополнительно отключается возможность перезагрузки ПК комбинацией клавиш Ctrl-Alt-Del.
Изменение режима блокировки вступает в действие немедленно.
astra-strictmode-control
Доступно начиная с:
- Astra Linux Special Edition РУСБ.10015-01 и РУСБ.10015-10 (очередное обновление 1.7) с установленным обновлением БЮЛЛЕТЕНЬ № 2022-0819SE17 (оперативное обновление 1.7.2)
- Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7) с установленными обновлением БЮЛЛЕТЕНЬ № 2022-0926SE47 (оперативное обновление 4.7.2)
Включает расширенный режим мандатного контроля целостности.
Изменение режима вступает в действие после перезагрузки.
astra-sudo-control
Включает требование ввода пароля при использовании sudo. В Astra Linux Special Edition x.7 требование ввода пароля при использовании sudo по умолчанию включено (может быть переопределено при установке ОС), в более ранних очередных обновлениях по умолчанию вводить пароль при вызове sudo не требуется. Использование sudo без пароля повышает удобство работы, но в некоторых случаях может быть небезопасно. В состоянии "активно" при вызове sudo будет требоваться пароль, в состоянии "неактивно" - не будет требоваться.
Изменение режима ввода пароля вступает в действие немедленно.
astra-sumac-lock
Блокирует работу утилит sumac и fly-sumac. Если эта функция включена, даже те пользователи, у которых есть привилегия PARSEC_CAP_SUMAC, не смогут использовать команду sumac. Для этого устанавливаются права доступа 000 на исполняемый файл sumac и библиотеку libsumacrunner.so.
Изменение режима блокировки вступает в действие немедленно.
astra-swapwiper-control
Включает функцию очистки разделов подкачки при завершении работы ОС. Для этого вносятся изменения в конфигурационный файл /etc/parsec/swap_wiper.conf.
Изменение режима блокировки вступает в действие немедленно.
astra-sysrq-lock
Отключает функции системы, доступные при нажатии клавиши SysRq, т.к. их использование пользователем может быть небезопасно. Для этого изменяется значение параметра kernel.sysrq. Значение параметра сохраняется в файл /etc/sysctl.d/999-astra.conf.
astra-ufw-control
Включает межсетевой экран ufw. Если уже включен firewalld (другой межсетевой экран), то ufw не будет включен, т.к. при одновременном включении они вызывают конфликты.
Изменение режима работы вступает в действие немедленно.
astra-ulimits-control
Включает ограничения на использование пользователями некоторых ресурсов системы, чтобы предотвратить нарушение доступности системы в результате исчерпания ресурсов. Настройка ограничений производится путем внесения изменений в файл /etc/security/limits.conf.
На пользователей, уже вошедших в систему, изменение режима не влияет и вступает в действие после следующего входа пользователя.
Монитор безопасности astra-security-monitor
Аналог графической утилиты "Монитор безопасности". При вызове без параметров отображает компактную сводку о состоянии функций безопасности.
Дополнительные параметры команды:
- list - выводит машиночитаемый список всех контролируемых функций безопасности;
- status - выводит сводку о состоянии функций безопасности (так же, как и при вызове без параметров);
- status N - выводит состояние функции безопасности по номеру N, где N -- это id функции функции безопасности, получаемое из вывода опции list;
- switches - выводит в машиночитаемом виде список переключателей безопасности, предназначенный для отображения в графических утилитах администрирования.
Для каждой функции возможны следующие состояния:
- ВКЛЮЧЕНО/ВЫКЛЮЧЕНО
- ВКЛЮЧАЕТСЯ/ВЫКЛЮЧАЕТСЯ
- ЧАСТИЧНО
Состояние "ВКЛЮЧАЕТСЯ" обозначает, что функция находится в процессе включения или будет включена после перезагрузки, но в настоящий момент еще не активна. Состояние "ВЫКЛЮЧАЕТСЯ" имеет обратный смысл. Например, после отключения блокировки ptrace она переходит в состояние "ВЫКЛЮЧАЕТСЯ", т.к. она не может быть выключена в процессе работы системы, но отключится после перезагрузки.
Состояние "ЧАСТИЧНО" обозначает, что функция включена, но не все параметры, контролируемые этой функцией, соответствуют заданным по умолчанию. Например, состояние "ЧАСТИЧНО" для функции "МКЦ файловой системы" обозначает, что функция включена, но метки целостности на некоторых файловых объектах не соответствуют заданной системной конфигурации (см. ниже).
Включенное состояние функций безопасности означает повышенную безопасность, т.е. состояние, когда некий потенциально небезопасный функционал ОС запрещен.
Для понимания сообщений о состоянии функций безопасности следует обратить внимание на некоторые особенности:
- Состояние МКЦ на файловой системе - соответствуют ли метки целостности, установленные на объектах файловой системы, конфигурации, указанной в файле /etc/parsec/fs-ilev.conf. При контроле выводится сообщение о количестве файловых объектов, метка целостности которых не соответствует заданной метке целостности:
- "ниже" - метка целостности файлового объекта ниже заданной;
- "выше" - метка целостности файлового объекта выше заданной;
"норма" - метка целостности файлового объекта соответствует заданной;
Список файловых объектов, метка целостности которых не соответствует заданной в файле /etc/parsec/fs-ilev.conf, можно получить командой:
sudo set-fs-ilev status -v
- Подпись в расширенных атрибутах (xattr) - включена ли проверка подписи не только в исполняемых файлах, но и в любых других, которые подписаны в xattr соответствующей утилитой;
- Запрет входа root по ssh - запрещен ли удаленный вход в систему пользователю root (если не запрещен, это упрощает перебор паролей). По умолчанию root не может войти через ssh, т.е. функция запрета имеет состояние "включено";
- Безопасный вход в домен - применимо только в том случае, если машина введена в домен. Если в файле/etc/parsec/parsec.conf параметр login_local имеет значение admin (вход для локальных пользователей разрешён только для пользователей, входящих в группу astra-admin) или значение no (вход запрещён для всех локальных пользователей), то такая настройка считается безопасной;
- Системный киоск -"включено", если системный киоск включен и настроен хотя бы для одного пользователя;
- Графический киоск -"включено", если графический киоск настроен хотя бы для одного пользователя.