====== 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を入力し、表示したいサイトにアクセスします。\\ 正式に認証されている場合、特に警告等が表示されずにページが表示されます。\\ ブラウザのステータスバー(ブラウザにより異なる)に鍵マークがついている事を確認してください。\\ ※ブラウザの設定によってはステータスバーが非表示となっている場合があります。\\ 鍵マークをダブルクリックする事で証明書の内容を確認する事ができます。