SSL通信ができない場合に考えられる原因とその対処を以下に説明します。
証明書環境に誤りがあります
証明書が正しくインストールされているか確認してください。
使用するキーストアの設定に誤りがあります
キーストアが正しく設定されているか確認してください。
キーストアの設定方法の詳細は、「5.3.3 SSL」を参照してください。
キーストアの設定が反映されていません
キーストアの設定を反映させるためには、リポジトリーの同期化処理(DASのdomain.xmlの更新日時の変更)、DASの再起動、GlassFish Serverクラスターの再起動が必要です。キーストアの設定方法の詳細は、「5.3.3 SSL」を参照してください。
サイト証明書のニックネーム名に誤りがあります
サイト証明書のニックネーム名が正しいか確認してください。
ネットワーク設定に誤りがあります
ネットワーク設定が正しいか確認してください。
ネットワーク設定の定義項目についての詳細は、「9.8.3 ネットワーク設定の定義項目」を参照してください。
OpenJDK 8によって暗号化通信が制限されている可能性があります
OpenJDK 8の暗号アルゴリズムに関する動作の変更によって、暗号化通信が制限されている可能性があります。
暗号アルゴリズムに関する動作の変更については、「使用上の注意」の「注意事項」-「OpenJDKの注意事項」-「暗号アルゴリズムに関する動作の変更について」を参照してください。
クライアントとサーバーで使用できるTLSプロトコルのバージョンや暗号化方式群、楕円曲線に差異があります
クライアントとサーバーで使用できるTLSプロトコルのバージョンや暗号化方式群、楕円曲線が一致しているか確認してください。
なお、SSL通信を行うJava VMプロセスに対してJava VMオプション-Djavax.net.debug=allを設定することにより、SSLハンドシェイクの内容やSSLハンドシェイクに失敗した理由を示すメッセージがサーバーログや標準出力に出力されます。
大量のメッセージが出力されるため、Java VMオプションは調査が必要なときにだけ設定するようにしてください。
HTTP/2で使用できないTLSプロトコルバージョンや暗号化方式のみ有効になっています
TLSでHTTP/2を利用する場合、TLS1.2以上のバージョンが有効になっている必要があります。
また、HTTP/2の規約(RFC 7540)で定められているブラックリストに該当する暗号化方式のみが有効化されている状態で通信することはできません。
SSLハンドシェイクには成功するがHTTP/2での通信ができない場合、クライアントまたは「9.8.3 ネットワーク設定の定義項目」の設定を確認してください。