====== SSL認証 ======
SSL証明書を取得し、新規でインストールする為の手順となります。
===== CSR生成 =====
以下の環境を前提として説明を記述します。
環境に合わせて読み替えてご覧ください。
|コモンネーム |example.com |
|Apache設定ファイルまでのパス |/opt/csw/apache2/etc/ |
|秘密鍵の保存ディレクトリ |/opt/csw/apache2/etc/ssl.key/|
|CSRの保存ディレクトリ |/opt/csw/apache2/etc/ssl.csr/|
|秘密鍵のファイル名 |ssl.example.com.key |
|CSRファイル名 |ssl.example.com.csr |
==== ディレクトリ作成 ====
$ su
# cd /opt/csw/apache2/etc
# mkdir ssl.key
# mkdir ssl.csr
==== 秘密鍵の生成 ====
# openssl genrsa -des3 -out ./ssl.key/ssl.example.com.key 1024
以下のログが表示されます。
Generating RSA private key, 1024 bit long modulus
...........................++++++
.++++++
e is 65537 (0x10001)
Enter pass phrase for ./ssl.key/ssl.example.com.key:
Verifying - Enter pass phrase for ./ssl.key/ssl.example.com.key:
ssl.example.com.keyが作成された事を確認します。
# ls ssl.key
ssl.example.com.key
==== CSRの生成 ====
# openssl req -new -key ./ssl.key/ssl.example.com.key -out ./ssl.csr/ssl.example.com.csr
以下のようなログが出力され、対話形式で情報入力を求められます。
Enter pass phrase for ./ssl.key/ssl.example.com.key:
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) []:JP
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) []:Koto-ku
Organization Name (eg, company) []:Netcube
Organizational Unit Name (eg, section) []:-
Common Name (eg, YOUR name) []:example.com
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
^フィールド ^内容^例^
|Country Name |国を示す2文字のISO略語 日本の場合はJPと記入 |JP |
|State or Province Name |組織が置かれている都道府県 |Tokyo |
|Locality Name |組織が置かれている市区町村 |koto-ku |
|Organization Name |組織の名称 |Netcube.inc|
|Organization Unit Name |組織の部署名 指定が無い場合はハイフンを入力 |- |
|Common Name |ウェブサーバのFQDN |example.com|
|Email Addres |E-mailアドレス |入力不要 |
|A challenge password |Apache起動時に求められるパスワード |入力不要 |
|An optional company name|会社の別名表記、略称 |入力不要 |
==== CSRの確認 ====
# cat ssl.csr/ssl.example.com.csr
SSL証明書の発行をする際に必要となります。
破線も含めてコピーし、申請の際に利用します。
※下記のCSRは参考です。
-----BEGIN CERTIFICATE REQUEST-----
MIIBsDCCARkCAQAwcDELMAkGA1UEBhMCSlAxDjAMBgNVBAgTBVRva3lvMRAwDgYD
VQQHEwdLb3RvLWt1MRAwDgYDVQQKEwdOZXRjdWJlMQowCAYDVQQLEwEtMSEwHwYD
VQQDExh3YXRhbmFiZS56b25lLWV4cHJlc3MuanAwgZ8wDQYJKoZIhvcNAQEBBQAD
gY0AMIGJAoGBabczBGH4Onvb/I57swKy65W3L70zgzp6WE5tB0t0Z1QtgcBOOL+n
kZ63DNEhtCbIuVBQEOm2FjY5wKO6bEtR39llxyz1r0n3sPK62f0zX49AFBB7XFYF
MeFHUSpGDPlKJQf/pEzidw82q01zNzwiPhtVmX/neVS99Sd4/9lab12dAgMBAAGg
ADANBgkqhkiG123BAQUFAAOBgQBipKldWJ/gZx5gcJvE3fyQh5joAeCVsdHpXVo0
mbwo8hy1aWG1oNNMhLCHLgArrdWZwXqEzulsw0Jgj2TWdgupG1iBkKh0A0LdiUEs
C46Wv7keV7XrKerD7Ea9vvjZB39pxNeMlu3WHjUB+8JxD+J6Z+6WCZ1H62MGueC3
gUtT/Q==
-----END CERTIFICATE REQUEST-----
===== SSL証明書の発行 =====
SSL証明書発行の手続きをSSL証明書発行会社で行ってください。
===== SSL証明書インストール =====
以下の環境を前提として説明を記述します。
環境に合わせて読み替えてご覧ください。
|コモンネーム |example.com |
|Apache設定ファイルまでのパス |/opt/csw/apache2/etc/ |
|SSL設定用confファイル |/opt/csw/apache2/etc/extra/ssl.conf|
|証明書の保存ディレクトリ |/opt/csw/apache2/etc/ssl.crt/ |
|サーバ証明書ファイル名 |ssl.example.com.crt |
|中間証明書ファイル名 |dvcacert.cer |
==== ディレクトリ作成 ====
# cd /opt/csw/apache2/etc
# mkdir ssl.crt
==== 証明書保存 ====
SSL発行会社より、発行されたSSL証明書をコピーし
/opt/csw/apache2/etc/ssl.crt/にssl.example.com.crtとして保存します。
# cd mkdir ssl.crt
# vi ssl.example.com.crt
発行されたSSL証明書をssl.example.com.crtに書き込みます。
==== 中間証明書の保存 ====
SSL発行会社より提示された中間証明書を
/opt/csw/apache2/etc/ssl.crt/に dvcacert.cerとして保存します。
# vi dvcacert.cer
==== 秘密鍵のパスフレーズを解除 ====
# cd /opt/csw/apache2/etc/ssl.key
# mv ssl.example.key ssl.example.key.org
# openssl rsa -in ssl.example.key -out ssl.example.key
==== Apacheの設定ファイル変更 ====
# cd /opt/csw/apache2/etc/extra/
# vi ssl.conf
下記の記述をssl.confに追記してください。
DocumentRoot "/opt/csw/apache2/share/htdocs"
ServerName example.com
SSLEngine on
SSLCertificateChainFile /opt/csw/apache2/etc/ssl.crt/dvcacert.cer
SSLCertificateFile /opt/csw/apache2/etc/ssl.crt/ssl.example.crt
SSLCertificateKeyFile /opt/csw/apache2/etc/ssl.key/ssl.example.key
==== Apacheの再起動 ====
Apacheの再起動
# svcadm restart http
エラー確認
# svcs -xv
何も表示されない事を確認。
プロセス確認
# ps -ef | grep http
httpdが起動している事を確認。
===== サイト確認 =====
アドレスバーにhttpsでURLを入力し、表示したいサイトにアクセスします。\\
正式に認証されている場合、特に警告等が表示されずにページが表示されます。\\
ブラウザのステータスバー(ブラウザにより異なる)に鍵マークがついている事を確認してください。\\
※ブラウザの設定によってはステータスバーが非表示となっている場合があります。\\
鍵マークをダブルクリックする事で証明書の内容を確認する事ができます。