Назад | Перейти на главную страницу

Как объединить разные сертификаты в единый .pem

Я только что закончил читать это отличная нить объясняя различные форматы SSL.

Теперь я ищу противоположность Как разбить файл PEM

Есть 4 файла, которые я хочу объединить, изначально созданные для Apache, я просматриваю файлы, указанные

Что меня больше всего интересует, так это порядок файлов в консолидированном дереивативе, это важно? НАПРИМЕР. если бы я просто cat их вместе в том порядке, в котором они появляются выше, в .pem, будет ли это правильно, или их нужно заказывать определенным образом?

К вашему сведению, я делаю это ради использования этих сертификатов как единого .pem в SimpleSAMLphp.

Порядок имеет значение, согласно RFC 4346.

Вот цитата, взятая непосредственно из RFC:

  certificate_list
    This is a sequence (chain) of X.509v3 certificates.  The sender's
    certificate must come first in the list.  Each following
    certificate must directly certify the one preceding it.  Because
    certificate validation requires that root keys be distributed
    independently, the self-signed certificate that specifies the root
    certificate authority may optionally be omitted from the chain,
    under the assumption that the remote end must already possess it
    in order to validate it in any case.

Основываясь на этой информации, сначала должен идти сертификат сервера, затем любые промежуточные сертификаты и, наконец, сертификат корневого доверенного центра (если он самоподписанный). Мне не удалось найти никакой информации о закрытом ключе, но я думаю, что это не имеет значения, потому что закрытый ключ в pem легко идентифицировать, поскольку он начинается и заканчивается приведенным ниже текстом, в котором есть ключевое слово PRIVATE в этом.

 -----BEGIN RSA PRIVATE KEY-----
 -----END RSA PRIVATE KEY-----

Вот команда для объединения с использованием cat

cat first_cert.pem second_cert.pem > combined_cert.pem