<前の日記(2005年03月24日) 次の日記(2005年04月08日)> 最新 編集

高木浩光@自宅の日記

目次 はじめに 連絡先:blog@takagi-hiromitsu.jp
訪問者数 本日: 2421   昨日: 1295

2005年03月27日

PKIよくある勘違い(8)「自分専用なのに第三者から証明書を買えというのはおかしい」

PKIというよりSSLにある勘違いであるが、オレオレ証明書を使うべきでないという考え方が広まってくると、今度は、自分専用のサーバなのに、「オレオレ証明書じゃだめなのか?」と考えてしまい、「自分専用なのに何万円も払って証明書を買わないといけないなんてのは、どう考えてもおかしい! 何か間違ってる!」といった思考に至ることがありそうだ。

自分専用であればオレオレのサーバ証明書で運用してかまわない。ただし、ブラウザの警告を無視して「はい」を押してはいけない。「能動的な盗聴」の被害に遭うおそれがあるという点で、SSLの機能は完全には働かないからだ。

こういうとき、Webブラウザが Firefoxであれば、次の手順で設定することで、自作のサーバ証明書で正しく安全に運用できる。

まず、サーバに自作の証明書と秘密鍵をセットする。そして、その証明書を手作業で(ネットを使わずに)運んできて、ブラウザにインポートする。インポートの手順は以下の通り。

メニューから「オプション」を開き、「詳細」を選択して、「証明書マネージャ」ボタンを押す(図1)。

図1: 証明書マネージャ起動ボタン

証明書マネージャで、「サイト証明書」タブを選び、「インポート」ボタンを押す。

図2: サイト証明書ストアにインポート

ファイル選択ダイアログが現れるので、手作業で運んできた証明書ファイルを選んで開く。図3のようにインポートされる。

図3: インポートした直後の様子

インポートした項目を選択して「設定」ボタンを押すと、「サイト証明書に対する信頼性の設定」という設定ウィンドウが現れる。

図4: 「サイト証明書に対する信頼性の設定」画面

ここのデフォルトは「この証明書が本物であると信頼しない」になっているので、「信頼する」に変更して「OK」を押す(図4)。

これで、サーバにアクセスすると警告なしに正常に SSL接続される。

ここで重要なのは、インポート先が「認証局証明書」ではないということだ。自分で作ったオレオレ認証局証明書を「認証局証明書」ストアにインポートする方法でも、同様に正常なSSL接続を実現できるが、その設定をすると、万が一秘密鍵が流出したときに、あらゆるサイト(銀行とかネットショップとか)の偽証明書に騙される(もしくは能動的盗聴をされる)リスクが生じてしまう。それに対し、オレオレサーバ証明書を「サイト証明書」ストアに登録するこの方法であれば、万が一秘密鍵が流出しても、自分用のサーバへのアクセスにリスクが生じるだけで済む。

この方法が妥当なのは、自分ひとりで使うからだ。サーバに証明書を設定するのが自分であるなら、その証明書を運んでブラウザにインポートする作業の手間は問題にならない。

複数人で使う場合はどうか。全員に証明書を手渡しできるのであれば、この方法でもよいかもしれない。しかし、大規模な人数となってくると、手渡しにかかるコストが高くなり、商用認証局からサーバ証明書を購入して運用した方が安くなるだろう。

なお、インポートする前にサーバにアクセスしたときに出るブラウザの警告で、図5のように、「今後この証明書を受け入れる」を選ぶことで、上に書いた手順(サイト証明書ストアへインポートし、「この証明書が本物であると信頼する」を設定)と同じ設定になる。

図5: ネットワーク経由でインポートしようとしている様子

しかし、これは、信頼できない通信路のネットワーク経由で証明書を運んでいるのだから、もしこの時点で中間者攻撃を受けているのなら、将来にわたって攻撃され続けることになるので、避けるべきである。

そうした事態が発生している確率は小さいだろうという判断から、手抜きをして、図5の方法でインポートすることもアリかもしれないが、そのリスクを理解した上で行わなければならない。サーバをセットアップするような技術者が自分が使うためだけに行うのであればそれもよいだろうが、一般のユーザ向けに使わせるのであれば、図5の方法は避けるべきだ。意味も分からず何でも「今後受け入れる」を押すようになってしまうに違いない。それを避けるために、証明書を手渡しして、手作業でインポートし、設定させるのがよい。

ちなみに、ここまでの話はブラウザが Firefoxの場合であるが、Internet Explorerの場合はどうかというと、なんと、この機能が存在しないのだ。

図6: Internet Explorerの証明書マネージャ

図6のように、IEの証明書マネージャには、サイトを個別に受け入れるための証明書ストアが存在しない。

このことが、誤ったPKIの使い方を蔓延させるきっかけになったとも言える。IEでのアクセスを前提とすると、自作のサーバ証明書で運用しようとすれば、オレオレ認証局の証明書をルート認証局としてブラウザにインポートせざるを得なくなる。

どうしても、IEを前提としてオレオレ証明書で運用したいなら、次の方法がある。自作のサーバ証明書に自作の認証局で署名したら、署名した直後に認証局の秘密鍵を消去してしまうことだ。こうすることで、秘密鍵が流出したときのリスクが、上のFirefoxでサイト証明書にインポートするときと同じになる。

ただし、ルート証明書をインポートするというハイリスクな行為が普通のものだと麻痺させてしまうおそれがあるので、自分専用でない限り避けるべきだろう。

というわけで、自作証明書で運用したいなら、「Internet Explorerでのご利用はサポートしていません」とお断りしよう。

本日のTrackBacks(全2件) [TrackBack URL: http://takagi-hiromitsu.jp/diary/tb.rb/20050327]
検索

<前の日記(2005年03月24日) 次の日記(2005年04月08日)> 最新 編集

最近のタイトル

2024年11月11日

2024年07月28日

2024年07月27日

2024年07月07日

2024年04月07日

2024年04月01日

2024年03月23日

2024年03月19日

2024年03月16日

2024年03月13日

2024年03月11日

2023年03月27日

2022年12月30日

2022年12月25日

2022年06月09日

2022年04月01日

2022年01月19日

2021年12月26日

2021年10月06日

2021年08月23日

2021年07月12日

2020年09月14日

2020年08月01日

2019年10月05日

2019年08月03日

2019年07月08日

2019年06月25日

2019年06月09日

2019年05月19日

2019年05月12日

2019年03月19日

2019年03月16日

2019年03月09日

2019年03月07日

2019年02月19日

2019年02月11日

2018年12月26日

2018年10月31日

2018年06月17日

2018年06月10日

2018年05月19日

2018年05月04日

2018年03月07日

2017年12月29日

2017年10月29日

2017年10月22日

2017年07月22日

2017年06月04日

2017年05月13日

2017年05月05日

2017年04月08日

2017年03月10日

2017年03月05日

2017年02月18日

2017年01月08日

2017年01月04日

2016年12月30日

2016年12月04日

2016年11月29日

2016年11月23日

2016年11月05日

2016年10月25日

2016年10月10日

2016年08月23日

2016年07月23日

2016年07月16日

2016年07月02日

2016年06月12日

2016年06月03日

2016年04月23日

2016年04月06日

2016年03月27日

2016年03月14日

2016年03月06日

2016年02月24日

2016年02月20日

2016年02月11日

2016年02月05日

2016年01月31日

2015年12月12日

2015年12月06日

2015年11月23日

2015年11月21日

2015年11月07日

2015年10月20日

2015年07月02日

2015年06月14日

2015年03月15日

2015年03月10日

2015年03月08日

2015年01月05日

2014年12月27日

2014年11月12日

2014年09月07日

2014年07月18日

2014年04月23日

2014年04月22日

2000|01|
2003|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|05|06|07|08|09|10|11|12|
2012|02|03|04|05|06|07|08|09|
2013|01|02|03|04|05|06|07|
2014|01|04|07|09|11|12|
2015|01|03|06|07|10|11|12|
2016|01|02|03|04|06|07|08|10|11|12|
2017|01|02|03|04|05|06|07|10|12|
2018|03|05|06|10|12|
2019|02|03|05|06|07|08|10|
2020|08|09|
2021|07|08|10|12|
2022|01|04|06|12|
2023|03|
2024|03|04|07|11|
<前の日記(2005年03月24日) 次の日記(2005年04月08日)> 最新 編集