Проверка файлов PEM#

Данный документ содержит инструкции по проверке файлов PEM, используемых для Шифрование клиентского трафика с помощью TLS.

PEM (Privacy Enhanced Mail) это стандарт хранения и передачи публичных ключей и сертификатов. CedrusData поддерживает сертификаты в формате PEM. Другими поддерживаемым типами сертификатов являются JKS и PKCS 12.

PEM-файл может содержать сертификат, пару ключей, или их комбинацию. Ключи могут содержать цепочку сертификатов от различных центров сертификации (certificate authorities).

Используйте инструкции ниже, чтобы проверить содержимое PEM-файла.

Проверка PEM-файла#

В примерах ниже приведены расширения файлов для удобства чтения. Реальные файлы могут иметь другие расширения или не иметь расширений.

Вы могли получить файл, который содержит и сертификат и приватный ключ. Вы так же могли получить сертификат и приватный ключ в отдельных файлах. В таком случае объедините два файла в один так, чтобы первым шел приватный ключ, а затем сертификат. Например:

cat clustercoord.key clustercoord.cert > clustercoord.pem

Используйте команду cat, чтобы просмотреть содержимое файла:

cat clustercoord.pem | less

Убедитесь, что вы видите по крайней мере одну секцию KEY и одну секцию CERTIFICATE. Секция KEY обычно выглядит следующим образом:

-----BEGIN PRIVATE KEY-----
MIIEowIBAAKCAQEAwJL8CLeDFAHhZe3QOOF1vWt4Vuk9vyO38Y1y9SgBfB02b2jW
....
-----END PRIVATE KEY-----

Если секция KEY содержит фразу BEGIN ENCRYPTED PRIVATE KEY, значит вы получили зашифрованный приватный ключ и работа с ним потребует расшифровки с помощью пароля, который вы должны были получить вместе с ключом (возможно, вы указали пароль при запросе ключа). Обратите внимание, что CedrusData не поддерживает PEM-файлы, защищенные паролем.

Если секция KEY содержит фразу BEGIN EC PRIVATE KEY или BEGIN DSA PRIVATE KEY, значит вы получили ключ, который использует алгоритмы Elliptical Curve или DSA вместо RSA.

Секция CERTIFICATE может выглядеть следующим образом:

-----BEGIN CERTIFICATE-----
MIIDujCCAqICAQEwDQYJKoZIhvcNAQEFBQAwgaIxCzAJBgNVBAYTAlVTMRYwFAYD
....
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDwjCCAqoCCQCxyqwZ9GK50jANBgkqhkiG9w0BAQsFADCBojELMAkGA1UEBhMC
....
-----END CERTIFICATE-----

Файл может содержать один сертификат или цепочку сертификатов, каждый из которых подтверждает предыдущий.

Проверка приватного ключа#

Инструкции далее предполагают, что на вашей системе установлена утилита openssl из пакета OpenSSL 1.1 или более поздней версии.

Проверьте валидность приватного RSA ключа с помощью следующей команды:

openssl rsa -in clustercoord.pem -check -noout

При успешной проверке вы увидите следующее сообщение:

RSA key ok

Примечание

Для проверки приватных ключей EC или DSA см. соответствующую документацию openssl.

Проверка сертификата#

Проанализируйте сертификат с помощью следующей команды:

openssl x509 -in clustercoord.pem -text -noout

Если ваш сертификат имеет пароль, утилита openssl запросит его. Обратите внимание на вывод вышеприведенной команды:

  • Большинство современных браузеров устанавливают максимальный срок валидности сертификата в 398 дня. Обратите внимание на параметры Not Before и Not After в секции Validity. Если срок действия сертификата превышает предельное значение, браузеры могут выдать ошибку при получении такого сертификата.

  • Многие современные браузеры и клиентские приложения требуют наличия поля Subject Alternative Name (SAN). Убедитесь, что это поле содержит DNS имя вашего сервера (например, DNS:clustercoord.example.com). Браузеры и клиентские приложения могут выдать ошибку при получении сертификата без SAN.

После того как вы убедились в корректности сертификата, установите его на координаторе CedrusData согласно документации Установка сертификата и Конфигурация координатора.