首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Tomcat上为HTTPS配置certbot证书?

如何在Tomcat上为HTTPS配置certbot证书?
EN

Stack Overflow用户
提问于 2018-11-11 17:11:18
回答 1查看 3.3K关注 0票数 1

在我使用HTTPS协议的学校里,我一直在尝试为Tomcat8.5服务器配置SSL。由于我们没有购买带有CA的证书,所以我使用certbot获得免费证书。我做了一些配置,我的Tomcat在HTTP上服务,但还没有在HTTPS上服务,日志上没有错误。这就是我所做的。

WindowsServer2012上安装了WindowsTomcat8.5。两年来,它一直完美地在常规HTTP上为应用程序提供服务。

-Certbot不支持Windows,因此我不得不在VM上安装Ubuntu16.04。-I在Ubuntu上成功地安装了certboot。-I使用folowing命令获取我的certbot证书:

代码语言:javascript
复制
sudo certbot certonly --preferred-challenges http --manual -d theDomainOfMySchool.com

-After成功地完成了ACME的挑战,我得到了以下4个.pem文件: cert1.pem、chain1.pem、fulchain1.pem和privkey1.pem。

-All 4文件是base64中的明文,就像我在这里粘贴的摘录一样:

代码语言:javascript
复制
-----BEGIN CERTIFICATE-----
MIIFYTCCBEmgAwIBAgISAwyxKh7NQWpNnH6w2enPbOlxMA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD

-After为复制/etc/letsencrypt/归档中的4个文件进行了一段时间的斗争,我将它们放置在中的Tomcat服务器文件夹中。-I将Tomcat配置为server.xml上的以下节点:

代码语言:javascript
复制
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true" >
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig>
            <Certificate certificateKeyFile="conf/cert/certbot_gallery/privkey1.pem"
                         certificateFile="conf/cert/certbot_gallery/cert1.pem"
                         certificateChainFile="conf/cert/certbot_gallery/chain1.pem"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>

    <Connector port="80" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

   <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

-When我启动我的Tomcat,日志上没有错误。

-The服务器启动良好,在HTTP上服务没有问题。

-When我尝试通过HTTPS访问应用程序,我在浏览器上获得了ERR_CONNECTION_RESET。

我做错什么了。这种证书不适合这个Tomcat连接器吗?我错过任何配置了吗?

谢谢你们所有人。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-11 20:29:44

解决了!事实证明,我就像美元一样。我的server.xml上的配置是错误的。Http11NioProtocol的连接器应该使用端口443 (这是HTTPS的默认端口),而不是8443。在certboot上配置的其余部分和证书的请求都是可以的。

我认为使用8443是为了防止Tomcat在Apache或其他方面的背后。因为我直接使用Tomcat,而且只使用Tomcat,所以连接器端口应该是443。此外,确保防火墙允许443端口。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53251171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档