ウェブサーバーでSSLを設定しましたが、2つのファイルが必要になりました。
- 証明書
- 証明書キー
テスト目的で自己署名証明書を作成するにはどうすればよいですか?
ウェブサーバーでSSLを設定しましたが、2つのファイルが必要になりました。
テスト目的で自己署名証明書を作成するにはどうすればよいですか?
回答:
Ubuntuは、「最小限の」フレーバーでさえ、ssl-cert
パッケージが事前にインストールされているため、何もする必要はありません。
探しているファイルはすでにシステムにあります:
/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key
高度:
何らかの理由で新しい証明書を作成する必要がある場合は、実行できます
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
証明書の有効期限を変更する場合は、でmake-ssl-certスクリプトを操作できます/usr/sbin/make-ssl-cert
。124のように、次のような行があります。
openssl req -config $TMPFILE -new -x509 -nodes \
-days
引数を追加して有効期限を変更できる場所:
openssl req -config $TMPFILE -new -days 365 -x509 -nodes \
その他のオプションは、のマニュアルページにありreq
ます。
/usr/share/ssl-cert/ssleay.cnf
ます。
www.test.mydomain.com
を使用して、テストURL(例:)に一致するようにVMのホスト名を設定する必要がありましたhostname
。次に、提案どおりにキーを再生成し--force-overwrite
、キーの共通名(CN)をテストURLと一致させます。最後に、ホストマシンで、キーを信頼されたルート認証局として(Chromeの設定/詳細設定で)インストールすると、切望された緑色のアドレスバーが表示されました。
make-ssl-cert
コマンドで時間を節約できました!
すでに述べたように、Ubuntu Serverには必要なツールが付属しています。サーバーのバージョンに応じて、特定のドキュメントを検索する必要があります。現在のLTS(12.04)の自己署名証明書生成プロセスを要約しようと思います。
最初に、証明書署名要求(CSR)のキーを生成します。
openssl genrsa -des3 -out server.key 2048
パスフレーズを入力するかどうかはあなた次第です。その場合、その証明書を使用してサービスを(再)開始するたびに、パスフレーズを提供する必要があります。Otohでは、安全なパスフレーズからパスフレーズなしで「安全でない」キーを作成できます。
openssl rsa -in server.key -out server.key.insecure
# shuffle the key names to continue without passphrases
mv server.key server.key.secure
mv server.key.insecure server.key
そして、キーからCSRを作成します。CSRとキーを使用して、自己署名証明書を生成できます。
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
最後のステップは、通常はDebian / Ubuntuに証明書とキーをインストールすることです/etc/ssl
:
sudo cp server.crt /etc/ssl/certs
sudo cp server.key /etc/ssl/private
最後に、証明書/キーを使用するアプリケーションをそれに応じて構成する必要があります。