[CentOS] Apache+OpenSSL 自己証明書

自分で署名する自己証明書でSSL暗号化の方法を調べた。

参考)CentOS Apache+OpenSSLでセキュア・サーバ

自己証明書でSSL暗号化するにあたり以下のファイルを作成・必要とし、「OpenSSL」を使用し作成を行います。
・秘密鍵(server.key)
・公開鍵(server.csr)
・デジタル証明書(server.crt)

作成手順からApacheへの設定方法をいかに記載します。

  1. OpenSSLをインストール

まずはOpenSSLがインストールされているか確認。(※デフォルトでインストールされている場合もある)

もしインストールされていない場合はインストールを行う。

 

 

  2. 秘密鍵(server.key)の作成

秘密鍵(server.key)の作成を行います。
/etc/ディレクトリに移動し、opensslを実行します。

右記コマンドを入力します。「genrsa -des3 -out server.key 1024」
パスワードを入力します。

「server.key」が作成されます。

秘密鍵(server.key)の作成は完了です。

 
 

  3. 公開鍵(server.csr)の作成

次は、公開鍵(server.csr)の作成を行います。
opensslを実行し、右記コマンドを入力します。「req -new -key server.key -out server.csr」
国名や都道府県名などはサンプルです。

「server.csr」が作成されます。

公開鍵(server.csr)の作成は完了です。

 
 

  4. デジタル証明書(server.crt)の作成

次は、デジタル証明書(server.crt)の作成を行います。
opensslを実行し、右記コマンドを入力します。「req -x509 -days 3650 -in server.csr -key server.key -out server.crt」

「server.crt」が作成されます。

デジタル証明書(server.crt)の作成は完了です。

 
 

  5. Apacheの設定

/etc/httpd/conf.d/ディレクトリに移動し、ssl.conf が存在するか確認します。

※もしssl.confが存在しない場合は、インストールを行います。

※インストールすると、ssl.conf が作成されます。

/etc/httpd/conf.d 配下に sslファイルを配置するディレクトリを作成します

作成した以下3つのファイルを、作成したディレクトリに移動します。
・秘密鍵(server.key)
・公開鍵(server.csr)
・デジタル証明書(server.crt)

ssl.confを修正します。

Apacheを再起動します。
※起動の際に、パスワードに入力が求められます。
 「秘密鍵(server.key)」で作成時のパスワードを入力します。

以下URLを入力しアクセスできれば成功です。
https://localhost/
openssl

 
 

  6. Apache起動時のパスワードについて

 Apacheを起動すればSSLで起動しますが、起動の際に秘密鍵のパスフレーズを聞かれます。
 都度入力するのが面倒くさい場合は以下の方法で外すことも可能です。
 rsa -in server.key -out server-nopass.key

ssl.confを修正します。

Apacheを起動した際に、パスワードは聞かれなくなります。

 
以上です☆