付録D 旧バージョンから移行する場合の設定
SSL機能を使用する場合,HTTP Serverの旧バージョンからV11以降に移行するに当たり,次の変更を実施します。
項番 |
項目 |
旧バージョン |
V11以降 |
説明 |
---|---|---|---|---|
1 |
SSLEnable/SSLDisableの指定がない場合のデフォルト |
SSL機能有効 |
SSL機能無効 |
SSL機能を有効にしたい場合は,SSLEngine Onを指定してください。 ただし,<VirtualHost>ブロック内でSSLを有効にしたい場合,有効にしたい<VirtualHost>ブロック内でSSLEngine Onを指定してください。 |
2 |
SSL機能を無効にする指定 |
SSLDisable |
SSLEngine Off |
SSLEngine Offに置き換えてください。 なお,11-00以降ではSSLDisableディレクティブの指定のままでもSSLEngine Offが指定されたものとして動作します。また,Webサーバ全体でSSL機能を無効にする場合には,その他SSLから始まるディレクティブの指定を削除もしくはコメント化してください。 |
3 |
SSL機能を有効にする指定 |
SSLEnable |
SSLEngine On |
SSLEngine Onに置き換えてください。 ただし,<VirtualHost>ブロック内でSSLを有効にしたい場合,有効にしたい<VirtualHost>ブロック内でSSLEngine Onを指定してください。 なお,SSL通信だけを有効にしたWebサーバをManagement Serverを使用して起動する場合は,Webサーバの動作確認レベルを「1:プロセスの存在を確認するだけ」に変更してください。※1 |
4 |
使用する暗号種別の指定 |
SSLRequiredCiphers |
SSLCipherSuite |
SSLCipherSuiteに置き換えてください。 |
5 |
使用するプロトコルの指定 |
SSLProtocol TLSv1 TLSv11 TLSv12 |
SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2 |
プロトコルの記述方法が異なります。使用するプロトコルを追加する場合はプロトコルの前に’+’を付加して指定します。連続したプロトコルバージョンを指定していない場合,古いプロトコルバージョンは無効になります。 |
6 |
SSLRequireSSLの指定可能場所 |
httpsd.conf,<VirtualHost>,<Directory>,.htaccess |
<Directory>, .htaccess |
httpsd.conf,<VirtualHost>で指定している場合は,<Directory>,.htaccessで指定するように変更してください。 |
7 |
SSL機能のリクエストを禁止する設定 |
SSLDenySSL |
なし |
SSLDenySSLの指定を削除してください。 SSL機能全体を無効にする指定などを検討してください。 |
8 |
サーバ認証で使用するCA証明書の指定 |
SSLCACertificateFile |
SSLCertificateFile サーバ証明書とCA証明書を連結したファイルを指定 |
SSLCACertificateFileで指定されたファイル内の証明書のうち,サーバ認証で使用する証明書をSSLCertificateFileで指定するファイルに追加してください。追加する順序はWebサーバの証明書に続き,中間CAの証明書,ルート証明書を追加してください。 なお,旧バージョンでは,サーバ認証に使用するCA証明書をSSLCACertificateFileディレクティブに指定している場合は,SSLCACertificateFileディレクティブに指定したCA証明書をサーバ認証に使用していました。 |
9 |
暗号化秘密鍵のパスワード格納ファイルの指定 |
SSLCertificateKeyPassword,SSLECCCertificateKeyPassword |
なし |
SSLCertificateKeyPassword, SSLECCCertificateKeyPasswordの指定を削除してください。※2 |
10 |
DER形式のCRLを指定 |
SSLCRLDERPathでDER形式のファイルを格納したディレクトリを指定 |
DER形式は使用できない |
DER形式をPEM形式に変換したファイルをSSLCARevocationFileで指定してください。※3 複数のファイルがある場合には連結してファイルを作成してください。 |
11 |
PEM形式のCRLを指定 |
SSLCRLPEMPathでPEM形式のファイルを格納したディレクトリを指定 |
SSLCARevocationFileでCRLのファイルを指定 |
複数のCRLファイルがある場合には連結したファイルをSSLCARevocationFileで指定してください。 |
12 |
クライアント証明書を用いたBasic認証の指定 |
SSLFakeBasicAuth |
SSLOptions +FakeBasicAuth |
SSLOptionsディレクティブに+FakeBasicAuthを指定してください。 |
13 |
クライアント証明書の環境変数への設定 |
SSLExportClientCertificates |
SSLOptions +ExportCertData |
SSLOptionsディレクティブに+ExportCertDataを指定してください。PEM形式の証明書を環境変数に設定します。 ただし,クライアント証明書だけでなく,サーバ証明書も環境変数に設定します。 |
14 |
楕円暗号用証明書および秘密鍵指定ディレクティブ |
SSLECCCertificateFile SSLECCCertificateKeyFile |
SSLCertificateFile SSLCertificateKeyFile |
SSLCertificateFile,SSLCertificateKeyFileで楕円曲線暗号用の証明書と秘密鍵を指定してください。 RSA暗号と楕円曲線暗号のサーバ証明書および秘密鍵は,それぞれ一つずつだけ指定できます。 |
15 |
クライアント認証の設定をするSSLVerifyClientの指定値 |
0|1|2 |
none|optional|require |
SSLVerifyClientの指定値を次のとおりに数字から文字列に変更してください。 0:none 1:optional 2:require |
16 |
クライアント認証時の段階数SSLVerifyDepthの指定 |
末端のクライアント証明書を含んだ階層数(認証局の数+1) |
末端のクライアント証明書を含まない階層数 (認証局だけの数) |
証明書のチェインをたどる段階数を見直してください。 |
17 |
CGIで暗号化通信に関する環境変数を使用している場合 |
− |
− |
環境変数名が変更になっています。 |
18 |
暗号種別でのアクセス制御 |
SSLBanCipher SSLRequireCipher |
SSLBanCipher |
SSLRequireCipherで許可する暗号種別を指定していた場合,SSLBanCipherで拒否する暗号種別を指定してください。 また,httpsd.conf,<VirtualHost>で指定している場合は,<Directory>,.htaccessで指定するように変更してください。 |
19 |
ログフォーマット%{version}cで出力されるプロトコルバージョン |
− |
− |
出力されるプロトコルバージョンの表記が変更になっています。
|
20 |
ログフォーマット%{clientcert}cで出力されるクライアント証明書のsubjectのDistinguished Name |
− |
− |
出力される情報の区切り文字が「/」から「,」に変更になっています。
|
- 注※1
-
Management ServerではWebサーバが正常に動作しているかどうかを,運用管理エージェントを介して,プロセスの存在を確認したり,WebサーバにHTTPでアクセスしたりすることで判断しています。
WebサーバでSSL通信だけを有効にしている場合は,Webサーバの動作確認レベルはプロセスの存在を確認するだけに変更(adminagent.hws.watch.level=1を設定)してください。
詳細は,マニュアル「アプリケーションサーバ システム構築・運用ガイド」の「4.1.16 運用管理エージェントを使用するために設定する情報」を参照してください。
- 注※2
-
パスワード保護された秘密鍵からパスワード保護を無効にした秘密鍵に変換したファイルをSSLCertificateKeyFileディレクティブに指定します。次のコマンドで秘密鍵のパスワード解除を行います。
-
RSA暗号を利用した秘密鍵の場合
openssl.bat rsa -in パスワード保護された秘密鍵ファイル -out パスワードを解除した秘密鍵ファイル
-
楕円暗号曲線を利用した秘密鍵の場合
openssl.bat pkcs8 -topk8 -in パスワード保護された秘密鍵ファイル -out パスワードを解除した秘密鍵ファイル -nocrypt
UNIXの場合はopenssl.batをopenssl.shに置き換えて実行してください。
-
- 注※3
-
次のコマンドでDER形式のファイルをPEM形式に変換します。
openssl.bat crl -inform DER -in 入力ファイル -outform PEM -out 出力ファイル
UNIXの場合はopenssl.batをopenssl.shに置き換えて実行してください。