Создайте CSR, используя хранилище закрытых ключей в Google HSM

Я хочу сгенерировать CSR, используя ключи, хранящиеся в Google KMS. Я сгенерировал ключи, но не знаю, как сгенерировать CSR.

Я нашел примеры на GO и Python, но понятия не имею об этих языках. Я попытался сделать это в облачной консоли Google, но получил сообщение об ошибке при попытке запустить команду ниже (маскируя мои данные csr).

Команда

openssl req -new -subj '/E = {yourEmail}/CN = {companyName}/O = {companyName}/' -sha256 -engine pkcs11 -keyform engine -key pkcs11:object = {keyName}

Журналы ошибок

Invalid engine "pkcs11"
40570CD7CE7C0000:error:12800067:DSO support routines:dlfcn_load:could not load the shared library:../crypto/dso/dso_dlfcn.c:118:filename(/usr/lib/x86_64-linux-gnu/engines-3/pkcs11.so): /usr/lib/x86_64-linux-gnu/engines-3/pkcs11.so: cannot open shared object file: No such file or directory
40570CD7CE7C0000:error:12800067:DSO support routines:DSO_load:could not load the shared library:../crypto/dso/dso_lib.c:152:
40570CD7CE7C0000:error:13000084:engine routines:dynamic_load:dso not found:../crypto/engine/eng_dyn.c:422:
40570CD7CE7C0000:error:13000074:engine routines:ENGINE_by_id:no such engine:../crypto/engine/eng_list.c:430:id=pkcs11
40570CD7CE7C0000:error:12800067:DSO support routines:dlfcn_load:could not load the shared library:../crypto/dso/dso_dlfcn.c:118:filename(libpkcs11.so): libpkcs11.so: cannot open shared object file: No such file or directory
40570CD7CE7C0000:error:12800067:DSO support routines:DSO_load:could not load the shared library:../crypto/dso/dso_lib.c:152:
40570CD7CE7C0000:error:13000084:engine routines:dynamic_load:dso not found:../crypto/engine/eng_dyn.c:422:
No engine specified for loading private key
No filename or uri specified for loading private key
Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
1
0
107
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я не уверен, актуально ли это, но, возможно, попробуйте запустить следующее

sudo apt-get update
sudo apt-get install libengine-pkcs11-openssl

Я нашел это по этой ссылке: https://cloud.google.com/kms/docs/reference/pkcs11-openssl

Ответ принят как подходящий

У меня была такая же проблема, и это спасло меня: https://github.com/icedevml/kms-csr-tool/tree/master

Вам необходимо установить Docker на свой компьютер, запустить его и выполнить на своем терминале следующие команды:

# ensure to delete old stale versions
docker image rm ghcr.io/icedevml/kms-csr-tool:master
# run the tool
docker run -it ghcr.io/icedevml/kms-csr-tool:master

Следуйте инструкциям, которые появятся:

  1. Нажмите на ссылку, предоставленную терминалом, и выполните аутентификацию в Google Cloud Platform.
  2. Вставьте код авторизации в терминал и нажмите Enter.
  3. Вы должны ввести ключевые данные, такие как: идентификатор проекта, местоположение, имя брелока и имя ключа.
  4. Введите информацию, необходимую для создания файла CSR (страна, штат, организация и т. д.).
  5. Содержимое вашего файла CSR появится на терминале. Скопируйте его и сохраните в файл.

ПРИМЕЧАНИЕ. Ваш закрытый ключ в Google KMS должен быть настроен с целью «Асимметричный знак».

Другие вопросы по теме