我一直在尝试让 Tomcat(特别是 Tomcat 9)在 GCE 上运行,并为其启用 SSL,但收效甚微。我已经在另一台计算机上运行了这个配置,我可以在没有真正复杂的情况下完成这两件事。
我做过/尝试过的事情:
- 向文件添加了 SSL 连接器
server.xml
。 - 将属性添加到文件中
address
的预配置连接器和 SSL 连接器。0.0.0.0
server.xml
- 添加了一个新的防火墙规则来启用端口
tcp 80, tcp 8080, tcp 8084(custom), udp 443, udp 8443
。 - 尝试将引擎和主机从本地主机更改为命名主机。
- 标记
Allow HTTP traffic
和Allow HTTPS traffic
在 VM 实例上。
防火墙规则如下所示: Image
但是,我仍然无法访问 Tomcat,无论是在端口8080
/上8084
,还是通过 HTTPS(端口8443
),都无法访问ERR_CONNECTION_TIMED_OUT
. 我不确定我还能改变什么来让它发挥作用。我可以使用 IP 地址和命名主机访问其他资源;只是为了添加更多上下文,其他东西正在端口上运行8080
,我可以访问它,所以我不能在那里访问 Tomcat 是有道理的,但8084
应该是免费的。
有谁知道我是否可能遗漏了什么?我跑了iptables -L -v -n
,得到以下信息:
Chain ufw-user-input (1 references)
pkts bytes target prot opt in out source destination
628 32164 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8080
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:8080
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8443
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:8443
102 4496 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
0 0 ACCEPT udp -- * * 0.0.0.0/0 0.0.0.0/0 udp dpt:443
1439 83204 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
977 57800 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
对此的任何帮助将不胜感激!在 Tomcat 和 GCE 中,我还是个新手,所以也许我只是什么都没看到。
编辑:我已经解决了通过常规方式连接到 Tomcat 的问题,因为我忘记了ufw allow
为我正在使用的自定义端口运行。但是,我仍然遇到与 SSL 连接的问题。