GogetsslでRapidSSLを買ってるけど、いつも設定に躓くのでメモ。
購入は、シングルドメインだと3年で2,500円前後。
ワイルドカードだと3年で28,000円前後。
※2016年3月12日現在
購入
シングルドメイン
https://my.gogetssl.com/en/order/31
ワイルドカード
https://my.gogetssl.com/en/order/32
決済権限のある担当に、上記から決済までしてもらう。
証明書作成
決済のみ実施後の状態 (シングルドメイン3年時)
|
次に、上部「Generate Certificate」からサーバーの鍵を設定します。
|
「Online CSR Generator」でCSR 1 を作れるけど、Private keyをネットでやり取りするのは危なっかしいので実装するサーバーで鍵を作ります。
参照元: https://www.geotrust.co.jp/support/ssl/csr/apache_openssl_new.html
※大本: https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO13985
# 擬似乱数の情報の生成 (ファイルの数もバージョンもそれぞれだよねの意)
[user@server]$ sudo openssl sha256 /usr/bin/* > /tmp/rand.dat
# サーバーの秘密鍵を作成(パスワードなし) ※RapidSSLでは楕円曲線暗号に未対応
[user@server]$ openssl genrsa -rand /tmp/rand.dat -out /etc/pki/tls/private/hoge-server.pkey 2048
# 3年間有効なCSRを作成 #365(日) * 3(年) + 1(うるう用) = 1096
[user@server]$ openssl req -new -key /etc/pki/tls/private/hoge-server.pkey -nodes -out /etc/pki/tls/certs/fuga.hogehoge.com.csr -days 1096
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:Shibuya-city
Organization Name (eg, company) [Default Company Ltd]:HogeHoge Co.,Ltd.
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:fuga.hogehoge.com
Email Address []:webmaster@hogehoge.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
# ファイル権限変更
[user@server]$ chmod 400 /etc/pki/tls/private/hoge-server.pkey
[user@server]$ cat /etc/pki/tls/certs/fuga.hogehoge.com.csr
-----BEGIN CERTIFICATE REQUEST-----
MIIBijCCARECAQAwgZExCzAJBgNVBAYTAkpQMQ4wDAYDVQQIDAVUb2t5bzEVMBMG
A1UEBwwMU2hpYnV5YS1jaXR5MRkwFwYDVQQKDBBRaVRIUkVFIENvLixMdGQuMRww
GgYDVQQDDBNpb3QtYXBwLmNvb2xxb28uY29tMSIwIAYJKoZIhvcNAQkBFhN3ZWJt
YXN0ZXJAcWkzLmNvLmpwMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEPBh7Q4YcEOgK
Dshdq7biYn2d4qd+1T81bZrsqCpsSeYjEFPGp5vGmhXXwfR3aoxD3wW5TFJfk2e5
d+h6A/qImgz2oRcKSpZseu7PMvPIeeWU1C0crA7AICAmJvxZSVTMoAAwCQYHKoZI
zj0EAQNoADBlAjEA2PMH4EuQ5Rtic7CHTgvJ50m8lsC6FxyNqTICFS3rHEufiydB
IM0cVpWlUARi/XQ2AjBM9wtAcHzLuAyIR0exX9brP+U70bYyfoP1BocHVm9YPLGP
yiGdyET/B3wPpQaGXlA=
-----END CERTIFICATE REQUEST-----
最後のCSRの-----BEGIN CERTIFICATE REQUEST-----から
-----END CERTIFICATE REQUEST-----も含めて「Paste your CSR」へ貼り付け。
「Validate CSR」で次へ。
|
証明書の受け取りに
指定のドメイン、またはFQDNのメールアドレスが必要になります。
受け取るメールアドレスを選択し「Next step」で次へ。
| user | ドメイン | FQDN |
|---|---|---|
| admin | @hogehoge.com | @fuga.hogehoge.com |
| administrator | 〃 | 〃 |
| hostmaster | 〃 | 〃 |
| postmaster | 〃 | 〃 |
| webmaster | 〃 | 〃 |
|
うちの場合は「Same as administrative contact」のチェックを外して、管理者と技術担当を別にしてます。
「Subscriber Agreement」をよく読んだら
「I agree to the Terms and Conditions」にチェックを入れて「Complete Generation」で発行
中間CA証明書
https://www.geotrust.co.jp/resources/rapidssl/repository/intermediate.html
-----BEGIN CERTIFICATE-----
MIIETTCCAzWgAwIBAgIDAjpxMA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNVBAYTAlVT
MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
YWwgQ0EwHhcNMTMxMjExMjM0NTUxWhcNMjIwNTIwMjM0NTUxWjBCMQswCQYDVQQG
EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSUmFwaWRTU0wg
U0hBMjU2IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1jBEgEu
l9h9GKrIwuWF4hdsYC7JjTEFORoGmFbdVNcRjFlbPbFUrkshhTIWX1SG5tmx2GCJ
a1i+ctqgAEJ2sSdZTM3jutRc2aZ/uyt11UZEvexAXFm33Vmf8Wr3BvzWLxmKlRK6
msrVMNI4/Bk7WxU7NtBDTdFlodSLwWBBs9ZwF8w5wJwMoD23ESJOztmpetIqYpyg
C04q18NhWoXdXBC5VD0tA/hJ8LySt7ecMcfpuKqCCwW5Mc0IW7siC/acjopVHHZD
dvDibvDfqCl158ikh4tq8bsIyTYYZe5QQ7hdctUoOeFTPiUs2itP3YqeUFDgb5rE
1RkmiQF1cwmbOwIDAQABo4IBSjCCAUYwHwYDVR0jBBgwFoAUwHqYaI2J+6sFZAwR
fap9ZbjKzE4wHQYDVR0OBBYEFJfCJ1CewsnsDIgyyHyt4qYBT9pvMBIGA1UdEwEB
/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMDYGA1UdHwQvMC0wK6ApoCeGJWh0
dHA6Ly9nMS5zeW1jYi5jb20vY3Jscy9ndGdsb2JhbC5jcmwwLwYIKwYBBQUHAQEE
IzAhMB8GCCsGAQUFBzABhhNodHRwOi8vZzIuc3ltY2IuY29tMEwGA1UdIARFMEMw
QQYKYIZIAYb4RQEHNjAzMDEGCCsGAQUFBwIBFiVodHRwOi8vd3d3Lmdlb3RydXN0
LmNvbS9yZXNvdXJjZXMvY3BzMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTeW1h
bnRlY1BLSS0xLTU2OTANBgkqhkiG9w0BAQsFAAOCAQEANevhiyBWlLp6vXmp9uP+
bji0MsGj21hWID59xzqxZ2nVeRQb9vrsYPJ5zQoMYIp0TKOTKqDwUX/N6fmS/Zar
RfViPT9gRlATPSATGC6URq7VIf5Dockj/lPEvxrYrDrK3maXI67T30pNcx9vMaJR
BBZqAOv5jUOB8FChH6bKOvMoPF9RrNcKRXdLDlJiG9g4UaCSLT+Qbsh+QJ8gRhVd
4FB84XavXu0R0y8TubglpK9YCa81tGJUheNI3rzSkHp6pIQNo0LyUcDUrVNlXWz4
Px8G8k/Ll6BKWcZ40egDuYVtLLrhX7atKz4lecWLVtXjCYDqwSfC2Q7sRwrp0Mr8
2A==
-----END CERTIFICATE-----
クロスルート証明書と中間CA証明書が結合したファイルが送られてくるが
クロスルート証明書含めない状態で/etc/pki/CA/certs/rapidssl-bundleに保存
※昔は必要だったため名残だと思います。
<VirtualHost *:443>
DocumentRoot /var/local/www/fuga.hogehoge.com/public_root
ServerName fuga.hogehoge.com
ErrorLog /var/log/httpd/fuga.hogehoge.com-ssl_error.log
LogLevel warn
SSLEngine on
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains"
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite DEFAULT:!EXP:!SSLv2:!DES:!IDEA:!SEED:+3DES:!RC4
SSLCertificateFile /etc/pki/CA/private/fuga.hogehoge.com-gogetssl.crt
SSLCertificateKeyFile /etc/pki/tls/private/hoge-server.pkey
SSLCertificateChainFile /etc/pki/CA/certs/rapidssl-bundle
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog /var/log/httpd/fuga.hogehoge.com-ssl_access.log common
</VirtualHost>
SSLCipherSuite SSLCipherSuiteあたりは自己責任でお願いします。
-
証明書発行要求(CSR : Certificate Signing Request) ↩