次のコマンドを実行して新しい秘密鍵を発行しようとしたとき、それを使用してSSL経由でWebアプリをホストしました。
openssl genrsa -out example.key 2048
次のエラーが発生しました:
unable to write 'random state'
e is 65537 (0x10001)
Webを調べたところ、 解決策 が見つかりました。これは、root
が所有していると思われる~/.rnd
ファイルを削除するように指示しています。
Sudo rm ~/.rnd
ただし、openssl
を指定してSudo
コマンドを発行した場合は、~/.rnd
を削除する必要がないことがわかりました。
だから私の質問は:
~/.rnd
とは何ですか。なぜ私の環境に存在するのですか?
新しい秘密鍵を発行するより良い方法はどれですか?
_~/.rnd
_ファイルは、_~/.rnd
_を非ログインモード(つまり、_-i
_なし)でSudoを介してroot
として変更するコマンドを実行したことがある場合、root
が所有します。 _~/.rnd
_ファイルについては、OpenSSL乱数ジェネレータのシード値が含まれています。私が見つけることができる最悪のドキュメントは the _Rand_read_file
_(3)man page です。