web-dev-qa-db-ja.com

SSL証明書を簡単に作成し、Mac OS XのApache2で構成する方法

ローカル開発テストのために、私のMac OS Xをhttpsで使用したいと思います。どうすれば、Apache2をsslに簡単に応答させることができますか?

34
Daniel Cukier

ローカル開発テストでは、自己署名証明書で十分です。次のように OpenSSLキット で生成できます。

秘密鍵の生成:

openssl genrsa -des3 -out server.key 1024

出力:

RSA秘密鍵、1024ビット長の係数の生成
 ................................................. ..................... ++++++ 
 ........ ++++++ 
 eは65537(0x10001)です。
 PEMパスフレーズを入力してください:
パスワードを確認しています-PEMパスフレーズを入力してください:

秘密鍵のパスフレーズを入力します。

CSR(証明書署名リクエスト)の生成:

openssl req -new -key server.key -out server.csr

次のような詳細が要求されます。

国名(2文字のコード)[GB]:
州または県の名前(フルネーム)[バークシャー]:
地域名(例:市)[Newbury]:
組織名前(例:会社)[My Company Ltd]:
組織単位名(例:セクション)[]:
共通名(例:名前またはサーバーのホスト名)[]:
メールアドレス[]:
次の「追加の」属性を入力してください
証明書リクエストとともに送信されます
チャレンジパスワード[]:
 Anオプションの会社名[]:

それはかなり簡単です、一般的な名前は括弧内にあるようにあなたのサーバーのホスト名です。

自己署名証明書の生成:

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Apacheのhttpd.confでSSLを構成する:

SSLEngine on 
 SSLCertificateFile /path/to/generated/server.crt
SSLCertificateKeyFile /path/to/generated/server.key

(パスを証明書とキーへのパスに適切に置き換えます)

Apacheを再起動します

apachectl restart

Apacheはキーのパスフレーズを要求します。サーバーを頻繁にシャットダウンする予定がある場合は、キーからパスフレーズを削除して、毎回入力するのを避けることができます。そうでない場合でも、心配する必要はありません。その場合は、ステップ2の後にこのステップを完了してください(CSRの生成):

cp server.key server.key.copy
openssl rsa -in server.key.copy -out server.key
58
John T