PEM形式で証明書を作成する

投稿者 Zevenet | 15年2016月XNUMX日

概要

Zen Load BalancerはHTTPS接続(HTTPプロファイル)を管理することができるため、システム管理者は自分自身の証明書(自己署名証明書)を作成するか、認証局による署名付き証明書を取得する必要があります。 PEMフォーマット

安全な証明書はパスワードなしで作成する必要があり、キーとCSRは安全にするためにサーバーで生成する必要があります。

ポジティブSSLはPEMフォーマットに移行する準備ができていますが、各ファイルに証明書、中間CA、およびルートCAが分離されているため、Rapid SSLを変換する必要があります。

要件

サーバでキーを生成するには、パッケージopensslをインストールする必要があります。この場合は、すでにインストールされているはずのZen Load Balancerインスタンスになります。

まず、パスフレーズなしで鍵を生成します。

openssl genrsa -out host_domain_com.key 2048

次に、生成されたキー(.key)を入力として使用して証明書署名要求(.csr)を生成します。

openssl req -new -key host_domain_com.key -out host_domain_com.csr

証明書と中間CAファイルが配信されたら、必ず発行者ルート証明書を取得してください。

分離されたすべてのファイルは、サーバー証明書、中間証明書、ルートCA証明書のPEM形式である必要があります。 そうでない場合は、次のコマンドを使用してファイルを変換します。

openssl x509 -in certFileName.cer -outform PEM -out convertedCertFileName.pem

最後に、秘密鍵、発行された証明書、中間証明書、およびルートCA証明書があります。 これらすべてのファイルの内容を組み合わせて、UNIX形式のPEMファイルを作成する必要があります。

PEMフォーマットでの証明書の生成

PEM証明書は次の構造で構築する必要があります。

-----BEGIN RSA PRIVATE KEY-----
Private Key (without passphrase)
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
Certificate (CN=www.mydomain.com)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Intermediate (Intermediate CA, if exists)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Root (ROOT CA, who signs the Certificate)
-----END CERTIFICATE-----

正しいPEM構造を作成するには、上記の手順で生成されたさまざまなファイルの内容を区切り文字で連結する必要があります。

-----BEGIN RSA PRIVATE KEY-----
uiMTxBQnK9ApC5eq1mrBooECgYB4925pDrTWTbjU8bhb/7BXsjBiesBBVO43pDYL
1AOO5EEikir239UoFm6DQkkO7z4Nd+6Ier9fncpN1p1EZtqPxT64nsUTNow/z1Pp
nUVxhqt4DT+4Vp5S7D9FQ+HagbhVInQXKXtT7FNFhpIxpRy512ElSuWvrELiZOwe
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
wYDVR0fBDwwOjA4oDagNIYyaHR0cDovL3JhcGlkc3NsLWNybC5n
ZW90cnVzdC5jb20vY3Jscy9yYXBpZHNzbC5jcmwwHQYDVR0OBBYEFA8nu+rbiNqg
DYmhNE0IgXx6XRHiMAwGA1UdEwEB/wQCMAAwSQYIKwYBBQUHAQEEPTA7MDkGCCsG
gOYD8kmKOsxLRWeZo6Tn8
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
EgYDVR0TAQH/BAgwBgEB/wIBADA6BgNVHR8EMzAxMC+gLaArhilodHRwOi8vY3Js
Lmdlb3RydXN0LmNvbS9jcmxzL2d0Z2xvYmFsLmNybDA0BggrBgEFBQcBAQQoMCYw
JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmdlb3RydXN0LmNvbTANBgkqhkiG9w0B
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV
UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy
dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1
jOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y
7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh
1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4
-----END CERTIFICATE-----

PEMファイル全体をUNIX形式に変換する必要があります。

HTTPSプロファイルファームで使用するために、テスト目的でzencert.pemという名前の証明書を使用できます。

上の共有:

GNU Free Documentation Licenseの条項に基づくドキュメンテーション。

この記事は役に立ちましたか?

関連記事