154

OpenSSL 64 をインストールしました。nodejs https サーバーに証明書を使用したいと考えています。次のコマンドを実行しました。

openssl genrsa -out subdomain.domain.com.key 1024

しかし、私はエラーがあります:

WARNING: can't open config file: /usr/local/ssl/openssl.cnf
Loading 'screen' into random state - done
Generating RSA private key, 1024 bit long modulus
.........++++++
.........................................++++++
unable to write 'random state'
e is 65537 (0x10001)

どうすれば解決できますか?
これは正しいコマンドですか?

4

7 に答える 7

275

ソリューションは次のコマンドを実行しています。

set OPENSSL_CONF=C:\OpenSSL-Win32\bin\openssl.cfg   

また

set OPENSSL_CONF=[path-to-OpenSSL-install-dir]\bin\openssl.cfg

コマンドを使用する前に、コマンド プロンプトでopenssl

そのファイルopensslの場所を確実に知らせてください。.cfg

OPENSSL_CONFまたは、Windows 環境変数に同じ変数を設定することもできます。

注: これは、Shining Light Productions の OpenSSL バイナリ ディストリビューション(無料でダウンロードして使用できる公式 OpenSSL のコンパイル済み + インストーラー バージョン) を使用している場合に発生する可能性があります。このディストリビューションは、OpenSSL のサイトから「コンパイル済みの OpenSSL パッケージがないオペレーティング システム向けのサービス」として「半公式に」リンクされています。

于 2013-10-08T13:41:41.710 に答える
23

私はApache2.4.4でSSLを使用しており、最初にこのコードを実行すると、うまくいきました:
set OPENSSL_CONF=C:\wamp\bin\apache\Apache2.4.4\conf\openssl.cnf

次に、残りのコードを実行します..

于 2014-08-29T03:48:58.847 に答える
7

私の場合、Shining Light のバイナリを使用しましたが、環境変数は既に更新されています。しかし、昇格した特権でコマンド ウィンドウを実行するまでは、まだ問題がありました。

CMD ウィンドウを開くときは、必ず管理者として実行してください。(スタート メニューのコマンド プロンプトを右クリックし、[管理者として実行] を選択します)

ユーザーアカウント制御が原因でファイルを読み取れないと思います。

于 2015-07-10T15:38:44.717 に答える
5

解決!

-configパラメータの場所を正しく設定するだけです。

openssl ....................  -config C:\bin\apache\apache2.4.9\conf\openssl.cnf
于 2016-01-23T10:32:19.877 に答える
3

.cfg と .cnf の違いがわからない サーバーで .cfg または .cnf が見つかりませんでした同じファイル用の新しいファイルを作成し、次のフォルダーに配置しました/usr/local/ssl/bin

実行した

.\openssl genrsa -des3 -out <key name>.key 2048 

うまくいった..

于 2015-05-15T08:55:44.900 に答える