Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Q&A技術的な質問と回答

Q.SSL サーバー証明書がエラーで保存できない

管理画面でサーバー証明書を設定して保存したところ、以下のエラーが出てしまいます。

サーバー証明書の更新をする事が出来ませんでした。

A.

以下が原因となっている可能性があります。

  • サーバー証明書を正しく設定していない
  • 秘密鍵のパスフレーズを解除していない
  • サーバー証明書と中間証明書・秘密鍵の整合性がとれていない
「証明書」および「中間証明書」の設定

証明書と中間証明書はそれぞれ「-----BEGIN CERTIFICATE-----」で始まり、「-----END CERTIFICATE-----」で終わります
改行箇所を含め、正しいフォーマットになっているかご確認ください。

以下は証明書のサンプルとなります。

-----BEGIN CERTIFICATE-----
MIIEazCCA1OgAwIBAgIJAKytSDG2miOyMA0GCSqGSIb3DQEBCwUAMIGtMQswCQYD
VQQGEwJKUDEOMAwGA1UECAwFVG9reW8xDzANBgNVBAcMBm1pbmF0bzEjMCEGA1UE
Cgwac2VydmVydGVzdC5kYWVtb24uYXNpYSBJQ0ExEDAOBgNVBAsMB05ldHdvcmsx
IzAhBgNVBAMMGnNlcnZlcnRlc3QuZGFlbW9uLmFzaWEgSUNBMSEwHwYJKoZIhvcN
AQkBFhJ5aXdhaUBzaXhhcGFydC5jb20wHkDktKlscoeOMTcyMTU3WhcNMjcwNjE0
MTcyMTU3WjCBqTELMAkGA1UEBhMCSlAxDjAMBgNVBAgMBVRva3lvMQ8wDQYDVQQH
DAZtaW5hdG8xHzAdBgNVBAoMFnNlcnZlcnRlc3QuZGFlbW9uLmFzaWExFDASBgNV
BAsMC0RldmVsb3BtYW50MR8wHQYDVQQDDBZzZXJ2ZXJ0ZXN0LmRhZW1vbi5hc2lh
MSEwHwYJKoZIhvcNAQkBFhJ5aXdhaUBzaXhhcGFydC5jb20wggEiMA0GCSqGSIb3
DQEBAQUAA4IBDwAwggEKAoIBAQDcF1AkUe5lUVuMR/bDM9TN21eXLAbWcoUjPnDE
IFS7w7j2hAwGOs30PUSe2FpKGisPRnoxIEWNcqSbZvw9DjxCFssZBlz1DXSxAFXH
5uCElg3h1u8tmnsGcPa5+pqdM+APb7d7k7XHCC+nSokBQiGAjyxEdxl+k2wrNYTV
QHTH8yMq9+CCAmsy2zX5LfAoPzKzldva0gBo4oZLJQ9xQFtTyu7s6a9BEVdWaF+2
GIBsbuO+3AexJO/ZKj3gGEM9yWu4uDalNHcLFF3q1t7a1tREjEE27xAH+JAsZqMz
OGOQngU72z4ReGUVT+FUxKn1x8Z1+yYKCvXr0VwEqi1KFiMDAgMBAAGjgY8wgYww
CQYDVR0TBAIwADARBglghkgBhvhCAQEEBAMCBkAwLAYJYIZIAYb4QgENBB8WHU9w
ZW5TU0wgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBTYRh7z02m+T8vr
RsXRpFHu9OjeEjAfBgNVHSMEGDAWgBSAh9bP1ROhouiVxDgBtuvmGAjgIjANBgkq
hkiG9w0BAQsFAAOCAQEAX09192uWYvhWnJw+iADGmreF34IrKSJGlmzet0XSFu1/
obIEX6KtfQJgJbozF5EY6uXKDGNSGdvzXylY3PPqcI3LegLfp4c7BdWOvtKRPYCc
ebm70WNSAsOZuv3fFaMNVqS1hFlhZHetHHlyO2zOtxUfN/4jAEY9d/s9NU6B7US/
Umwmv/JAEsqHcyq/X1kCIs2/n24bUAs3oEfKkxZdW1JTszbEjQUEopaZWSdpwID/
LrFXSras1QJoaMKEqMVfgGRwd7WvDFz0EMeeCRws6JXIDDjrQMjJAd+dqUIqj5ku
qPq8jw78BGXs8dC14cRSdmQIuqpv84XMbkiB8b2jRA==
-----END CERTIFICATE-----

「秘密鍵」の設定

秘密鍵は「-----BEGIN RSA PRIVATE KEY-----」で始まり、「-----END RSA PRIVATE KEY-----」で終わります

もしパスフレーズが設定されたままになっている場合、以下のような違いが生じます。

■OpenSSL 1.0.0 以降で作成した場合

----- BEGIN ENCRYPTED PRIVATE KEY -----
(秘密鍵の内容)
----- END ENCRYPTED PRIVATE KEY -----

■OpenSSL 0.9.8e 以前で作成した場合

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,BCC23A5E16582F3D
(秘密鍵の内容)
----- END RSA PRIVATE KEY -----

Movable Type クラウド版では、秘密鍵のパスフレーズは解除されている必要があります。
上記の違いに該当する場合は、秘密鍵からパスフレーズを解除したうえで、あらためて設定してください。

以下はパスフレーズを解除した秘密鍵のサンプルとなります。

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEA3BdQJFHuZVFbjEf2wzPUzdtXlywG1nKFIz5wxCBUu8O49oQM
BjrN9D1EnthaShorD0Z6MSBFjXKkm2b8PQ48QhbLGQZc9Q10sQBVx+bghJYN4dbv
LZp7BnD2ufqanTPgD2+3e5O1xwgvp0qJAUIhgI8sRHcZfpNsKzWE1UB0x/MjKvfg
ggJrMts1+S3wKD8ys5Xb2tIAaOKGSyUPcUBbU8ru7OmvQRFXVmhfthiAbG7jvtwH
sSTv2So94BhDPclruLg2pTR3CxRd6tbe8delcLes+mWQB/iQLGajMzhjkJ4FO9s+
EXhlFU/hVMSp9cfGdfsmCgr169FcBKotShYjAwIDAQABAoIBAQCY7q4mfrP7vRuz
D3JdU4/Ed2yWw+YAb1UqF0I+VgTq7+Z/jWPZlFT2KPics9OReDuBgsR3jGgoEIhm
35nYRyMB/VqlCfHf6bizIXt5y2kpWCdPTY2nD5f68tXOh1+Waqx/rW4+tXXzVjHe
ugEXWb9z2Ii3Dlctx/y6zZZ+pCpBoNvTUzzmizTErouq3O0PSeU3f/Xr1lih+EHq
Rf9fB2G5/Tt/EhcgZLNcYzZbQUT7KoZtIob81NuH5otHs5YRO0kWXmA/STKSql1v
82Gfpdc4RIW0DCWIWYsNtauPhqCLe4jRTB0tUwObB8LJuzI/k+O+TRMzqhV7DDao
rnwCiyCZAoGBAPvTdXtLJrb6I2aBO2sRpX/W9+JQ2msB1xTaQ0ikkN8vRmIHuWUT
+MxZEZiIdeg6Rni4vHKUM6gLhiwOVQhY3WePdgKseIbweY3aIm5JwTBa7RF58tuZ
RWqh65pjbPnpCkNcWCS0MWz5IHwTyAyDByOma62n/Wd/5QhAmDngaq09AoGBAN+9
MoMFYG7KVNXaMpKC59AeqHqlC25AkkbazFOi364N6epf2QC0kKj66EELmrY2a/ru
mPCeZBODT/EoIgiDzr42zz//fo6TiqZz5fCdRmtUvfQSzf98XvkLfzFev+qOZdVJ
B3HW7TXP4bfH+L3s3PYQoBWxRTKanhUaXxX/FZU/AoGAdLw1fY38yF10A5Rsotlv
Sq+wAS1R0sDrnzL+dbIzpgIYMmE6Q+zaLIAtc/PuFFTPTi70zHh+6atN6yZJrLDl
EZijL+IbjRH0hxlTVKTD9VJxCuTo+3s1fpTIzqzAW6j3pPotsfYF42oo8NuKpKIo
sRH4YGu7QDs9RHINHuc1DFECgYEAqEF67AcuFwM3uz8FCyNAu0VjBCB8MSSEHJ7M
TBVPS3CROb1sztf7deiCou/cIC1bFPE7uLAUqIv2oW/B8E9XObq0Lvevr/8KpNTB
1iogW/T1iMhffEOGlJltxK3xe64srLHn1FeCOhakM3ZB/GpVXQLxsH6IgF7AhTQ4
z6zuCTcCgYBmpHNGQZRllSor25jO67gqcrDgQRYde8NXuP/bov9CktgEUXMcdlaR
sBmoA8Ll1xOe6ANR4TBT9s5llnxobIwnSnrVBxOaMEDhtp3BpiKoAGvQiZyrTLaT
jqtfT7AdP7+saij7LBdNXOCoQ9G8a42ieL5getRKZHvucxzb+OXDhw==
-----END RSA PRIVATE KEY-----

証明書の整合性

サーバー証明書、中間証明書、秘密鍵は、生成の段階でそれぞれ共通する内容が埋め込まれます。

生成の過程でミスがあった場合、サーバー証明書、中間証明書、秘密鍵において整合性がとれず、証明書設定時にエラーとなります。

証明書の発行元まで、サーバー証明書と中間証明書、サーバー証明書と秘密鍵の整合性に問題がないかご確認ください。

OpenSSL を利用可能な環境をお持ちの場合、以下のコマンドで整合性チェックが可能です。
各コマンドを実行し、出力された値がそれぞれ同じ場合には整合性がとれている状態です。

  • サーバー証明書と中間証明書の整合性チェック
    $ openssl x509 -issuer_hash -noout -in (サーバーパス + サーバー証明書ファイル)
    $ openssl x509 -subject_hash -noout -in (サーバーパス + 中間証明書ファイル)
    
  • サーバー証明書と秘密鍵の整合性チェック
    $ openssl x509 -noout -modulus -in (サーバーパス + サーバー証明書ファイル) | openssl md5
    $ openssl rsa -noout -modulus -in (サーバーパス + 秘密鍵ファイル) | openssl md5
    

■参考情報

サーバー証明書の有効期限は以下のコマンドで確認できます。
$ openssl x509 -noout -dates -in (サーバーパス + サーバー証明書ファイル)
サーバー証明書の内容全体を確認するコマンドは以下のとおりです。
$ openssl x509 -text -noout -in (サーバーパス + サーバー証明書ファイル)
Q&A検索