Ima-evm-utils — различия между версиями

Материал из Wiki AlterOS
Перейти к: навигация, поиск
Строка 34: Строка 34:
 
  sudo reboot
 
  sudo reboot
 
#Создание новой ключевой пары для EVM  
 
#Создание новой ключевой пары для EVM  
  evm_kr_id=$(keyctl newring _evm @u)
+
  sudo evm_kr_id=$(keyctl newring _evm @u)
 
''Команда создает связку ключей _evm и присоединяет ее к связке ключей пользователя системы @u. Затем идентификатор брелока _evm присваивается переменной evm_kr_id для более удобного обращения в будущем''
 
''Команда создает связку ключей _evm и присоединяет ее к связке ключей пользователя системы @u. Затем идентификатор брелока _evm присваивается переменной evm_kr_id для более удобного обращения в будущем''
 +
 +
#Убедимся, что ключевая пара создана
 +
sudo keyctl show
 +
#Создадим каталог для хранения ключей
 +
sudo mkdir -p /etc/keys
 +
#Генерация 1024-битного RSA закрытого ключа и запись его в файл /etc/keys/privkey.pem
 +
sudo openssl genrsa -out /etc/keys/privkey.pem 1024
 +
Используя ранее созданный файл /etc/keys/privkey.pem, получаем соответствующий открытый ключ RSA в файл  /etc/keys/pubkey.pem
 +
sudo openssl rsa -pubout -in /etc/keys/privkey.pem -out /etc/keys/pubkey.pem
 +
 +
#Импортируем открытый ключ в специальную связку EVM#
 +
evmctl import --rsa /etc/keys/pubkey.pem $evm_kr_id
  
  
#Генерация ключей
 
sudo mkdir -p /etc/keys
 
 
#Включение модуля  и генерация мастер-ключа
 
#Включение модуля  и генерация мастер-ключа
 
  sudo modprobe trusted encrypted
 
  sudo modprobe trusted encrypted
 
  sudo keyctl add trusted kmk-trusted "new 32" @u
 
  sudo keyctl add trusted kmk-trusted "new 32" @u

Версия 13:07, 19 ноября 2020

ПОВЫШЕНИЕ БЕЗОПАСНОСТИ С ПОМОЩЬЮ ПОДСИСТЕМЫ ЦЕЛОСТНОСТИ ЯДРА

Integrity Measurement Architecture (IMA) : Архитектура проверки целостности

Extended Verification Module (EVM) : Расширенный модуль проверки

Настройка IMA и EVM позволяет подписывать файлы при помощи ЭЦП и повышать безопасность операционной системы.

  1. Установка необходимых пакетов:
sudo yum install ima-evm-utils keyutils openssl

Внести изменения в файл /etc/fstab выставив параметр iversion на всех записях в файле /etc/fstab относящихся к местам, где могут быть исполняемые файлы:

vi /etc/fstab
#
# /etc/fstab
# Created by anaconda on Wed Nov 11 15:19:25 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/alteros-root /                       ext4    defaults,iversion        1 1
UUID=48c0bccf-fa73-4a6b-8476-e89737b2fd4d /boot                   ext4    defaults        1 2
/dev/mapper/alteros-swap swap                    swap    defaults        0 0


Выполнить команды создания каталога и монтирования

mkdir /sys/kernel/security
mount -t securityfs securityfs /sys/kernel/security  
sudo grubby --update-kernel=/boot/vmlinuz-$(uname -r) --args="ima_appraise=fix ima_appraise_tcb evm=fix"
sudo reboot
  1. Создание новой ключевой пары для EVM
sudo evm_kr_id=$(keyctl newring _evm @u)

Команда создает связку ключей _evm и присоединяет ее к связке ключей пользователя системы @u. Затем идентификатор брелока _evm присваивается переменной evm_kr_id для более удобного обращения в будущем

  1. Убедимся, что ключевая пара создана
sudo keyctl show
  1. Создадим каталог для хранения ключей
sudo mkdir -p /etc/keys
  1. Генерация 1024-битного RSA закрытого ключа и запись его в файл /etc/keys/privkey.pem
sudo openssl genrsa -out /etc/keys/privkey.pem 1024

Используя ранее созданный файл /etc/keys/privkey.pem, получаем соответствующий открытый ключ RSA в файл /etc/keys/pubkey.pem

sudo openssl rsa -pubout -in /etc/keys/privkey.pem -out /etc/keys/pubkey.pem
  1. Импортируем открытый ключ в специальную связку EVM#
evmctl import --rsa /etc/keys/pubkey.pem $evm_kr_id


  1. Включение модуля и генерация мастер-ключа
sudo modprobe trusted encrypted
sudo keyctl add trusted kmk-trusted "new 32" @u