Apache用の自己署名SSL証明書を生成する


10

Webサイト用の自己署名証明書を作成したい。古い証明書の有効期限は数日前です。システムでホストされている複数のNameVirtualHostsがあります。証明書の作成に使用しているコマンドは、1つのチュートリアルWebサイトから取得したもので、次のとおりです。

openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr 
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

この後、ssl.confファイルで、他の管理者が行った古い設定とともにVirtualHostセクションで指定しました

SSLEngine on
SSLCertificateFile <full_path>/server.crt
SSLCertificateKeyFile <full_path>/server.key

サーバーを起動すると、ログファイルに次のメッセージが表示され、サーバーを起動できません。

error_logファイルのメッセージは

 [Mon Jun 01 23:52:46 2009] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)

ssl_error_logファイルでは、メッセージは

 [Mon Jun 01 23:52:46 2009] [error] Init: Private key not found
 [Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218710120 error:0D094068:asn1 encoding routines:d2i_ASN1_SET:bad tag
 [Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
 [Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error
 [Mon Jun 01 23:52:46 2009] [error] SSL Library Error: 218734605 error:0D09A00D:asn1 encoding routines:d2i_PrivateKey:ASN1 lib

これを解決する方法を説明できる方がいらっしゃれば幸いです。自己署名SSL証明書について他のチュートリアルWebサイトをいくつか試しましたが、彼らが言及している手順のどれも機能していません。

回答:


21

この1つのライナーを使用して、証明書とキーを1つのファイルに生成します

openssl req -new -x509 -days 999 -nodes -out apache.pem -keyout apache.pem

次に、必要な唯一の構成は

SSLEngine on
SSLCertificateFile /etc/apache2/apache.pem

つまり、上記の行にsslengine onとsslcertificatefile / etc / sshを追加します
Rajat

これはApache設定用であり、sshではありません。
hayalci 2010

1
このコマンドは、OPの元のコマンドとは対照的に、秘密鍵をファイルシステムに平文のまま残します。-nodesオプションを省略すると、Triple-DESを使用してキーを暗号化します。(もちろん、サーバーの起動時に常にキーのパスフレーズを提供する必要があります。)OpenSSL reqコマンドは、より強力に暗号化されたキーの生成をサポートしていませんが、以前に生成された強力に暗号化されたキーを使用できます。
Calrion 2014年


0

openssl req -newkey rsa:1024 -keyout privkey.pemキーの生成が適切でない場合に備えて、生成されたSSLキーを節約するために使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.