dotjsのSSL証明書エラー

dotjs はブラウザでウェブページを開いたとき、ローカルに ~/.js/ドメイン名.js があれば、それを UserScript として挿入するソフトウェアです。UserScript を作るたびブラウザにインストールする必要がなくなるので、多用する人には便利なツールだと思います。

https://github.com/defunkt/dotjs

本題: HTTPS ページで dotjs を利用するとオレオレ証明書エラーになるので、通信許可の操作が必要です。これがマシンを再起動するたびに必要でとても苦痛だったので、ルート証明書を作って localhost を署名することにしました。

## 新しい認証局を作成
$ /System/Library/OpenSSL/misc/CA.sh -newca

## 作成された認証局のCA証明書をキーチェーンに追加
$ open demoCA/cacert.pem

## サーバ証明書を作成  注: Common Name を "localhost" にする
$ /System/Library/OpenSSL/misc/CA.sh -newreq

## 作成した認証局の秘密鍵で署名
$ /System/Library/OpenSSL/misc/CA.sh -sign

## nopassキーに変換
$ openssl rsa -in newkey.pem -out newkey.pem.nopass
$ cat newcert.pem newkey.pem.nopass

## dotjsデーモンのファイル末尾にある証明書情報を↑で cat した内容に書き換える
$ subl bin/djsd
$ rake uninstall
$ rake install

CA.sh の入力は、 -newreqCommon Name を除き適当でOK

before

f:id:Ajido:20130515031946p:plain

after

f:id:Ajido:20130515025837p:plain

エラーは回避できていない…!!!
けれど、これで毎回続行ボタンを押す必要はなくなります。

広告を非表示にする