如何在Apache Httpd中避免不安全的websockets请求?

时间:2018-02-02 19:56:36

标签: apache tomcat ssl websocket

我在Websocket Tomcat服务器前面有一个Apache服务器,我想限制只能访问安全的websockets(wss://)。

如何在Apache配置中实现这一目标?

我不明白的一件事是,即使我在AWS上阻止了端口80(而不是443),我仍然可以通过Simple WebSocket Client连接到我的不安全的ws,而telnet myHost 80是逻辑上失败......

1 个答案:

答案 0 :(得分:0)

实际上,使用SSL配置Apache就足够了:它会将所有HTTP流量重定向到HTTPS。

我没想到这一点,但我只能在浏览器通过简单的HTTP请求重定向到HTTPS之后才能连接WS协议。然后,当我尝试使用WS连接时,查看Chrome Developer工具,我可以在请求标头中看到最终端点是WSS。

因此,在Simple WebSocket Client中,当我尝试连接不安全的WS时,我实际上是静默地重定向到WSS端点。正如我之前所说,只有在浏览器中的简单调用上进行HTTP到HTTPS重定向后才能启用此静默重定向。您可以通过关闭浏览器并尝试通过Simple WebSocket Client重新连接WS来检查它:您将收到403 HTTP错误。