私のアプリをHTTPからHTTPSに移行中で、問題が発生しているようです。ここでJBoss 5.1.0用にHTTPSを設定するGA
は、私がこれまでthese instructionsのオフに基づいてやっていることです:
- サーバーをホストしているコンピュータのホスト名を特定します。これらの指示のためのローカルホスト
- jBossサーバータイプ(すべて、デフォルト、プロダクション)を特定します。これらの指示のためのecotrak
- jBossは、キーストアとトラストアの両方と同じファイルを使用することをお勧めします。これはserver.keystoreになります。バージンインストールでは、default/confフォルダにserver.keystoreが存在しないはずです。あなたが持っている場合、それを削除するか(これらの指示を使用するか)、またはあなたの状況に合わせて指示を適応させるかどうかを決める必要があります。
- キーストアと秘密鍵の作成:
- コマンドプロンプトまたはシェルを開き、デフォルトの/ confフォルダに移動します。
- keytool -genkey -alias jbosskey -keypass changeit -keyalg RSA -keystore server.keystore
- プロンプトに答えます。姓名の入力が求められたら、myHostnameを使用します。これは非常に重要です。
- server.keystoreが生成されます。
- keytool -list -keystore server.keystore
- リスティングにjbosskeyという名前のPrivateKeyEntryが表示されます。
- 証明書の生成と保存。
- のkeytool -export -alias jbosskey -keypass changeitと-fileをserver.crt -keystore server.keystore
- をserver.crtが生成されます。
- keytool -import -alias jbosscert -keypass changeit -file server.crt -keystore server.keystore
- すでにキーストアに存在するという警告が表示されます。それを無視します。これはJavaが別々のkeystoreおよびtrustownファイルを必要とし、我々は1つだけを使用しているからです。
- keytool -list -keystore server.keystore
- リストには、jbosscertという名前のTrustedCertEntryが表示されます。
私のサーバーにあります。私が起動すると
<!-- SSL/TLS Connector configuration using the admin devl guide keystore-->
<Connector protocol="HTTP/1.1" SSLEnabled="true"
port="8443" address="${jboss.bind.address}"
scheme="https" secure="true" clientAuth="false"
keystoreFile="C:/dev/server/jboss-5.1.0.GA/server/ecotrak/conf/server.keystore"
keystorePass="password" sslProtocol = "TLS" keyAlias="jbosskey" />
を私は次のようしているサーバー:私は、次の持つXML
call %JBOSS_HOME%\bin\run.bat -c default -b 0.0.0.0 -Djavax.net.ssl.trustStore=C:/dev/server/jboss-5.1.0.GA/server/ecotrak/conf/server.keystore
ここでは、私は私のログファイルに取得されるものです:
00:09:03,110 INFO [AprLifecycleListener] The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\dev\jdk\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\dev\jdk\jre\bin;native
00:09:03,197 INFO [Http11Protocol] Initializing Coyote HTTP/1.1 on http-localhost%2F127.0.0.1-8080
00:09:03,214 INFO [AjpProtocol] Initializing Coyote AJP/1.3 on ajp-localhost%2F127.0.0.1-8009
00:09:03,261 ERROR [Http11Protocol] Error initializing endpoint
java.io.IOException: Cannot recover key
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:456)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:139)
の別のセクションログ
00:09:03,265 ERROR [AbstractKernelController] Error installing to Start: name=WebServer state=Create
LifecycleException: Protocol handler initialization failed: java.io.IOException: Cannot recover key
at org.apache.catalina.connector.Connector.initialize(Connector.java:1031)
at org.apache.catalina.core.StandardService.initialize(StandardService.java:683)
デプロイメントI NのERROR:ここで何が起こっているかについての
Deployment "WebServer" is in error due to the following reason(s): LifecycleException: Protocol handler initialization failed: java.io.IOException: Cannot recover key
Deployment "jboss.web:service=WebServer" is in error due to the following reason(s): ** NOT FOUND Depends on 'jboss.web:service=WebServer' **
どれ理想的?
更新
私は私の誤りを発見した - 私は、キーストアと証明書の間でパスワードを混同していました。それが修正されたら、私は今HTTPSの下でサイトを動かすことができる