現在、GlassfishでSSLを設定していますが、サーバーへの接続に問題があります。
http://javadude.wordpress.com/2010/04/06/getting-started-with-glassfish-v3-and-ssl/
私はこのガイドに従って証明書を設定しましたが、これはうまく機能しているように見えましたが、Glassfishに証明書を指定させることができませんでした。さらに調査した後、私が行った変更だけでなく、domain.xml内の「s1as」のすべてのインスタンスを証明書に付けたエイリアスに変更する必要があるという別のガイドを見つけました。最終的に、いじくり回した後、キーストアを指すように以下を変更しました
-Djavax.net.ssl.keyStore = $ {com.Sun.aas.instanceRoot} /config/keystore.jks
これは部分的に機能しました。最初の数回は正常に接続でき、その後は試行するたびにブラウザがタイムアウトします。
私が見逃した設定や、私が間違って行ったことを誰かが見ることができる何かがありますか?
Glassfish3.1の新規インストールでSSLを設定するには
3.0.1で多くの問題が発生したため、3.1にアップグレードすることをお勧めします
上記のリンクの指示に従って、これによりキーストアと証明書が正常に作成されます。
マスターパスワードの変更
Glassfishに設定されているマスターパスワードは、SSL証明書ストアへのアクセスを許可するパスワードでもあります。 Glassfish3.1のデフォルトのパスワードは「changeit」です。Glassfish3.0.1にはデフォルトのマスターパスワードがありません。マスターパスワードを変更するには、コマンドプロンプトを開き、次のように入力します
cd C:\glassfish3\bin
asadmin change-master-password
デフォルトのパスワードの入力を求められ、証明書ストアのパスワードを設定したものに設定する必要がある新しいパスワードの入力を求められます。
証明書をインストールします
ファイルserver.keystoreファイルをC:\glassfish3\glassfish\domains\domain1\config\
にコピーします
C:\glassfish3\glassfish\domains\domain1\config
でdomain.xmlドキュメントを開き、フレーズs1as
のすべてのインスタンスを見つけて、証明書に付けたエイリアスに置き換えます。約22の変更があるはずです。同じドキュメントで、keystore.jks
のすべてのインスタンスをserver.keystore
に置き換えます。これは、上記のjavadude命令で作成された新しいキーストアの名前です。 2つの変更があるはずです。
SSL用のGlassfishの設定
「スタート」->「すべてのプログラム」->「Glassfishサーバーオープンソース版のWebプロファイル」->「アプリケーションサーバーの起動」に移動して、Glassfishサーバーを起動します。これにより、画面の下部に最小化されたcmdウィンドウが開きます。これを最大化し、Glassfishマスターパスワードを入力します。 Webブラウザーを開き、URL http://localhost:4848
を入力して、管理コンソールにアクセスします。 [構成]-> [サーバー構成]-> [ネットワーク構成]-> [ネットワークリスナー]-> [Http-listener-2]に移動します。ポートを443に変更し、[セキュリティを有効にする]ボックスがオンになっていることを確認します。 [保存]をクリックします。 [SSL]タブで、[SSL3とTLS]の横にあるチェックボックスをオンにし、証明書のニックネームを前の手順で設定したエイリアスに変更し(まだ自動的に設定されていない場合)、[保存]をクリックします。
GFをWindowsサービスとして使用する場合は、次のコマンドを使用してマスターパスワードを保存する必要があります。
asadmin change-master-password --savemasterpassword true
それ以外の場合、Windowsサービスは再開されません。