Letsencrypt / SSL Tomcat8 Ubuntu 16.04

padawan_IT

我已经按照互联网上的一些指南进行操作,但由于他们从现在开始没有告诉我做任何事情,所以我现在仍然受困。

我有一个带有Tomcat8的Ubuntu 16.04。我已经在Tomcat的webapps中部署了一个应用程序,并且在http上运行良好。然后,我使用letencrypt来获取证书,并在验证了Tomcat的设置之后,给了我4个.pem文件。

  • 全链

  • 证书

  • privkey.pem

现在,我不明白如何在Tomcat / conf / server.xml中链接/使用它们,以便能够访问端口443/8443上的应用程序。当我以非root用户身份安装Tomcat服务时,我已经为443到8443设置了端口转发。我将.pem文件放入Tomcat的conf文件夹中,因此server.xml就在它们旁边。

    <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
           maxThreads="150" SSLEnabled="true" >
    <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
    <SSLHostConfig>
        <Certificate certificateKeyFile="conf/privkey.pem"
                     certificateFile="conf/cert.pem"
                     certificateChainFile="conf/chain.pem"
                     type="RSA" />
    </SSLHostConfig>
</Connector>

这是我server.xml文件中的当前设置,但不起作用。预设也没有“ fullchain.pem”的位置,我也不知道是否需要更改其中带有“ org.apache”的行,因为我不知道它们实际上在做什么。

提前致谢。我设法在Windows和Ubuntu上进行了自签名证书,但是您总是会得到这种不安全的警告。有人告诉我letencrypt不会发生这种情况。

哈加莫夫

我将写出如何安装的方法:

下载certbot:

$ wget https://dl.eff.org/certbot-auto<br/>
$ chmod a+x certbot-auto

获取证书:

$ sudo /path/to/certbot-auto certonly --webroot -w /path/to/apache-tomcat-8.5/webapps/ROOT -d example.com

您的证书将下载到以下文件夹中:“ / etc / letsencrypt / live / YOUR_WEBSITE_HERE /”

像这样在server.xml中编辑HTTPS连接器

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true">
  <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol"/>
  <SSLHostConfig>
  <Certificate 
 certificateKeyFile="/etc/letsencrypt/live/YOUR_WEBSITE_HERE/privkey.pem" 
 certificateFile="/etc/letsencrypt/live/YOUR_WEBSITE_HERE/cert.pem" certificateChainFile="/etc/letsencrypt/live/YOUR_WEBSITE_HERE/chain.pem" 
 type="RSA" />
</SSLHostConfig>
</Connector>

加密证书通常有效期为90天,因此您需要定期更新证书。将以下行添加到crontab中:

0 0,12 * * * python -c 'import random; import time; time.sleep(random.random() * 3600)' && ./path/to/certbot-auto renew

我也写了一篇关于它的博客文章,您可以在这里找到:https : //www.gasimof.com/blog/enable-https-for-free-for-tomcat/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 Ubuntu 16-04 上安装 opencv

Tomcat8 SSL连接器

使用 cuda ubuntu 构建 c++ opencv 4 16/04

LetsEncrypt SSL上的IP地址

AJP 连接器 Ubuntu 16、Tomcat 8 在哪里?

Ubuntu 16,04 GUI 仅在切换到 tty 或从 tty 切换时更新

Ubuntu-16-04:如何从 wifi 托盘中移除 wifi 适配器

WSL,Ubuntu 16,04:apt-cache处于损坏状态

如何在openshift3中激活默认的ssl以在tomcat8上运行项目?

以下软件包具有未满足的依赖性:无法安装任何软件。Ubuntu的16:04

如何修复“ javax.net.ssl.SSLHandshakeException:TLS服务器证书在2019-04-16之后发布并由不受信任的旧版Symantec根CA锚定”

尝试使用LetsEncrypt在Python中运行SSL封装的BaseHTTPServer失败

如何在Heroku上安装LetsEncrypt SSL证书

LetsEncrypt 具有多域和多子域的 SSL 证书

如何在Ubuntu 16上安装JDK8?

php oci8模块未加载(ubuntu 16)

Tomcat8内存泄漏

OpenShift上的Tomcat8

远程调试Tomcat8

Tomcat8 ClassNotFoundException BasicDataSourceFactory

双启动Ubuntu 14 .04LTS

在Ubuntu 16上分区

无法获取LetsEncrypt SSL证书以与AWS Lightsail一起使用

如何解决错误以使用 Letsencrypt certbot 获取 SSL 证书?

与使用 Letsencrypt SSL(在 JDK7 上)保护的网站交谈时“未通过身份验证”

Apache2-SSH-LetsEncrypt SSL-Certbot-代理-手动设置:如何实现?

在 Forge 负载均衡器上安装 LetsEncrypt SSL 证书时出错

Maven是“无法找到到所请求目标的有效证书路径”-letsencrypt ssl证书

使用LetsEncrypt.org SSL证书签署Visual Studio应用程序