was ist keyAlias="aaaa" in tomcat server.xml Datei
Habe ich SSL-Zertifikat erworben und installiert werden in tomcat. Ich erstellte tomcat.keystore
- Datei, die ich in server.xml
Datei auch Passwort-aber nicht in der Lage zu verstehen keyAlias="aaa"
. Wenn ich keyAlias="localhost" dann bekomme ich die Ausnahme, die unten gegeben werden. Und wenn ich entfernen keyAlias
sich aus dem Anschluss-tag bekomme ich dann eine weitere Ausnahme, die weiter unten localhost
Ausnahme.
java.io.IOException: Alias name localhost does not identify a key entry
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.java:588)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.java:526)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:471)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:218)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:400)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:649)
Hier ist die Ausnahme nach dem entfernen keyAlias
sich aus der Connector
tag.
Aug 08, 2015 2:39:18 PM org.apache.catalina.core.StandardService initInternal
SEVERE: Failed to initialize connector [Connector[HTTP/1.1-443]]
org.apache.catalina.LifecycleException: Failed to initialize component [Connector[HTTP/1.1-443]]
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:821)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:638)
at org.apache.catalina.startup.Catalina.load(Catalina.java:663)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:280)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:454)
Caused by: org.apache.catalina.LifecycleException: Protocol handler initialization failed
at org.apache.catalina.connector.Connector.initInternal(Connector.java:980)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
... 12 more
Caused by: java.net.BindException: Address already in use <null>:443
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:413)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:649)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:978)
... 13 more
Caused by: java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.ServerSocket.bind(ServerSocket.java:376)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at java.net.ServerSocket.<init>(ServerSocket.java:181)
at javax.net.ssl.SSLServerSocket.<init>(SSLServerSocket.java:136)
at sun.security.ssl.SSLServerSocketImpl.<init>(SSLServerSocketImpl.java:107)
at sun.security.ssl.SSLServerSocketFactoryImpl.createServerSocket(SSLServerSocketFactoryImpl.java:84)
at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:219)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:400)
... 17 more
Folgenden ist der Inhalt server.xml
Datei.
<Connector port="443" SSLEnabled="true" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="tomcat.keystore"
keystorePass="test" keyAlias="aaa"/>
Was ist das keyAlias
? Warum bin ich immer die Ausnahme, nach dem entfernen, die Verbindlich Ausnahme ?
- Ich glaube nicht, dass die
Address already in use
Problem verbunden ist, um die Entfernung von keyAlias. - doch es ist ein Problem durch das entfernen dieser
keyAlias
. Es gibt Verbindliche Ausnahme in Catalina.aus Datei. Meine Anwendung läuft auf 443 mit http(nicht https). Aber die Frage, was ist der Wert fürkeyAlias="?"
so, dass ich eigentlich meine host-Anwendung auf https. - Aber mit der Adresse, die Problem sollten Sie einfach in der Lage sein, um einen freien port. Haben Sie, was es, wenn überhaupt? Wenn es es ist komisch.
- Hinzugefügt
Du musst angemeldet sein, um einen Kommentar abzugeben.
KEYALIAS:
https://www.digicert.com/ssl-certificate-installation-tomcat.htm`
Wenn Sie den import Ihres Zertifikats in den keystore, die Sie in der Regel geben, eine "alias":
keytool -import -trustcacerts -alias server -file your_site_name.p7b -keystore your_site_name.jks
In Ihrem server.xml Sie müssen dann erklären, die gleichen "alias":
<Connector port="443" maxHttpHeaderSize="8192" maxThreads="150"
minSpareThreads="25" maxSpareThreads="75" enableLookups="false"
disableUploadTimeout="true" acceptCount="100" scheme="https"
secure="true" SSLEnabled="true" clientAuth="false" sslProtocol="TLS"
keyAlias="server" keystoreFile="/home/user_name/your_site_name.jks"
keystorePass="your_keystore_password" />
Hier sind einige links, die helfen könnten:
https://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html
https://www.mulesoft.com/tcat/tomcat-ssl
https://wolfpaulus.com/jounal/mac/tomcat-ssl/
ZWEITE FRAGE, "KANN NICHT GEBUNDEN WERDEN":
So weit, "Adresse", ich würde einfach versuchen, den server neu starten und sehen, ob Tomcat startet korrekt.
Tritt der Fehler wieder,
Schauen Sie in Ihrem Tomcat-Einstellungen, um zu sehen, welchen port Sie verwenden möchten (z.B. 443)
Überprüfen Sie Ihr system, um zu sehen, wer sonst ist mit dem port (lsof, nmap, etc):
http://www.howtogeek.com/howto/28609/how-can-i-tell-what-is-listening-on-a-tcpip-port-in-windows/
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/3/html/Security_Guide/s1-server-ports.html
Diese Fehler sind nicht verwandt.
keyAlias
ist dokumentiert in der Tomcat-Dokumentation, und das ist, wo Sie suchen sollten für Ihre Bedeutung.BindException
bedeutet, dass einige andere Prozess, wahrscheinlich eine Vorherige Anrufung der Tomcat noch nicht beendet, doch ist das mit dem port. Oder vielleicht, die Sie so konfiguriert haben, dass zwei Anschlüsse an den gleichen port verwenden. Es zeigt nur, wie ein Fehler beim konfigurieren der SSL-connector korrekt.