HTTPS无法在Google Compute Engine上运行
我想知道是否有人在Google Compute Engine(而不是GAE)实例上使用SSL和HTTPS。 我无法在我的网站上使用HTTPS:浏览器和在线测试工具无法连接到我的服务器。
我的环境是ubuntu-1404-trusty-v20141212和Tomcat 8。
这是我做的:
- 我在实例的网络设置上勾选了“允许HTTP”和“允许HTTPS流量”
- 安装了我的4美元Comodo证书。
- 在
server.xml
上使用as-is Connector配置,仅添加了密钥库和密码
当我启动Tomcat并转到https://mysite.com:8443
时,我收到上述错误。 一些诊断是:
- 记录
catalina.out
并没有说严重的事情。 -
使用
netstat -ntlp |grep :8443
tcp 0 0 0.0.0.0:8443 0.0.0.0:* LISTEN 8500/java
显示我的tomcat正在收听8443
最后,我创建了一个具有相同环境的AWS EC2实例,并安装了我的SSL证书。 它立即工作,没有任何修补端口和防火墙。 任何关于如何使SSL在GCE上工作的建议都值得赞赏。
自己搞清楚了。 怀疑,这确实与防火墙有关。 在GCE实例中允许HTTPS流量时,默认端口为443而不是8443.更改侦听端口或更改防火墙规则:
Google Developers Console->计算引擎 – >网络 – >与实例关联的网络名称 – >防火墙规则。
列出了几条规则,在我的例子中我需要修改default-allow-https
- Java applet无法在Java8 / HTTPS上加载
- 带有效证书的spring boot https获取ERR_SSL_VERSION_OR_CIPHER_MISMATCH,自签名工作正常
- 如何强制java服务器只接受tls 1.2并拒绝tls 1.0和tls 1.1连接
- Spring Boot将HTTP重定向到HTTPS
- 具有自签名证书的Java SSL连接,无需将完整密钥库复制到客户端
- Java8,HttpClient,收到“收到致命警报:handshake_failure”
- HttpsUrlConnection和keep-alive
- Https请求,Android中的身份validation
- 如何使用https / ssl与Maven / Mortbay Jetty插件?