Настройка безопасной конфигурации компьютера для работы с ОС Astra Linux CE 2.12
Перед установкой ОС
- При возможности - установить и настроить на компьютере аппаратно-программный модуль доверенной загрузки (АПМДЗ)
Установить "взломостойкий" пароль на BIOS компьютера.
P.S.
"Взломостойкий" пароль это пароль:
- Содержащий не менее 8 символов;
- Не содержащий в себе никаких осмысленных слов (ни в каких раскладках);
- Содержащий в себе буквы в различных регистрах, цифры и спецсимволы.
- Отключить в BIOS-е Intel SGX (в связи с обнаруженной уязвимостью в механизме).
- Необходимо обеспечить защиту от "незаметного" вскрытия корпуса и встраивания "имплантов" в соединительные кабели периферийных устройств".
Для обеспечения защиты могут использоваться специальные корпуса, защитные крышки, пломбы, пломбировочные ленты, для усложнения скрытной установки "имплантов" рекомендуется использование ПК в форм-факторе ноутбук или моноблок. - Исключить использование беспроводных периферийных устройств вода (мыши, клавиатуры, тачпады и пр.).
Отключить по возможности беспроводные системы передачи данных (WiFi, Bluetooth).
При необходимости использования WiFi - по возможности использовать для защиты данных сети VPN. При наличии опций для процессоров Intel Execute Disable Bit (XD-Bit) и для процессоров AMD No Execute Bit (NX-Bit) включить их.
При наличии на серверах "не доверенных" систем контроля и управления типа ILO, RSA, iDRAC, ThinkServer EasyManage, AMT, iMana - их необходимо отключить, и использовать, при необходимости, альтернативные решения типа IP KVM.
Для Intel платформ необходимо устранить уязвимости Intel-SA-00086 в Intel Management Engine (если он инегрирован в процессор)
посредством установки обновления микропрограммы Intel Management Engine
(производитель оборудования должен обеспечить данную возможность - это либо обновления BIOS, либо ПО для интеграции обновлений).
Для частичных проверок используйте: Intel-SA-00086 Detection Tool.
Более подробно: https://www.intel.ru/content/www/ru/ru/support/articles/000025619/software.html- Установить ОС с включенным защитным преобразованием диска (см. https://wiki.astralinux.ru/x/vIEmAg),
и по возможности обеспечить невозможность физического доступа к жесткому диску, на котором установлена ОС
При установке ОС
Создать отдельные дисковые разделы
Раздел Рекомендации по установке/настройке / С защитным преобразованием (при условии, что /boot размещен в отдельном дисковом разделе).
Рекомендуется использовать файловую систему ext4./boot Без защитного преобразования.
Допускается использовать файловую систему ext2, ext3, ext4./home С защитным преобразованием.
Рекомендуется использовать файловую систему ext4.
Рекомендуется монтировать с опциямиnoexec,nodev,nosuid
./tmp С защитным преобразованием.
Рекомендуется использовать файловую систему ext4.
Рекомендуется монтировать с опциямиnoexec,nodev,nosuid
./var/tmp С защитным преобразованием.
Рекомендуется использовать файловую систему ext4.
Рекомендуется монтировать с опциямиnoexec,nodev,nosuid
.swap Опционально. С защитным преобразованием.
При выборе размера дисковых разделов следует помнить, что при размере раздела /tmp менее 250МБ весьма вероятно возникновение ошибок при работе с графикой или с большими объёмами данных.
Разделы /home /tmp /var/tmp рекомендуется монтировать с опциями
noexec,nodev,nosuid
- В разделе "Дополнительные настройки ОС" включить:
- Использовать по умолчанию ядро Hardened;
- Включить блокировку консоли;
- Включить блокировку интерпретаторов;
- Включить межсетевой экран ufw;
- Включить системные ограничения ulimits;
- Отключить возможность трассировки ptrace;
- Запретить установку бита исполнения;
- Включить использование sudo с паролем;
После установки ОС
- Установить единственным устройством для загрузки ОС жесткий диск, на который была произведена установка ОС
Установить "взломостойкий" пароль на загрузчик Grub (см. https://wiki.astralinux.ru/x/hwAgAQ). При использовании архитектур, отличных от Intel, установить пароль на загрузчик согласно документации.
- Использовать загрузку ядра HARDENED, и убрать из меню все другие варианты загрузки (см. https://wiki.astralinux.ru/x/hwAgAQ), включая режимы восстановления.
- Удалить модули ядра, ответственные за работу с Intel Management Engine (MEI). Инструкция см. https://wiki.astralinux.ru/x/rYKZAg.
Установить все доступные обновления безопасности ОС Astra Linux:
После установки ОС сразу настроена на работу с репозиторием, и при наличии доступа в интернет, обновление можно выполнить командами:
sudo apt update && sudo apt upgrade- Настроить монтирование раздела
/boot
с опциямиro
(перед обновлением ядра перемонтировать вrw
). - Включить режим загрузки secureboot на своих ключах (создать usb-flash носитель с помощью astra-secureboot, и, далее, ключи импортировать в BIOS) в соответствии с инструкцией https://wiki.astralinux.ru/x/UoA0AQ
Отключить доступ к консоли пользователям, если он не был отключен при установке ОС:
Создать файл /etc/rc.local со следующим содержимым:
#!/bin/sh -e
chown root:astra-console /dev/{pts,pts/*,ptmx,tty*}
chmod g+rx /dev/{pts,pts/*,ptmx,tty*}
chmod o-rx /dev/{pts,pts/*,ptmx,tty*}
exit 0Добавить правило в файл /etc/security/access.conf командой:
echo "-:ALL EXCEPT astra-console :LOCAL" >> /etc/security/access.confВключить в /etc/pam.d/login обработку заданных правил командойsed -i 's|.*account.*pam_access.*|account required pam_access.so|' /etc/pam.d/loginДля включения доступа к консоли администраторам необходимо добавить их в группу astra-console.Включить блокировку интерпретаторов, если она не была включена при установке ОС
По возможности, включить блокировку макросов с помощью инструмента командной строки astra-macros-lock:
astra-macros-lock enable- Включить блокировку трассировки ptrace, если она не была включена при установке ОС
- Включить гарантированное удаление файлов и папок
- Включить, при наличии возможности, режим киоска для пользователя.
- Работу с конфиденциальной информацией нужно проводить, используя защитное преобразование файлов.
- Работу с конфиденциальной информацией в сети необходимо производить, используя защитное преобразование пакетов с помощью создания доверенной VPN сети
(средства встроены в ОС). - Работу с конфиденциальной информацией при обмене почтой необходимо производить, используя защитные GPG-преобразования писем с помощью плагина для Thunderbird Enigmail
(средства встроены в ОС) Установить "взломостойкие" пароли на все учетные записи в ОС
P.S.
"Взломостойкий" пароль - это пароль
- Содержащий не менее 8 символов;
- Не содержащий в себе никаких осмысленных слов (ни в каких раскладках);
- Содержащий в себе буквы в различных регистрах, цифры и спецсимволы.
- Убедиться, что
pam_tally
настроен на блокировку учетных записей при попытках подбора паролей (настроено по умолчанию при установке ОС). - Настроить дисковые квоты в ОС
Для этого установить пакетquota,
настроить /etc/fstab, и использоватьedquota
для установки квот. Включить ограничения ОС (так называемые ulimits), если они не были включены при установке ОС.
Настроить ограничения ОС.
Рекомендуемые настройки /etc/security/limits.conf:#размер дампа ядра
* hard core 0#максимальный размер создаваемого файла
* hard fsize 50000000#блокировка форк-бомбы(большого количества процессов)
* hard nproc 1000Отключить все неиспользуемые сервисы (в т.ч. сетевые) которые запускаются при старте ОС:
systemdgenie
Включить межсетевой экран ufw, если он не был включен при установке ОС.
Настроить iptables в минимально необходимой конфигурации, необходимой для работы: по умолчанию все запрещено, кроме необходимых исключенийiptables
ufw
gufw
Настроить параметры ядра в /etc/sysctl.conf (можно использовать графический инструмент fly-admin-smc или добавить соответствующие строки в файл /etc/sysctl.conf:
fs.suid_dumpable=0
kernel.randomize_va_space=2
kernel.sysrq=0
net.ipv4.ip_forward=0
net.ipv4.conf.all.send_redirects=0
net.ipv4.conf.default.send_redirects=0после внесения изменений перезагрузить компьютер, и убедиться, что все параметры сохранены правильно.
Сделать проверку можно командой:sudo sysctl -a | moreЗаблокировать исполнение модулей python с расширенным функционалом:
find /usr/lib/python* -type f -name "_ctype*" -exec sudo dpkg-statoverride --update --add root root 640 {} \;При возможности, использовать защитное преобразование домашних каталогов пользователей с помощью допустимых средств,
или использовать хранение информации на сетевых дисках или на защищенных от несанкционированного доступа сменных носителях.По возможности, запретить пользователям подключение сменных носителей, к которым может быть осуществлён любой несанкционированный доступ.
- Настроить систему аудита на сохранение логов на удаленной машине.
Если возможно, использовать систему централизованного протоколирования. - Установить и настроить службу fail2ban (см. https://wiki.astralinux.ru/x/jgXoAg)
- Включить запрос пароля при каждом выполнении команды sudo, для чего внести следующие изменения в файл /etc/sudoers:
Для того, чтобы для выполнения первой команды sudo требовалось ввести пароль:
удалить "NOPASSWD:" из строки:%astra-admin ALL=(ALL:ALL)NOPASSWD:ALLДля того, чтобы пароль не запоминался для выполнения последующих команд и запрашивался для каждой команды:
добавить строкуDefaults timestamp_timeout=0