maidsphere

A quantization noise whispers through the net.

SSL秘密鍵の復号

Apr 4, 2015 21:55:38 JST

一部のアプリケーションは秘密鍵が暗号化されていると正常に鍵を認識してくれない.

たとえば,Postfixの場合だと

みたいなエラーを吐く.

Dovecotだと

こんな感じ.

Apache HTTP ServerやDovecotは設定ファイルに秘密鍵のパスフレーズを入力するオプションがある.たとえばDovecotだとssl_key_passwordディレクティブがそれ. ただしこの場合,平文でパスフレーズ書いたファイルをどこかに置いておく必要がある.

でも,そんなことするぐらいなら秘密鍵を最初から復号しておいて,そのファイルのパーミッションにだけ気を配るようにした方が楽だと思う.

% openssl rsa -in private.key -out decrypted.key

あとは復号された秘密鍵のファイルdecrypted.keyを秘密鍵として渡してやるとよい.


ちなみに,秘密鍵が暗号化されてるかどうかは秘密鍵の先頭を見ればいい. 最初の2行が以下のようだったら暗号化されてる.

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED