服务器到服务器套接字的SSL加密.输入输出连接

SSL encryption over server to server socket.io connections

本文关键字:服务器 输入输出 连接 加密 套接字 SSL      更新时间:2023-09-26

我在使用套接字的单独盒子上有2个node.js实例。IO通信。虽然它们位于防火墙后面的同一个网络上,但我希望它们使用SSL加密进行通信。

下面的代码可以正常运行:

Server1:

require("socket.io").listen(9000);

Server2:

require("socket.io-client").connect("wss://10.0.0.1:9000");

虽然我没有提供任何密钥对,那么这里发生了什么?是否仅通过指定wss:就建立了安全通道?如果有,怎么做,没有钥匙吗?

顺便说一下,这不起作用…

require("socket.io-client").connect("https://10.0.0.1:9000");

(虽然http: does)

添加wss不会使连接使用ssl。

在客户端,有两种方法来指定ssl连接:

  • 使用https
require("socket.io-client").connect("https://10.0.0.1:9000");
  • 使用secure:true选项
require("socket.io-client").connect("10.0.0.1:9000",{secure: true});

或者你可以两者都做,以确保:

require("socket.io-client").connect("https://10.0.0.1:9000",{secure: true});