おのぶろぐ

完全に雑記

サイトをSSL化するためのSSL証明書の導入(CentOS)

SSL化が流行っているようですので書いておきますね。

 

作業の流れは

1.秘密鍵の作成
2.CSR作成-提出
3.CERT入手-apache設定

です。

 

 

1.秘密鍵の生成

openssl genrsa -[共通鍵暗号化方式]  [RSA鍵の長さ] >[生成する秘密鍵ファイル名]

openssl genrsa -aes256 2048 > server_sec.key

パスフレーズの入力を求められるので、任意のパスフレーズを入力する。
hogehoge

 

パーミッション(所有権)変更
chmod 400 server_sec.key

 

秘密鍵からパスフレーズを消去
mv server_sec.key server_sec.key.org

 

Apache起動のたびにパスワードを要求されないようにパスワード無しのファイルをを作っておく

openssl rsa -in [旧秘密鍵] > [秘密鍵]
openssl rsa -in server_sec.key.org > server_sec.key
パスフレーズの入力を求められるので、パスフレーズを入力する。

hogehoge

 

2.CSR作成(署名アルゴリズム:SHA2-256)

openssl req -new -sha256 -key [秘密鍵ファイル名] > [生成するCSRファイル名]
openssl req -new -sha256 -key server_sec.key > server.csr

質問/回答
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) :Tokyo
Locality Name (eg, city) [Default City]:Shibuya
Organization Name (eg, company) [Default Company Ltd]:company
Organizational Unit Name (eg, section)
:NA
Common Name (eg, your name or your server's hostname) :hogehoge.com
Email Address
:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password :
An optional company name
:

 

※Common Nameはちゃんと指定する

 

パーミッション(所有権)変更

chmod 400 server.csr

 

cat server.csr

-----BEGIN CERTIFICATE REQUEST-----

MIICpDCCAYwCAQAwXzELMAkGA1UEBhMCSlAxDjAMBgNVBAgMBVRva3lvMQ4wDAYD

vjTzXQ5HrGcOVhxqIsPbbExTTHN4lPqZ0iZkKgLMU2JRe9X4tKTo4ydh5jglStPD
/sRFHIGWIe8=
-----END CERTIFICATE REQUEST-----

 

上記を各種SSL業者に提出し、SSL証明書(CERT)を受け取る。

*業者例

簡単手続き・格安SSL証明書サービス SSLボックス

Domain Names - Cheap Domain Names | Namecheap.Com

 

ファイル移動

mv server_sec.key /etc/httpd/conf/cert/

 

 

3.CERT入手-apache設定

業者から受け取った証明書など

CERT(SSL証明書)

CORESSLxxxxx.cert

中間証明書
CORESSLxxxxxInt.cert

 

証明書置き場生成
mkdir -p /etc/httpd/conf/cert/

ファイル移動

mv CORESSL* /etc/httpd/conf/cert/

 

ssl.conf設定変更

 

SSLCertificateFile(SSLサーバ証明書
SSLCertificateKeyFile(秘密鍵
SSLCACertificateFile(中間証明書)
なので以下の通り

 

SSLCertificateFile /etc/httpd/conf/cert/CORESSLxxxxx.cert
SSLCertificateKeyFile /etc/httpd/conf/cert/server_sec.key
SSLCACertificateFile /etc/httpd/conf/cert/CORESSLxxxxxInt.cert

 

apache再起動

 

以上です。

 


SSLテストサイト。A-Fで評価が出る

SSL Server Test (Powered by Qualys SSL Labs)

SSL Analyzer and SSL Certificate Checker | COMODO

 

 

 

上記結果で良い評価を出すには

##追記(Virtualhost内へ)
SSLHonorCipherOrder ON
SSLCipherSuite EECDH+HIGH:EDH+HIGH:HIGH:MEDIUM:+3DES:!ADH:!RC4:!MD5:!aNULL:!eNULL:!SSLv2:!SSLv3:!LOW:!EXP:!PSK:!SRP:!DSS:!KRB5

など