SSLをもっと知りたい!
SSLによる暗号化通信に関して、もっと理解を深めてもらうために、Q&A方式のコーナーを設けました。SSLに関する疑問点を徹底的に解消しましょう!
SSLに関するQ&A!
Q1. SSLの通信は本当に安全なの?
A1.?SSLでは、公開鍵暗号方式という方法が取られ、暗号化の強度も通常128bitでの通信が行われるため、相手との通信内容が盗聴される危険性はまずありません。 したがって、SSL通信で注意しなければならないのは、通信相手が本当に信用に足るかどうかです。 いくら、外部への盗聴を気にしていても、スパイを相手に情報を漏らしてはしょうがないということですね。 したがって、安全なSSL通信を行うためには、サーバ証明書はやはり必須といえます。 「SSLの通信は安全か?」という問いには、「サーバ証明書を利用した通信であれば安全である」ということが出来るでしょう。
Q2. SSLで暗号化されているかどうか、どうやって確認するの?
A2.
通信が暗号化されているかどうかの一番簡単な確認方法としては、ブラウザのアドレスバーの部分が以下のように 「https://」となっているかどうかでわかります。
また、ブラウザの種類によって多少異なりますが、以下のような鍵マークがブラウザの右下に表示されている場合にも 暗号化されていることがわかります。
Internet Explorer の場合
鍵の上にマウスを置くと以下のように表示されます
Q3. SSLの証明書は本当に正しいかどうか確認できる?
A3.
SSLサーバ証明書の確認は以下の方法で可能です。
Internet Explorer では、ブラウザの右下の鍵マークをダブルクリックすると、Webサーバの身元をあらわす デジタル証明書を確認できます。
詳細タブをクリックし、「サブジェクト」を選択すると、Webサーバ名と、その証明書の所有者情報を 参照することができます
- CN : サーバー名
- OU : 法人などの部署名
- O : 法人名
- L : 法人の住所(市区町村)
- S(ST) : 法人の住所(都道府県)
- C : 国名
Q4. SSLの認証機関って何?選ぶ際に注意する点は?
A4.
ブラウザでSSL接続をしようとしてアクセスしたとき、警告画面を表示させないで安全なサーバとして利用するためには、あらかじめブラウザに組み込まれたルート証明書の認証機関から発行された証明書が必要となります。
ベリサインなどの機関は、自身がルート証明書の認証機関となります。
また、ジオトラスト、ビートラステッドはそれぞれ、Equifax Secure Inc、GTE Corporationをルートの認証機関とする証明書を発行しますが、いずれもほとんどのブラウザで対応可能なものです。
上記以外の認証局を利用する場合には、サービスを提供したいブラウザの対応状況を事前に確認することをオススメします。
また、携帯に関しては、対応している場合としていない場合が分かれるので、携帯向けにサービスを提供する場合にも事前に確認をしましょう。
Q5. SSLの証明書をどうやってサーバに導入するの?
A5.
以下がSSLにサーバ証明書を導入するまでの流れです。
1.申請書類・CSRを用意して、申し込み
まず各サービス毎に必要な書類(印鑑証明書など)と、SSLを導入するサーバで作成したCSRを用意して、Web等で申し込みます。
(申請時に必要な書類)
- ドメインの(whois)に記載のあるメールアドレス
- 法人の場合: 登記簿謄本・印鑑証明など
- 個人事業主の場合: 個人事業開廃業届けなど(個人は、免許証等の公的な身分証明)
- サーバで生成した「CSR」
実際に必要な書類・データについては各社のサービス申し込み詳細で確認してください。
※CSRについては、「Q6.CSRって何?」を参照してください。
2.認証機関での審査
サイト証明書の発行期間は認証機関、サービスによりまちまちですが、数分?最大2週間かかるものもあります。
3.サイト証明書のファイルを認証機関から受け取る
メール等で、証明書ファイルを受け取ります。
4.サイト証明書をWebサーバにインストール
認証機関から受け取ったサイト証明書を、Webサーバにインストールします。
Q6. CSRって何?
A6.
CSRとは、Certificate Signing Requestの略で、サーバ証明書発行の際に必ず必要となります。
※証明書署名要求とも呼ばれます。
Webサーバ上で作成したCSRを、認証機関に提出すると、認証機関がこれに署名をして、サーバ証明書として発行されます。
CSRの中身は暗号化されたテキストファイルで、申請する団体(会社)の公開鍵、組織名、所在地、URL(サーバのアドレス)等の内容を含んでいます。
CSRは、秘密鍵と、上記の情報を含んで作成しますので、他の誰かがこれを偽造することはできません。
CSR作成に利用した秘密鍵は必ず大切に保管する必要があります。
Q7. CSRはどうやって作るの?
A7.
さて、SSL証明書発行に必要なCSRはどうやって作れば良いのでしょうか?
実は利用しているサーバによって、作成する方法は違います。詳細は認証機関のサポート窓口に相談するのが一番です。
ここでは参考までに、Apache + OpenSSLの場合のCSRの作り方について解説します。
CSR作成手順
1. サーバ上にOpenSSLをインストールします(ない場合のみ)
2. 鍵とCSRを作成するために、まず以下のコマンドでディレクトリを移動します。
cd /usr/local/apache/conf/ssl.key
3.以下のコマンドで秘密鍵を作成します。(パスフレーズの入力を促されます)
openssl genrsa -des3 -out DOMAINNAME.key 1024
※パスフレーズはしっかり覚えておいてください!
上記のようにパスフレーズを決めると安全性は高まりますが、サーバの起動時にパスフレーズを毎回きかれます。
これが嫌であれば、以下のようにパスフレーズなしの秘密鍵も作成可能です。
openssl genrsa -out DOMAINNAME.key 1024
4.次に作成した秘密鍵を使って、CSRを生成します。
openssl req -new -key DOMAINNAME.key -out DOMAINNAME.csr
以下の情報の入力を求められますので、例に従って入力します。
Common Name
→Webサーバのホスト名(FQDN) 例:www.sslstudy.com
Organization
→組織の法律上の正式名称 例:SSLstudy Japan
Organization Unit
→部署名 例:Sales
City or Locality
→所在地(市区町村) 例: Shibuya-ku
State or Province
→所在地(都道府県) 例:Tokyo
Country
→国をあらわす2文字のISO略語 例:JP
5.extraattributes(拡張フィールド)を入力するように促されますが、ここには何も入力せず、Enterを押します。
6.DOMAINNAME.csrという、CSRが生成されますので、これを認証局へ送付します。
(送付方法については、各認証機関の申請方法を参照してください)
Q8. SSL対応のショップを運営したいのですが?
A8.
自宅・自社でサーバを持っている方は、Q5?Q7を参照してください。
自宅・自社サーバを持っていなくても、SSLに対応したレンタルサーバを借りることで、SSL対応ショップを構築することができます。
SSLが利用できるレンタルサーバは以下を参照してください。
Q9. オレオレ証明書とは?
A9.
オレオレ証明書とは、オレオレ詐欺と同等の証明書だと思ってください。
証明書を使ったPKIの仕組み自体はオープンなものなので、実は誰でもSSLで利用するサーバ証明書を発行することは可能なんです。
でも、信頼できる認証機関から発行されていない証明書(=ブラウザが知らない)が渡されると、ブラウザは警告画面を出します。
このような信頼できない証明書のことが「オレオレ証明書」と呼ばれたりすることがあります。
よく、個人のWebショップなどで、「警告が表示されますが、無視してください」などと主張しているWebサイトがありますが、これらは電話口で「オレだよ、オレ。」と言っているオレオレ詐欺と同等の行為ですので、全く信頼できるものではないです。
したがって、オレオレ詐欺の烙印を押されないためにも、Webサーバには信頼できるサーバ証明書を導入しましょう。
Q10. どの証明書を選べばいいの?発行機関の選び方を教えてください。
A10.
実際にどこの認証局、サービスを選択するかについてはいくつかの判断基準があるかと思います。
サービス提供を考えているブラウザの対応状況
利用するユーザがInternet Explorerしか使わないのか、それともOperaやFireFoxなど幅広いブラウザに対してもサービスを提供したいのかによって、どのサービスを利用するかが変わってきます。
ブラウザ対応状況をきちんと確認しましょう。
携帯への対応状況
携帯向けのサイトを作るのかどうかも重要です。
サービスによっては、携帯への対応が全然ない場合もありますので、携帯サイトを用意するときは注意する必要があります。
フィッシング詐欺への対策
例えばオンラインで数分で出来るタイプのサーバ証明書の多くは、Webサイトを運営する企業の実在の証明までは通常行いません。
簡易証明書を持つフィッシングサイトも出現してきましたので、より信頼度を追求するのであれば、企業の実在証明が行えるタイプのものを利用することをおすすめします。
価格とサポート
やはり価格は重要ですが、サポート面なども考慮した上で検討するべきでしょう。
安い証明書なども多数存在しますが、実際に求めるサポートレベルに達しているかを見て判断した方が後々のトラブルを防ぐことができます。証明書を使ったPKIの仕組み自体はオープンなものなので、実は誰でもSSLで利用するサーバ証明書を発行することは可能なんです。
その他、私が独断と偏見でレビューした以下の内容も参考にしてください。
また、もっとSSL証明書について知りたい方は、以下の記事も参考にすると良いと思います。
(キーマンズネットは無料なので登録しておいて損はないです)