Формат файла .pem используется в основном для хранения криптографических ключей.
Этот файл можно использовать в разных целях.
Файл .pem определяет структуру и тип кодировки файла, который используется для хранения данных.
Файл pem содержит стандартный продиктованный формат с явным началом и концом.
В этой статье мы предоставим вам обзор файла .pem и того, как его использовать.
Основной синтаксис
Файл Pem начинается с:
-----BEGIN -----
Кодированные блоки данных Base64
Данные кодируются с помощью base64 между этими тегами.
Файл pem состоит из нескольких блоков.
Назначение каждого блока или файла pem объясняется в заголовке, который сообщает вам, как используется данный блок.
Допустим, вы видите следующий заголовок в начале файла pem.
-----BEGIN RSA PRIVATE KEY-----
Вышеупомянутый заголовок означает ,что все следующие строки данных,относятся к деталям закрытого ключа RSA.
Как использовать файл pem для сертификатов SSL?
Используя файлы pem, вы можете хранить SSL сертификаты с соответствующими закрытыми ключами.
В полной цепочке SSL назначается несколько сертификатов, и они работают в следующем порядке:
Во-первых, сертификат конечного пользователя, обычно назначаемый доменному имени центром сертификации (CA).
Этот файл сертификата используется в Nginx и Apache для шифрования HTTPS.
Есть необязательные до четырех промежуточных сертификатов, назначенных CA вышестоящими органами.
В конце концов, самый высокий сертификат – это корневой сертификат, который самоподписан первичным центром сертификации (CA).
Каждый сертификат в pem-файле перечислен в отдельных блоках следующим образом:
-----BEGIN CERTIFICATE-----
//end-user
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
//intermediate Certificates
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
//root Certificate
-----END CERTIFICATE-----
Эти файлы будут предоставлены вам вашим поставщиком SSL для использования на вашем веб-сервере.
Следующие сертификаты будут созданы с помощью certbot LetsEncrypt.
cert.pem chain.pem fullchain.pem privkey.pem
Поместите все эти сертификаты в папку «/etc/letsencrypt/live/domain-name/».
Теперь используйте эти сертификаты, передайте их в качестве параметра для вашего веб-браузера в Nginx следующим образом:
ssl_certificate /etc/letsencrypt/live/domain-name/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain-name/privkey.pem;
Для Apache можно использовать тот же метод, но используйте директивы SSLCertificateFile и SSLCertificatekeyFile следующим образом
SSLCertificateFile /etc/letsencrypt/live/domain-name/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain-name/privkey.pem
Как использовать файлы Pem для SSH?
Файлы Pem также могут использоваться для SSH.
Интересно отметить, что когда вы создаете новый инстанст в веб-сервисах Amazon, он предоставляет вам pem-файл, содержащий закрытый ключ, и этот ключ используется для того, чтобы иметь возможность подключаться к новым инстансам по SSH.
Самый простой способ добавить закрытый ключ в ваш ssh-agent с помощью команды ssh-add следующим образом:
Выполните указанную выше команду при запуске системе., так как данная настройка не сохраняется после перезагрузки системы.
Заключение
В этой статье мы сделали краткий обзор файла pem.
Мы объяснили основы использования файлов pem для сертификатов SSL и службы SSH.