Как узнать ключи ipsec для ike в Solaris в формате pkcs12?

Вопрос или проблема

Я хочу преобразовать ключи ipsec ike из Solaris в формат, подходящий для Libreswan.

С помощью команды ikecert я экспортирую открытый ключ

ikecert certdb -e 0 > public.pem 

и закрытый ключ

ikecert certlocal -e 0 > public.pem 

Теперь с помощью openssl я пытаюсь преобразовать в формат pkcs12 и..

openssl pkcs12 -export -in chiavepubblica.pem -inkey chiaveprivata.pem -out YourName.p12

возвращает эту ошибку

4274747236:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:707:Expecting: ANY PRIVATE KEY

кто-нибудь знает способ экспортировать или преобразовать в подходящий формат для libreswan?
Спасибо

Ответ или решение

Чтобы решить проблему конвертации ключей IPsec для IKE в Solaris в формат PKCS#12, который совместим с Libreswan, выполните следующие шаги. Вы столкнулись с ошибкой в результате попытки использования OpenSSL, но ее можно исправить, следуя структурированному процессу.

Шаги по конвертации ключей:

  1. Проверка экспортированных ключей:
    Убедитесь, что файлы public.pem и private.pem действительно содержат публичный и приватный ключи соответственно. Вы можете использовать текстовый редактор или команду cat для просмотра содержимого. Публичный ключ должен начинаться с -----BEGIN CERTIFICATE-----, а приватный — с -----BEGIN PRIVATE KEY----- или -----BEGIN RSA PRIVATE KEY-----.

  2. Исправление экспорта приватного ключа:
    Ваша команда для экспорта приватного ключа, вероятно, неверна. Проверьте, что команда ikecert корректно экспортирует только приватный ключ:

    ikecert certlocal -e 0 > private.pem
  3. Проверка корректности файлов:
    Используйте команду openssl для проверки, что файлы правильно отформатированы:

    openssl rsa -in private.pem -check
    openssl x509 -in public.pem -text -noout
  4. Конвертация в PKCS#12:
    После подтверждения корректности файлов, выполните конвертацию:

    openssl pkcs12 -export -in public.pem -inkey private.pem -out YourName.p12

    Если все ключи верны, это должно работать без ошибок.

  5. Проверка кодировки:
    Убедитесь, что файлы public.pem и private.pem в кодировке UTF-8. Необходимо исключить специфические символы, которые могут вызывать ошибки при чтении OpenSSL.

  6. Конфигурация в Libreswan:
    Пользуясь сконвертированным PKCS#12 файлом, проверьте документацию Libreswan для импорта сертификатов и ключей:

    ipsec newhostkey --output YourName.p12

Одна из возможных причин ошибки:

Ошибка PEM_read_bio:no start line обычно указывает на то, что OpenSSL не распознал заголовок файла, так как он не соответствует ожидаемому формату. Убедитесь, что заголовки и окончания в PEM файлах находятся в точности такие, как указано выше.

Заключение:

Следуя этой инструкции, вы сможете успешно преобразовать свои ключи в формат PKCS#12 для использования в Libreswan. Если же возникнут дополнительные проблемы, рассмотрите возможность использования утилит для проверки корректности генерации и экспорта ключей в Solaris, возможно обращение к документации или специалистам по OpenSSL.

Оцените материал
Добавить комментарий

Капча загружается...