Скрипт sberlinux-hardening-vendor-advised#

Описание​#

sberlinux-hardening-vendor-advised – это скрипт, с помощью которого реализованы рекомендации разработчика по безопасной настройке ОС.

Важно

Использование скрипта sberlinux-hardening-vendor-advised опционально.

Синтаксис скрипта:

sberlinux-hardening-vendor-advised <options>

Где <options> - опции.

Опции#

Часто используемые опции скрипта представлены в таблице ниже.

Опции sberlinux-hardening-vendor-advised#

Опция

Описание

-a, --apply

При несоответствии настройки предпринять попытку исправить ее на требуемую

-n, --nocolor

Не использовать цвета в выводе

-t <N>, --test <N>

Проверить или исправить только настройку с заданным номером <N>

-l, --list

Вывести только список настроек, не пытаясь их проверить или исправить. Рекомендуется использовать вместе с опцией -t <N>, --test <N> для просмотра номеров настроек для их последующего использования

-b, --break-on-fail

Остановить выполнение, если какая-либо настройка в состоянии «Не соответствует»

-d, --defaults

При исправлении не входить в интерактивный режим для ввода значений и выставлять параметры значений по умолчанию

-h, --help

Вывести краткую справку по использованию скрипта

-f, --force

Применить процедуру исправления, даже если настройки в состоянии «Соответствует»

Изменяемые параметры#

Изменяемые параметры скрипта представлены в таблице ниже.

Изменяемые параметры sberlinux-hardening-vendor-advised#

Изменяемые параметры

Описание

Доступные для записи пользователями каталоги

Установить пользовательские каталоги в разделы, отличные от корневого каталога/ (определяется администратором при установке ОС)

Разметка диска

Сегментировать диск на несколько файловых систем (определяется администратором при установке ОС)

Алгоритмы SSH

Отключить небезопасные алгоритмы SSH:
Ciphers: chacha20-poly1305@openssh.com, aes256-gcm@openssh.com, aes128-gcm@openssh.com, aes256-ctr,aes192-ctr, aes128-ctr
HostKeyAlgorithms: rsa-sha2-512, rsa-sha2-256, ssh-ed25519
MACs: hmac-sha2-256-etm@openssh.com, hmac-sha2-512-etm@openssh.com, umac-128-etm@openssh.com
KexAlgorithms: curve25519-sha256, curve25519-sha256@libssh.org, diffie-hellman-group16-sha512, diffie-hellman-group18-sha512, diffie-hellman-group14-sha256
PubkeyAcceptedKeyTypes: ssh-ed25519-cert-v01@openssh.com, ssh-ed25519

Неиспользуемые файловые системы

Настроить неиспользуемые файловые системы:
cramfs;
freevxfs;
jffs2;
hfs;
hfsplus;
squashfs;
udf;
debugfs;
tracefs

Ключи GPG

Установить параметр gpgcheck = 1 в файлах /etc/yum.repos.d/*.repo, чтобы настроить ключи GPG для всех репозиториев

Разрешения файлов конфигурации загрузчика

Установить для каталогов в /boot (кроме /boot/efi) владельцем пользователя root, группы audit, права доступа 700 или 640, чтобы настроить разрешения на конфигурации загрузчика

Пароль загрузчика

Установить пароль загрузчика

Аутентификация для однопользовательского режима

Установить параметр ExecStart=-/usr/lib/systemd/systemd-sulogin-shell rescue в файле /usr/lib/systemd/system/rescue.service

Интерактивная загрузка

Удалить опцию ядра systemd.confirm_spawn

Загрузчика на сбор сведений для аудита

Установить опции загрузки ядра: audit_backlog_limit = 8192, audit = 1, чтобы включить загрузчика сбора сведений для аудита до старта службы аудита

Статус сервиса auditd

Запустить сервис auditd

Статус сервиса systemd-journald

Запустить сервис systemd-journald

Статус сервиса rsyslog

Запустить сервис rsyslog

Статус сервиса firewalld

Включить межсетевой экран, настроить политики, добавить межсетевой экран в автозагрузку основого режима ОС

Статус сервиса kdump

Отключить сервис kdump

Журналирование sudo

Установить tlogfile=/var/log/sudo.log в файле /etc/sudoers для включения журналирование sudo

SSH: разрешения для файлов ключей хоста

Установить chmod 600 для /etc/ssh/ssh_host* для настройки разрешиний

SSH: LogLevel

Установить параметр LogLevel VERBOSE в файле /etc/ssh/sshd_config

SSH: X11

Установить параметр X11Forwarding no в файле /etc/ssh/sshd_config для отключения переадресации SSH X11

SSH: MaxAuthTries

Установить параметр MaxAuthTries 4 в файле /etc/ssh/sshd_config

SSH: IgnoreRhosts

Установить параметр IgnoreRhosts yes в файле /etc/ssh/sshd_config для включения

SSH: HostbasedAuthentication

Установить параметр HostbasedAuthentication no в файле /etc/ssh/sshd_config для отключения

SSH: PermitEmptyPasswords

Установить параметр PermitEmptyPasswords no в файле /etc/ssh/sshd_config для отключения

SSH: PermitUserEnvironment

Установить параметр PermitUserEnvironment no в файле /etc/ssh/sshd_config для отключения

SSH: PAM

Установить параметр UsePAM yes в файле /etc/ssh/sshd_config для включения

SSH: AllowTcpForwarding

Установить параметр AllowTcpForwarding no в файле /etc/ssh/sshd_config для отключения

SSH: MaxSessions

Установить параметр MaxSessions <= 4 в файле /etc/ssh/sshd_config

SSH: StrictModes

Установить параметр StrictModes yes в файле /etc/ssh/sshd_config

Интервал времени простоя SSH

Установить параметр ClientAliveCountMax 4 и/или ClientAliveInterval 2 в файле /etc/ssh/sshd_config

Файлы shosts.equiv

Удалить файлы /etc/shosts.equiv, проверить отсутствие в ОС

Запрещенные файлы

Удалить у пользователей файлы c расширениями:
.forward;
.netrc;
.rhosts

«Точечные» (.*) файлы пользователей

Установить запрета на общую или групповую запись для «точечных» файлов пользователей chmod o-w

Права домашних каталогов пользователей

Установить права домашних каталогов пользователей chmod 750

Имена групп

Удалить дубликаты имен групп

Группа shadow

Исключить пользователей из группы shadow

Механизм SELinux

Установить параметр SELINUX=enforcing в файле /etc/selinux/config для включения и настройки

Пустые пароли

Удалить каждый экземпляр (instance) с nullok в файлах /etc/pam.d/password-auth и /etc/pam.d/system-auth

Хранение трассировочных дампов через /etc/systemd/coredump.conf

Установить параметр ProcessSizeMax=0 и/или Storage=none в файл /etc/systemd/coredump.conf для запрета хранения

Защита от исполнения данных

Удалить параметры noexec и noexec32 из опций ядра для запрета исполнения данных

Получение, сохранение и обработка трассировочных дампов

Отключить сокет coredump для запрета на получение, сохранение и обработку трассировочных дампов

Автовыход из брошенной сессии

Добавить или изменить параметр TMOUT=900 в файле /etc/profile.d/tmout.sh

Парольные политики для root

Добавить или раскомментировать строки enforce_for_root в файле /etc/security/pwquality.conf

Цифровые символы в пароле

Установить параметр dcredit = -1 в файл /etc/security/pwquality.conf

Символы нижнего регистра в пароле

Установить параметр lcredit = -1 в файл /etc/security/pwquality.conf

Символы верхнего регистра в пароле

Установить параметр ucredit = -1 в файл /etc/security/pwquality.conf

Спецcимволы в пароле

Установить параметр ocredit = -1 в файл /etc/security/pwquality.conf

Длина пароля

Установить параметр PASS_MIN_LEN 8 в файл /etc/login.defs

Вход без пароля

Заменить NOPASSWD на PASSWD в файлах /etc/sudoers.d/

Количество классов символов в пароле

Установить параметр minclass = 4 в файл /etc/security/pwquality.conf

Отключение crashkernel

Удалить параметр crashkernel из опций ядра

Дополнительная информация#

Дополнительную информацию можно получить, выполнив команду:

sberlinux-hardening-vendor-advised --help