Firefoxを使ってWPA EnterpriseのためのCA/証明書を作る
※ 書きかけ
※ IA32、Linux/Windows以外では無理(extensionの都合)
とりあえずEAP-PEAPのためにサーバ証明書。EAP-TLSのためのクライアント証明書もほぼ同じ手順を繰り返せば作ることが出来る。
まず、この辺を読んでおく。同じ事をopensslコマンドの代わりにFirefoxのExtensionであるところのkey manager toolboxでやろうというのが趣旨。
基本概念
CA証明書 : 作成
CA証明書は基本的にいわゆるオレオレ証明書となる。なぜなら、CAの証明書は信頼性の起点で、CAに対する信頼はシステムの外で構築されるため。
- Firefoxの『ツール』からkey manager tool box→key managerを開く
- Generate Self-Signed Cert
- プロファイルとして、No Extensionを選ぶ
- First NameがCommonNameになることに注意しつつサブジェクトを埋める
- RSA、2048bitくらいにして、Sig AlgからSHA1を選ぶ。SHA256とかを選ぶとWindows XP以前のWindowsで使えない鍵が出来る
- Standard Extensionsから、
- Basic ConstraintsをActive、is CA (必須)
- Extended Key Usageから、Server Auth、Client Auth (ファイルxpextensionsに相当)
- 他はチェックしない
Generate Self-Signed Cert。
サーバ秘密鍵 : 作成
最初はオレオレ証明書を作り、CAによって箔を付ける。
作り方はほぼ同様。
Key Managerに表示されている鍵を何もクリックせずに(バックアップなどのボタンがグレーアウトしていることを確認して)、Generate Self-Signed CertからCAで作った鍵の手順を繰り返す。
ただし、
- CommonName(表示上firstname)をサーバのDNS名にする
- Basic Constraintsからis CAを外す
- Extended Key UsageからClient Authを外す
サーバ証明書 : 証明書のサイン
生成したサーバの自己署名証明書をクリックして、Sign (Proxy) Cert。これはProxy Certでないので、チェックボックスを外す。
以下の手順は何故か順番が重要。
欠点
- CRLが発行できない
- 要するに一度発行した証明書をRevokeできない
- 幾つかのCA動作をしないので、これは共有鍵と同程度の安全性しかない。鍵ファイルをコピーされたら終わる。