Mac OS X Lion にて、第4種オレオレ証明書を発行する
cd ~/.ssh /System/Library/OpenSSL/misc/CA.sh -newca /System/Library/OpenSSL/misc/CA.sh -newreq /System/Library/OpenSSL/misc/CA.sh -sign
-newca で作られた ~/.ssh/demoCA/cacert.pem を安全な経路でクライアントマシンにインストール。
Macの場合は「開く」でキーチェーンアクセスに取り込まれればOK. Winの場合はインターネットオプション>コンテンツ>証明書>証明書>インポート で、立ち上がるウィザード上で、「信頼されたルート証明機関」へインストール。
-newreq の common name 以外の質問はすべてデフォルトで良い。
最終的に newcert.pem と newkey.pem という2つのファイルが出来るので、それを http サーバに設定する。
ちなみに、stunnelで使う場合はこの2ファイルを繋げたファイルが必要となる。具体的には以下のようにする。
cat newcert.pem >> stunnel.pem echo >> stunnel.pem cat newkey.pem >> stunnel.pem chmod 400 stunnel.pem
(finkでstunnelを入れた場合) sudo /sw/bin/stunnel3 -f -d 443 -r 127.0.0.1:80 -p ~/.ssh/stunnel.pem
一度自分で自由になるCAを立ち上げてその証明書をインストールしておけば、別のサーバでサーバ証明書が必要になったときに再びCAを立ち上げる必要は無い。っていうか Common Name だけを該当ホスト名にして手元で証明書を作成してサインし、それをサーバに転送して apache なり stunnel なりに読ませればOK.