Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Websocket 当连接到未加密的后端时,mod_proxy_wstunel是否加密数据?_Websocket_Mod Proxy_Ratchet - Fatal编程技术网

Websocket 当连接到未加密的后端时,mod_proxy_wstunel是否加密数据?

Websocket 当连接到未加密的后端时,mod_proxy_wstunel是否加密数据?,websocket,mod-proxy,ratchet,Websocket,Mod Proxy,Ratchet,我是WebSocket新手,我有以下设置(如下)。我试图确定的是,从Apache返回到浏览器的通信是否真正安全 我正在通过wss://(端口443)启动从浏览器到Apache的WebSocket连接。通过mod_proxy_wstunnel,我通过端口8080上的非安全ws://连接连接到Ratchet 当Ratchet通过非安全端口8080发回数据帧时,mod_proxy_wstunnel是否会加密数据,以便Apache将其发送回加密的浏览器 |---------| 443 |------

我是WebSocket新手,我有以下设置(如下)。我试图确定的是,从Apache返回到浏览器的通信是否真正安全

我正在通过wss://(端口443)启动从浏览器到Apache的WebSocket连接。通过mod_proxy_wstunnel,我通过端口8080上的非安全ws://连接连接到Ratchet

当Ratchet通过非安全端口8080发回数据帧时,mod_proxy_wstunnel是否会加密数据,以便Apache将其发送回加密的浏览器

|---------|  443  |--------------|     |--------------------|  8080  |---------|
| Browser | <---> | Apache httpd | <-> | mod_proxy_wstunnel | <----> | Ratchet |
|---------|       |--------------|     |--------------------|        |---------|
|--------------------443 |--------------------8080|---------|
|浏览器| | Apache httpd | | mod|u proxy | wstunel | | Ratchet|
|---------|       |--------------|     |--------------------|        |---------|
我知道初始连接是通过端口443上的HTTPS完成的,并通过WebSocket握手交换协议。但根据协议切换后的说法,“HTTP连接中断,并由相同底层TCP/IP连接上的WebSocket连接替换。默认情况下,WebSocket连接使用与HTTP(80)和HTTPS(443)相同的端口。”


仅仅因为它在同一个端口上通信,对我来说并不一定意味着它仍然是真正加密的,特别是当HTTP连接“中断”时。在这个例子中,我认为mod_proxy_wstunnel只是简单地从Ratchet转发数据,因此数据在端口443上不安全地传递,给人一种错误的安全感。

除了在后端使用Crossbar IO而不是Ratchet之外,我的设置完全相同

我使用Wireshark来调查安全连接和不安全连接的数据包。我可以很容易地读取不安全连接的数据(正如您所期望的)。当我切换到安全模式时,Wireshark甚至没有意识到使用了websocket协议,我也看不到任何类似我的数据

由此我得出结论,mod_proxy_wstunnel会像您希望的那样加密它发送回浏览器的数据