Создание ключей

Для создание открытых и закрытых ключей выполняют следующие действия:

  1. открыть консоль администратора командой (с вводом пароля):
sudo -i
  1. создать временную папку для ключей и перейти в неё:
mkdir ~/ima
cd ~/ima
  1. создать файл конфигурации x509.conf**, **например, командой:
nano x509.conf
  1. задать содержимое файла следующими настройками:
[ req ]
distinguished_name = req_distinguished_name
prompt = no
string_mask = utf8only
x509_extensions = myexts
[ req_distinguished_name ]
O = IMA
CN = Executable Signing Key
emailAddress = ivan@petrov.tld
[ myexts ]
basicConstraints=critical,CA:FALSE
keyUsage=digitalSignature
subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid

Значения полей O, CN, emailAddress являются пользовательскими, нужно заменить их на необходимые;

  1. сохранить файл (если используется редактор nano, то последовательно нажать клавиши Ctrl+O, Enter и Ctrl+X);
  2. создать пару ключей командой:
libressl req -new -nodes -utf8 -batch -newkey gost2001 -pkeyopt dgst:streebog512 -pkeyopt paramset:A -streebog512 -days 109500 -x509 -config x509.conf -outform DER -out ima_cert.der -keyout ima_priv.pem

где:

  • ima_cert.der – открытый ключ;
  • ima_priv.pem – закрытый ключ;
  1. создать папку для открытых ключей ядра, скопировать туда открытый ключ:
mkdir -p /etc/keys/ima
cp -v ima_cert.der /etc/keys/ima/ima_cert.der

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

cp -v ima_cert.der /etc/keys/x509_evm.der