首页 > Java > 正文

如何在 Ubuntu 中为 Tomcat 设置 SSL 证书

PHPz
发布: 2024-02-22 13:52:09
转载
1214 人浏览过

php小编鱼仔为您带来本期Java问答,今天的话题是如何在Ubuntu中为Tomcat设置SSL证书。SSL证书是保障网站安全的重要组成部分,对于运行在Tomcat服务器上的网站来说尤为重要。在Ubuntu系统中配置SSL证书可能会有一些复杂,但只要按照正确的步骤进行操作,就能成功设置SSL证书,保护您的网站数据安全。接下来就让我们一起来了解如何在Ubuntu中为Tomcat设置SSL证书吧!

问题内容

我使用 https://zerossl.com 作为证书,他们为我提供了这些文件:

  • ca_bundle.crt
  • 证书.crt
  • 私钥

然后我运行这些命令

生成p12文件

openssl pkcs12 -export -in certificate.crt -inkey private.key -out keystore.p12 -name tomcat -cafile ca_bundle.crt -caname root -chain
登录后复制

生成jks文件

keytool -importkeystore -srckeystore certifcate.p12 -srcstoretype pkcs12 -destkeystore mykeystore.jks -deststoretype pkcs12
登录后复制

然后我编辑我的 /opt/tomcat/conf/server.xml

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
   maxThreads="150" scheme="https" secure="true"
   keystoreFile="/path/to/your/keystore.jks" keystorePass="your_keystore_password"
   keyAlias="tomcat" keyPass="your_key_password"
   clientAuth="false" sslProtocol="TLS" />
登录后复制

我不确定为什么 ssl 证书不起作用。如果有人告诉我我是否遗漏了什么,我将不胜感激。

解决方法

所以你做得太多了。您不需要将密钥转换为 jks 密钥库。 jks 是 java 最初的密钥库格式,是一种专有格式。从那时起,pkcs12 出现了,java 终于支持了它,所以我建议只使用 p12 文件,并配置 tomcat 来读取 pkcs12,而不是尝试使用 jks。

但是,为了快速回答,您从 pkcs12 -> jks 进行的转换例程并未保存 jks 文件。 -deststoretype pkcs12 应该是 -deststoretype jks 但是,我们将为 pkcs12 执行此操作,因为那是“未来”。从技术上讲,tomcat 从 5.0 开始就支持 pkcs12,但未来是这样的。

无论如何,这里是您如何在 tomcat 的设置中使用 p12 证书。

<Connector port="8443" 
           protocol="org.apache.coyote.http11.Http11NioProtocol" 
           SSLEnabled="true"
           maxThreads="150"
           scheme="https"
           secure="true"
           clientAuth="false" 
           sslProtocol="TLS" 
           keystoreFile="/your/path/certificate.p12"
           keystorePass="xxxxsomething_secretxxxxx"
           keystoreType="PKCS12" />
登录后复制

以上是如何在 Ubuntu 中为 Tomcat 设置 SSL 证书的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:stackoverflow.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!