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

发布于 2024-07-23 19:32:25 字数 565 浏览 9 评论 0原文

Eclipse WTP 创建自己的 server.xml 文件,并将其放置在某个文件夹中,该文件夹配置您为 Web 项目运行的 tomcat 实例。 如果双击服务器列表中的服务器,您会看到一个漂亮的屏幕,这使得配置 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" />

Eclipse WTP creates its own server.xml file which it places in some folder which configures the tomcat instance you are running for your web project. If you double click on the server in the servers list you get a nice screen which makes it simple to configure some aspects of the server.xml file.

How do I configure a new connection to allow SSL connections on port 8443. Everytime I edit the server.xml file manually, eclipse overwrites my changes with the settings it has stored in the server properties page of the configuration and it seems there is no way to add a new connector from the interface that eclipse provides.

Is this possible? Here is the connector I want to add:

<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" />

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

粉红×色少女 2024-07-30 19:32:25

如果您已经创建了服务器,则可以编辑它复制的 server.xml 模板。 如果您使用项目资源管理器,它位于“其他项目”->“服务器”->Tomcat 服务器名称->server.xml 下

If you've already created the server, you can edit the server.xml template it copies. If you use the project explorer, It is under Other Projects->Servers->Tomcat Server Name->server.xml

相守太难 2024-07-30 19:32:25

以下是让它发挥作用的方法:
创建密钥库:(

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

希望有帮助。

更多参考:Apache Tomcat 7 中的 SSL/TLS 配置方法

Here is how you get it to work:
Create the keystore:

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

(Follow through the prompts and fill in the information)
It should then save a keystore.key file to your home directory.
To get it to work in 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" />

The above path for keystoreFile is something you absolutely need to get right for this to work.
When eclipse uses a workspace metadata location to run tomcat, it copies over some files into a path that looks like the above.
On OS X this would be:

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

Hope that helps.

For More Reference : SSL/TLS Configuration HOW-TO in Apache Tomcat 7

甜宝宝 2024-07-30 19:32:25

我想到了。 当您首次在“服务器”视图中创建新服务器时,右键单击它并选择“新建”>“ 服务器。 Eclipse WTP 从 tomcat 安装中获取现有 server.xml 文件,并使用原始文件作为模板为您的项目创建新的 server.xml 文件。

如果您在 Eclipse 中创建新服务器之前使用所需的配置修改原始 server.xml,您将保留这些设置。

遗憾的是 Eclipse 不允许事后添加这些类型的配置。

I figured it out. When you first create a new server in the Servers view by right clicking in it and selecting New > Server. Eclipse WTP takes your existing server.xml file from the tomcat installation and creates the new server.xml file for your project using the original as a template.

If you modify the original server.xml with the configuration you need BEFORE creating a new server in eclipse you will retain those settings.

It's too bad eclipse doesn't allow adding these types of configurations after the fact.

带刺的爱情 2024-07-30 19:32:25

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

-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 中,右键单击 Project Explorer 窗口中的服务器名称,单击 Profile As | Profile As 配置文件配置| 参数,并将上面列出的相同选项附加到“VM 参数:”文本框。 这应该允许您在启用 SSL 的服务器上运行和调试程序。

Eclipse“VM 参数:”文本框

Provided you have the certificate(s) and keystore as mentioned earlier in this post, I found the following solution to configuring Eclipse to be able to communicate with SSL-enabled servers. When using the Tomcat configuration tool, you must add entries to the "Java" tab, "Java Options" text box, as follows:

-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

Similarly in Eclipse, right click on the server name in the Project Explorer window, click Profile As | Profile Configurations | Arguments, and append the same options listed above to the "VM Arguments:" text box. That should allow you to run and debug programs againse SSL-enabled servers.

Eclipse "VM Arguments:" text box

北陌 2024-07-30 19:32:25

只需在 cmd 上执行以下命令并替换 jre/lib/scurity 文件夹中的 cacerts 文件。它对我有用

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

simply execute below command on cmd and replace cacerts file in jre/lib/scurity folder.its work for me

keytool.exe -importcert -file folderName/certificateName.crt -keystore cacerts.jks -alias "abc"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文