HTTPS通信を行うためには、SSL証明書をサーバに実装する必要があります。SSL証明書の実装を行うことで、通信はすべて暗号化されデータのやり取りが安全になります。
今回は、さくらSSL証明書を購入して、他のホスティングサービスのVPS上のブログにSSL証明書を実装する方法について説明します。
ブログを含むWebサイトのURLは、HTTPS通信が一般的です。インターネットの世界では、通信の傍受、中間攻撃、改ざんなどの攻撃が、通信が暗号化されていないという理由で攻撃対象となります。
具体的な手順は以下のとおりです。
- さくらインターネットのWebサイトにアクセスし、SSL証明書の購入画面に進みます。
- 必要な情報を入力し、購入手続きを行います。
- 購入したSSL証明書がメールで届きます。
- 届いたメールに記載されている情報を元に、SSL証明書をサーバにインストールします。
- インストールが完了したら、WebブラウザーでWebサイトにアクセスして、HTTPS通信が正常に行われていることを確認します。
上記の手順に従って、SSL証明書をサーバにインストールすることで、HTTPS通信を実現します。
HTTPS通信を行うことで、通信はすべて暗号化され、データのやり取りが安全になります。
お名前.com とかの任意のVPSに対応した内容になります。
SSL証明書購入前の準備について
ドメイン名をすでに取得し、すでにウェブサーバを稼働されている方を対象としています。
事前に準備する物は CSR(Certificate Signing Request)です。日本語では、署名要求と呼ばれます。
CSRは、ウェブサーバの公開鍵と、ドメイン名の所有者情報を組み合わせて作成します。
詳細な内容について追記します。
CSR(Certificate Signing Request)は、SSL/TLS証明書を取得するために必要な情報を含んだファイルです。
CSRには、ドメイン名・組織名・住所などの情報が含まれています。
証明書発行局(Certificate Authority)にCSRを提出することで、信頼されたSSL/TLS証明書を取得することができます。
ドメイン名を取得されていない場合は、まずは「お名前.com」などのレジストラでドメインを取得してください。
ドメインを取得したら、Wordpressなどウェブサーバをインストールしドメイン名を設定してください。
ドメイン登録のリンク
- お名前.com
※最安値でドメインが取得できます。取得ドメインの数が豊富です。 - さくらインターネット
※企業向けドメインが豊富。サポートも充実しています。
CSR(Certificate Signing Request)の作成
ターミナルソフトからVPSにSSH接続し、以下のコマンドを実行します。
2048 ビットの RSA 鍵ペアを生成します。キーフレーズを入力してください。
openssl genrsa -aes256 2048 ><任意の名前>.key |
Enter pass phrase: | キーフレーズを入力してください。鍵のパスワードのようなものです。 |
Verifying – Enter pass phrase: | 確認用に キーフレーズを入力してください。 |
[<任意の名前>.csr] という名前でCSRを作成する。コマンド実行するといくつかの質問事項が表示されますので、CSR作成に必要な事項を入力します。
openssl req -new -key <任意の名前>.key -out <任意の名前>.csr -sha256 |
表示内容 | 設定値 | 説明 |
---|---|---|
Enter pass phrase for <任意の名前>.key: | 先ほどのキーフレーズを入力してください。 | |
Country Name [XX]: | JP | “JP” を入力 |
State or Province Name []: | Osaka | 都道府県を入力 |
Locality Name [Default City]: | Osaka-shi | 市町村名 を入力 |
Organization Name [Default Company Ltd]: | 組織名を入力。個人では空白でよいでしょう。 | |
Common Name []: | ○○○.com | 証明書実装するドメイン名を入力します |
Email Address []: | 空白にします。入力しないでください! | |
A challenge password []: | 空白にします。入力しないでください! | |
Organizational Unit Name []: | 空白にします。入力しないでください! | |
An optional company name []: | 空白にします。入力しないでください! |
以下のコマンドを実行し、CSR内容を確認します。
openssl req -noout -text -in <任意の名前>.csr |
keyファイルとcsrファイルは重要なファイルなので、無くさないよう厳重管理してください。
さくらのSSL証明書を申し込む
CSR作成後、さくらインターネットのサイトへアクセスします。(https://www.sakura.ne.jp/)
「SSLサーバ証明書」と記載されたリンクより、サーバ証明書のページへ遷移します。証明書の種類がいろいろありますが、今回「JPRS ドメイン認証型」証明書を申し込みます。
プラン選択画面で、お申込み種別は「新規取得」、お申し込みプランから「JPRS ドメイン認証型」を選択します。※1
※1 「JPRS ドメイン認証型」はホスト名1つに対してのSSL証明書となります。「メイン認証型ワイルドカード」は、サブドメインもすべて網羅できる証明書となります。
サブドメインとは、ドメイン名”○○○.com” に “△△△.○○○.com” のようにしてドメインを区分けすることです。
CSRの内容確認ページが表示されましたら、先ほど作成したCSRファイルをメモ帳などのテキストエディターで開き、”—–BEGIN CERTIFICATE REQUEST—–” から “—–END CERTIFICATE REQUEST—–” までをすべて選択し、貼り付けます。
これで申し込みできました。「SSLサーバ証明書 認証ファイルのアップロードのお願い」メールが来るまで待ちます。
ドメインのネームサーバを設定する
ドメイン名を取得したレジストラで設定しているネームサーバ設定に「さくらのネームサーバを追加」しておくことが必要です。
お名前.com を例にします。
管理画面(お名前.com Navi )にログインし、[ネームサーバの変更] から「他のネームサーバを利用」にチェックを入れます。そうすると、お名前.comネームサーバが表示されますので、その下にさくらのネームサーバ2つ(ns1.dns.ne.jp, ns2.dns.ne.jp)を追加します。
認証ファイルをアップロードする
さくらの会員ページにログインし、[会員メニュートップ ]> [契約情報] > [契約サービス一覧-表示] を表示します。SSL証明書申し込みしている該当サービスの「サーバ証明書」ボタンをクリックしてダウンロードします。
認証ファイル([ランダムな文字列].txt )は、FQDN(○○○.com)配下の指定ディレクトリへアップロードします。
指定のディレクトリは、”○○○.com/.well-known/pki-validation/” となりますので、SCPなどで接続し、予めディレクトリを作成すると良いでしょう。
pki-validationディレクトリへ認証ファイルを保存します。
ブラウザーで “http://○○○.com/.well-known/pki-validation/[ランダムな文字列].txt” とアクセスしテキストファイルが表示されたら、さくらの認証局が確認するのを待ちます。
サーバ証明書ファイル・中間証明書ファイル実装
さくらの会員ページにログインし、[会員メニュートップ ]> [契約情報] > [契約サービス一覧-表示] を表示します。SSL証明書申し込みしている該当サービスの「サーバ証明書」ボタンをクリックして「サーバ証明書」ファイルをダウンロードします。
次にJPRSの「中間 CA 証明書」をダウンロードします。
https://jprs.jp/pubcert/info/intermediate/
「鍵ファイル」、「サーバ証明書ファイル」「中間 CA 証明書ファイル」の3つがそろったら、SCPなどでサーバへアップロードします。
Apache 2.x系ですと、
/etc/httpd/conf/ssl.crt/ とかに保存しておくと良いでしょう
SSL証明書実装
そろそろ最後の仕上げにSSL実装していきましょう。
VPSにターミナル接続し、httpd.conf を確認してみます。
Apacheでは以下の3つのモジュール読み込みが必要です。
- LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
- LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
- LoadModule ssl_module modules/mod_ssl.so
行頭に”#”文字がある場合は、”#”を削除し有効化します。
SSL実装には、他のconfをロードしてますので、記載のファイルを開きます。
下記例ですと、httpd-ssl.confファイルを開き、以下の3行を探します。
- SSLCertificateFile
- SSLCertificateKeyFile
- SSLCACertificateFile
それぞれの行に保存したファイルを指定します。以下は例ですのでhttpdおよび証明書ファイルのあるディレクトリに読み替えてください。
※本記載は、Apacheサーバ2.2~2.4.7までの記載となります。
●鍵ファイル
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/server.key |
●サーバ証明書ファイル
SSLCertificateFile /etc/httpd/conf/ssl.crt/server.crt |
●中間証明書
SSLCertificateChainFile /etc/httpd/conf/ssl.crt/ca.crt |
httpd-ssl.confファイルを上書きしたら、Apacheのサービスを再起動します。
systemctl restart httpd.service |
サービスが正常に稼働したら、ブログ・WEBサーバにHTTPS通信してみましょう。
ブラウザで鍵マークがついていれば、HTTPS化が成功しています。
ドメイン登録のリンク
- お名前.com ※最安値でドメインが取得できます。取得ドメインの数が豊富です。
- さくらインターネット ※企業向けドメインが豊富。サポートも充実しています。
さくらのVPS 特徴
さくらのVPSは、
- 2週間無料お試し付き
- オンラインサインアップで即利用できる
- OS再インストールやコンソール作業もブラウザ上で簡単にできる
- 安心のサポート体制 :メール・電話での無料サポートのほか、サポートWebサイトなども用意
さくらのVPSは、使いやすく、安心して使えるVPSサービスです。VPSを検討されている方は、ぜひさくらのVPSを試してみてください。
お名前.com レンタルサーバー特徴
- 初期費用は無料で、月額料金も最大2ヶ月無料。
- 独自ドメインと同時に申し込むと、初年度のドメイン登録料が実質0円
- WEB、メール、データベースのデータを14日間無料でバックアップ。
- アカウントごとに機能の利用制限が可能
- お名前.comのドメインとシームレスに連携可能
- 使いやすいコントロールパネル提供
- 24時間365日の電話サポート窓口があります。
高速で安定した動作、抜群のコストパフォーマンス、法人向け機能の充実、お名前.comのドメインとのの高い親和性、使いやすいコントロールパネル、充実のサポート体制を備えたレンタルサーバーです。
法人のウェブサイトやシステムの運営に最適です。