Eclipse WTP:如何在Tomcat上启用SSL?

tvokkenx  于 12个月前  发布在  Eclipse
关注(0)|答案(5)|浏览(129)

Eclipse WTP创建了自己的server.xml文件,它将该文件放在某个文件夹中,该文件夹配置了您正在为Web项目运行的tomcat示例。如果您双击servers列表中的服务器,您会看到一个漂亮的屏幕,这使得配置server.xml文件的某些方面变得简单。
如何配置一个新的连接以允许在端口8443上进行SSL连接。每次我手动编辑server.xml文件时,eclipse都会用它在配置的服务器属性页中存储的设置覆盖我的更改,并且似乎没有办法从eclipse提供的接口添加新的连接器。
这是可能的吗?这里是我想添加的连接器:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    keystoreFile="D:\apache-tomcat-6.0.18\keystore\key.ssl" keystorePass="pass"
    clientAuth="false" sslProtocol="TLS" />

字符串

wwtsj6pe

wwtsj6pe1#

如果您已经创建了服务器,则可以编辑它复制的server.xml模板。

f3temu5u

f3temu5u2#

以下是你如何让它工作:
创建keystore:

keytool -genkey -alias tomcat -keypass mypassword -keystore keystore.jks -storepass mypassword -keyalg RSA -validity 360 -keysize 2048

字符串
(按照提示填写信息)
然后它应该将一个keystore.key文件保存到您的主目录。
让它在eclipse中工作:

<Connector port="8443" SSLEnabled="true"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        enableLookups="true" disableUploadTimeout="true"
        acceptCount="100" debug="0" scheme="https" secure="true"
        clientAuth="false" sslProtocol="TLSv1"
        keystoreFile="/home/myUsername/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key"
        keystorePass="mypassword" />


上面的keystoreFile的路径是你绝对需要正确使用的。当eclipse使用工作区元数据位置来运行tomcat时,它会将一些文件复制到上面的路径中。在OS X上,这将是:

/Users/<username>/Documents/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/conf/keystore.key


希望能帮上忙。
更多参考:SSL/TLS Configuration HOW-TO in Apache Tomcat 7

5m1hhzi4

5m1hhzi43#

当你第一次在Servers视图中创建一个新的服务器时,右键单击它并选择New > Server,Eclipse WTP从tomcat安装中获取你的现有server.xml文件,并使用原始文件作为模板为你的项目创建新的server.xml文件。
如果在eclipse中创建新服务器之前,使用所需的配置修改原始server.xml,则将保留这些设置。
eclipse不允许在事后添加这些类型的配置,这太糟糕了。

pgky5nke

pgky5nke4#

如果您有本文前面提到的证书和密钥库,我发现以下解决方案可以配置Eclipse以能够与启用SSL的服务器通信。当使用Tomcat配置工具时,您必须将条目添加到“Java”选项卡,“Java Options”文本框,如下所示:

-Dbusinessobjects.orb.oci.protocol=ssl
-Dcertdir=c:\ssl
-DtrustedCert=c:\ssl\cacert.der
-DsslCert=c:\ssl\servercert.der
-DsslKey=c:\ssl\server.key
-Dpassphrase=c:\ssl\passphrase.txt

字符串
类似地,在Eclipse中,右键单击ProjectExplorer窗口中的服务器名称,单击ProfileAs|轮廓配置|参数,并将上面列出的相同选项附加到“VM参数:“文本框。这应该允许您在启用SSL的服务器上运行和调试程序。
Eclipse "VM Arguments:" text box

k4emjkb1

k4emjkb15#

只需在cmd上执行以下命令,并替换jre/lib/scurity文件夹中缓存文件。2它对我很有效

keytool.exe -importcert -file folderName/certificateName.crt -keystore cacerts.jks -alias "abc"

字符串

相关问题