Writing /volume1/Web/Public/dokuwiki/data/log/deprecated/2024-11-15.log failed

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
study:php5:ssl [2010/03/11 09:31] bananastudy:php5:ssl [2010/07/02 08:28] (現在) banana
行 7: 行 7:
  
 ===== example of openssl.conf ===== ===== example of openssl.conf =====
 +後で、サーバー証明書作成に必要な**%%openssl.conf%%**ファイルを作成しておく。
 <code> <code>
 # #
行 114: 行 115:
   * 環境変数 **%%SSLEAY_CONF%%** が設定された場合、 設定ファイルの(ファイル名を含む)パスとして使用される。    * 環境変数 **%%SSLEAY_CONF%%** が設定された場合、 設定ファイルの(ファイル名を含む)パスとして使用される。 
   * ファイル **%%openssl.conf%%** はデフォルトの認証エリアに あることが仮定され、**%%openssl DLL%%** がコンパイルされた時間で設定される。 通常、デフォルトのファイル名が **%%c:\usr\local\ssl\openssl.conf%%**  であることを 意味する。    * ファイル **%%openssl.conf%%** はデフォルトの認証エリアに あることが仮定され、**%%openssl DLL%%** がコンパイルされた時間で設定される。 通常、デフォルトのファイル名が **%%c:\usr\local\ssl\openssl.conf%%**  であることを 意味する。 
 +
 +===== 鍵のペア作成と証明書の作成  =====
 +SSLの通信で利用するには、公開鍵/秘密鍵のペアとデジタル証明書が必要である。\\
 +これらは、**%%OpenSSL%%**に付属するコマンドを利用し生成できる。\\
 +生成するファイルは、server.key(秘密鍵)、server.csr(CSRファイル:公開鍵+証明書申請情報)、server.crt(デジタル証明書)の3つとなる。\\
 +まず、**%%server.csr(CSRファイル:公開鍵+証明書申請情報)%%**の作成からはじめましょう。\\
 +**%%server.csr%%**の作成すると**%%privkey.pem%%**が一緒に作られる。これは後で**%%server.key%%**を作成するときに必要になる。\\
  
 証明書を発行する際、 証明書を発行する際、
 **%%「req_distinguished_name」%%**について、聞かれることになる。 その説明を簡単に次に示す。 **%%「req_distinguished_name」%%**について、聞かれることになる。 その説明を簡単に次に示す。
 +
 ^項目^詳細^ ^項目^詳細^
 |Country Name|2文字の国コードを入力| |Country Name|2文字の国コードを入力|
行 125: 行 134:
 |Common Name|サーバーの別名ではなく、セキュアサーバーの本当の名前(有効なDNS名)を入力| |Common Name|サーバーの別名ではなく、セキュアサーバーの本当の名前(有効なDNS名)を入力|
 |Email Address|Webマスターやシステム管理者の電子メールアドレスを入力| |Email Address|Webマスターやシステム管理者の電子メールアドレスを入力|
-===== 証明書発行 ===== + 
-**%%server.csr(CSRファイル:公開鍵+証明書申請情報)%%**の作成\\ +設定例を次す。
-**%%server.csr%%**の作成すると**%%privkey.pem%%**が一緒作られる。こらは後で**%%server.key%%**を作成るときに必要になる+
 <code> <code>
-C:\apache2.2\conf>\Apache2.2\bin\openssl req -config ../conf/openssl.conf -new -out server.csr+C:\apache2.2\conf>\Apache2.2\bin\openssl req -config openssl.conf -new -out server.csr
 Loading 'screen' into random state - done Loading 'screen' into random state - done
 Generating a 1024 bit RSA private key Generating a 1024 bit RSA private key
行 158: 行 166:
  
 </code> </code>
 +ここで、CSRファイルを生成する際のオプションの意味は次の通りである。
 +^オプション^種類^意味^
 +|req|サブコマンド|CSRファイルの作成する。|
 +|-new|オプション|新規にCSRファイルを作成する。|
 +|-key 鍵|オプション|入力する秘密鍵のファイル名を指定する(パスフレーズ付きの鍵の場合は、パスフレーズが必要)。|
 +|-config opensslのcnfファイル|オプション|openssl.cnfのパスを指定する。|
 +
 **%%server.key(秘密鍵)%%**の作成\\ **%%server.key(秘密鍵)%%**の作成\\
 Apache起動時にパスフレーズの入力が求められるのを防ぐ為に、次のコマンドを実行する。 Apache起動時にパスフレーズの入力が求められるのを防ぐ為に、次のコマンドを実行する。
行 175: 行 190:
  
 </code> </code>
 +デジタル証明書を作成する際、使われたオプションの意味を次に示す。
 +^オプション^種類^意味^
 +|x509|サブコマンド|X.509形式のデジタル証明書の作成します。|
 +|-in|オプション|CSRファイルパスを指定します。|
 +|-days 日数|オプション|証明書の有効期限を指定します。|
 +|-req|オプション|入力ファイルが CSRファイルであることを指定します。|
 +|-signkey|オプション|自己証明書生成時に使用するオプション。秘密鍵のパスを指定します。|
 +
 ===== httpd-ssl.conf 修正 ===== ===== httpd-ssl.conf 修正 =====
 続いてSSL設定ファイル(conf/extra/httpd-ssl.conf)を修正する。\\ 続いてSSL設定ファイル(conf/extra/httpd-ssl.conf)を修正する。\\
行 183: 行 206:
 |%%SSLCertificateKeyFile%% デフォルトの秘密鍵パス|%%SSLCertificateKeyFile%%皆さんが生成した秘密鍵のパス| |%%SSLCertificateKeyFile%% デフォルトの秘密鍵パス|%%SSLCertificateKeyFile%%皆さんが生成した秘密鍵のパス|
  
-設定例を次に示す。+設定例を次に示す。 ここで、証明書のサーバー名(Common Name)が違うとApacheサーバーのエラーログにエラーが記録される。\\ 
 +正しい証明書をセットするように注意したい
 <code> <code>
-<VirtualHost 192.168.1.104:443> +NameVirtualHost 172.20.30.40:443 
-ServerName www.pne-test.com + 
-DocumentRoot D:/local/OpenPNE-2.14.4/public_html +<VirtualHost 172.20.30.40:443> 
-ErrorLog "C:/Apache2.2/logs/error.log" +   ServerName www.pne-test.com 
-TransferLog "C:/Apache2.2/logs/access.log" +   DocumentRoot C:/Apache2.2/htdocs 
-SSLCertificateFile "C:/Apache2.2/conf/server.crt" +   ErrorLog "C:/Apache2.2/logs/error.log" 
-SSLCertificateKeyFile "C:/Apache2.2/conf/server.key"+   TransferLog "C:/Apache2.2/logs/access.log" 
 +   SSLCertificateFile "C:/Apache2.2/conf/server.crt" 
 +   SSLCertificateKeyFile "C:/Apache2.2/conf/server.key"
 </VirtualHost> </VirtualHost>
 </code> </code>
行 203: 行 229:
  
 ===== reference ===== ===== reference =====
 +  - [[http://www.thinkit.co.jp/free/article/0706/3/6/|SSLの基本を押さえる]]
   - [[http://www.gadgety.net/shin/tips/win/apache2.html|WindowsにApache2 SSLをインストール]]   - [[http://www.gadgety.net/shin/tips/win/apache2.html|WindowsにApache2 SSLをインストール]]
   - [[http://jp.php.net/manual/ja/openssl.installation.php|OpenSSLのインストール手順]]   - [[http://jp.php.net/manual/ja/openssl.installation.php|OpenSSLのインストール手順]]
   - [[http://www.thinkit.co.jp/free/article/0706/3/7/|Apache+SSL環境を構築しよう]]   - [[http://www.thinkit.co.jp/free/article/0706/3/7/|Apache+SSL環境を構築しよう]]
  
 +~~DISCUSSION~~
  

QR Code
QR Code study:php5:ssl (generated for current page)