SSL証明書とは?CSR生成&さくらのSSL証明書発行例

SSLの導入にあたり、証明書類の設定など構築は自分、申込みは決済者もしくはお客様というように作業すること多いです。でも申込みを行う方はよくわからないです。その際に示すリンクがほしいなと思いました。

そこで、まずはSSL証明書とは何かの説明と実際にSSL証明書を発行する手続きの例をまとめることにしました。さくらでRapidSSLを申し込む場合はそのまま利用できる手順になっています。

特にわかりにくいCSRの生成やCSR情報の入力についても記述しておりますので、ご活用いただければと思います。

目次

1. SSL証明書とは?SSL通信に使うSSLサーバ証明書のこと

SSL証明書とは、SSL通信に使うSSLサーバ証明書のことです。Webサイトの身元の証明やSSLによる通信の暗号化に使われるデジタル証明書のことをいいます。このSSLサーバ証明書は認証局(CA:Certificate Authority)が発行します。

SSLとは?SSLという暗号化通信の方式のこと

SSLとは、SSLという暗号化通信の方式のことをいいます。

Secure Sockets Server Layerの頭文字をとった言い方で、米国のNetsape Communications社が開発した暗号化方式です。WebブラウザとWebサーバ間とでデータを安全にやり取りするための業界標準の通信手順(プロトコル)として使用されています。

なぜ、SSLが必要か?標準でhttp://~には脆弱性があるため

よくブログサイトのようなWebページにはSSLは必要ない、お問合せフォームなど個人情報や機密情報を送信するページのみSSLで暗号化すればよいと考えられがちです。

しかし、そもそもhttp://~に使われるTCP/IPという通信には、発信元アドレス偽装やパケットの暗号化機能が標準実装されていないなど脆弱性があります。TCP/IPを使用する場合は標準でこれらの対策が必要です。

http://~でWebページを表示するには、標準で①パケットの改ざんと②パケット盗聴の対策を行う必要があります。つまり、WebサイトでWebページを表示するにはSSLが必須です。もしSSLを導入しない場合は、①②を許容するということになります。

認証局(CA:Certificate Authority)とは

認証局(CA:Certificate Authority)とは、デジタル証明書を発行する機関のことです。

CAは、以下で導入するSSLサーバ証明書のように第三者機関として対外的な取引を行うパブリックCAと、特定の組織内などの閉じた環境でのみ機能するプライベートCAがあります。

覚えておきたいのは、ブラウザに認証機関の設定が組み込まれているかどうかという点です。ブラウザが認証機関にこのサーバは大丈夫ですか?と問い合わせて通信を行うのですが、そもそもブラウザが認証機関を知らないとエラーになってしまいます。特に携帯など古いブラウザは新しい認証期間を組み込んでいないケースが考えられ、SSL選びのポイントとなります。

2. RapidSSLの例

今回は、CentOS7のapacheでSSL評価A+にする設定手順の記事の補足という位置づけで、さくらインターネットでRapidSSLを申し込む手順を記事という前提があり、以下はRapidSSLの例を記載しています。

RapidSSLは、米国ジオトラスト社のRapidSSL事業部が提供するSSL証明書のことです。RapidSSLは、さくらの場合3年契約で3,456円と非常に格安です。SSLの強度は他と変わらないですし、No.1のシマンテックの子会社で信頼度も申し分ないです。組織証明やEV証明など考えない場合はこれで十分ということになります。

RapidSSLはサーバにメールサーバを構築して行う認証など必要なく、ホームページ公開サーバにファイルを配置してアクセス認証するだけで証明書が発行できます。さくらのVPS利用者など、さくらインターネットでRapidSSLを申し込む、このSSL導入のパターンは非常に簡単でSSLに不慣れな方にはお勧めです。

3. 発行に必要なCSRの生成

RapidSSLの申込みページで入力するCSRを生成します。CSRの生成は通常、構築を担当するSEが実施します。

作成したCSRのテキストの内容を申込みを行う決済者やお客様に提供してサーバ証明書(CA)を発行してもらいます。

CSRの生成は、以下のコマンドで証明書の情報を設定します。
RapidSSLの場合、ドメイン名と国くらいしか証明書に表示されないので、それ以外はエンターを入力して、デフォルトのままで特に問題ないです。

# openssl req -new -key <ドメイン名>.key -out <ドメイン名>.csr
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) []:
Locality Name (eg, city) [Default City]:Default City
Organization Name (eg, company) [Default Company Ltd]:Default Company Ltd
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:<ドメイン名>
Email Address []:<メールユーザ>@<ドメイン名>

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

Common Nameを間違えると該当ドメインでSSLが使えなくなるのでここは特に注意が必要です。

4. さくらでのSSL証明書発行の例

①「SSLサーバ証明書お申込み」にアクセスし、[ログイン画面へ進む]をクリック

URL)https://secure.sakura.ad.jp/signup3/ssl/member.html

sakura_ssl_ca_issuance-01

②ログイン

sakura_ssl_ca_issuance-02

③[サービス選択画面へ]をクリック

sakura_ssl_ca_issuance-03

④プラン・支払選択

プラン選択(新規取得、ラピッドSSL 3456円/3年)

sakura_ssl_ca_issuance-04

クレジットカード情報入力

sakura_ssl_ca_issuance-05

クーポンコードは未入力で、[同意する]にチェックを入れて、[CSRの入力へ進む]をクリック

sakura_ssl_ca_issuance-06

⑤CSR(証明書情報)の内容確認、CSR情報を入力し、[確認画面へ進む]をクリック

構築担当者に教えてもらったCSR情報を入力してください。
「>」をクリックして、コモンネームのドメイン名がSSL導入サイトのドメインであること。念のため確認します。

sakura_ssl_ca_issuance-07

⑥入力内容をご確認いただき、[この内容で申し込む]をクリック

sakura_ssl_ca_issuance-08

sakura_ssl_ca_issuance-10

以上で完了です。申込み完了の旨を構築担当に連絡します。

5. まとめとその後のSSL設定手順について

構築担当者が行うCSRの作成と、決済者もしくはお客様が行うSSLの証明書の発行手順をまとめました。さくらでRapidSSLを申し込む場合は、決済者もしくはお客様にリンクを示して依頼するときに使用していただければと思います。

CentOS7のapacheでSSL評価A+にする設定手順で、その後のRapidSSLの設定方法についてまとめています。構築担当者の方は参考にしていただければと思います。

更新履歴

  • 2016年07月19日 SSL証明書についての説明を追記しました。
  • 2016年06月09日 新規記事作成。CSR作成&申込み時の補足&さくらのSSL証明書発行の例を記載しました。

SNSでもご購読できます。