Certificate

暗号化通信のためにHTTPSを使いたいのですが、お金もないので自前の認証局を使おうかと思っています。このとき、自前の認証局で生成したサーバ証明書をネットワーク経由で安全に友人へ提供する方法がないか考えています。

自前の認証局を使って作成されたサーバ証明書は、USBメモリ経由などで安全に渡すことができれば、使うことができます。FireFoxの場合はサイト証明書としてインポートします。IEの場合はどうやらサイト証明書という考え方がないようなので、ちょっと難しいようです。PKIよくある勘違い(8)「自分専用なのに第三者から証明書を買えというのはおかしい」が参考になります。

これを何とかUSBメモリ経由ではなくてネットワークでやりたいところなのですが… 対象は小さな団体を考えています。

  • 全員SSHが使えるならpublic key を提出してもらって、サーバ証明書をおいたサーバへのSSHによるアクセスができるようにする。そして、そこからscp でサーバ証明書を持っていってもらう。この場合、ホスト名ではなくIPでSSHアクセスをしてもらうようにする。取得してもらったサーバ証明書はブラウザへインポートしてもらう。
  • HTTPSが使えるサイトを1つ用意する。これはベリサインなどから証明書を購入しておく。そのサーバを経由してサーバ証明書をダウンロードしてもらう。取得してもらったサーバ証明書はブラウザへインポートしてもらう。
  • PGPか何かを使って改竄されていないことを保証できるようにして、メールでサーバ証明書を送付する。受け取ったらSkypeなどで送付したかを確認してもらうよう、あらかじめ約束しておく。取得してもらったサーバ証明書はブラウザへインポートしてもらう。
  • HTTPSを使えるように設定をしておいて、IPアドレス指定でHTTPS経由でアクセスしてもらう。IPアドレス指定なので、使いたいサーバそのものなので、そこで警告ダイアログは表示されるが、そのまま信頼するにして、証明書をブラウザへインポートしてもらう。
  • PGPで暗号化したサーバ証明書をWebサイトからダウンロードしてもらって、ブラウザへ登録してもらう。WebサイトへのアクセスについてはIPアドレスでしてもらう。取得してもらったサーバ証明書はブラウザへインポートしてもらう。

なんかいい方法はないのでしょうか… 1, 2, 3 は面倒ですし、4 は警告ダイアログを無視させるというのが何となく嫌です。もしかして、5 がいいのかも。

同じカテゴリの記事: Linux