discuz 发表于 2021-1-10 22:42:21

Node-RED中tcp in节点如何配置ssl?

首先,如果要自己写解析密文的话,工作量有点大.

我想用tcp in节点做个服务,监听某个端口发送来的数据,如果此数据是加密的,这里tcp in节点想要配置ssl证书,发现没有给接口,然后查找一堆节点,找不到可以在后面配置ssl解析的节点。有大佬用过的话请告知下,
或者,如果此路不通,还有没有在Node-RED中其他实现的方法?
谢谢!

neroxps 发表于 2021-1-11 17:52:00

所以你首先要搞清楚你接入的设备到底跑的什么协议,私有的TCP 数据,还是 HTTPS 还是MQTT+ssl

discuz 发表于 2021-1-11 21:47:40

neroxps 发表于 2021-1-11 17:52
所以你首先要搞清楚你接入的设备到底跑的什么协议,私有的TCP 数据,还是 HTTPS 还是MQTT+ssl ...

我这个服务要映射到外网访问。是基于TCP协议的HTTPS协议的数据。

当然,可以有其他很多种方法。比如装Python、java、php的框架,但这些比较大型的框架占用资源太多,而且速度也不快。
我在电脑上编译了一个轻量级的响应服务,速度倒是快,但一直开着电脑也不行,移植到树莓派上还要装编译环境,我终究是不想在树莓派上安装太多的额外东西,本着在已有的基础上能用则用的原则考虑。

NR有http节点,但是NR这个http节点做服务,访问时需要输入NR的用户名和密码,这个访问是从外部(别人的服务器)推送来的数据,所以我也不能把用户名和密码给到对方,如果不设置密码,则整个NR完全暴露了。然后找了下,只找到TCP in节点,如果有其他节点可用,请大神提示下。至于http协议,比较简单,可以自己解析后回复。现在要处理https,需要将加密的数据解密,并将回复的数据传回之前再加密。现在需要这两点功能。

neroxps 发表于 2021-1-11 22:07:27

discuz 发表于 2021-1-11 21:47
我这个服务要映射到外网访问。是基于TCP协议的HTTPS协议的数据。

当然,可以有其他很多种方法。比如装Py ...

nodered 本质上就是 nodejs。auth不是很难吧套个 nginx proxy 加上认证套 ssl就是了,限制下 url。不是什么难事。

yyddyym 发表于 2021-1-15 14:40:14

就用http in 就可以了呀,做个认证子流,通过token认证。

yyddyym 发表于 2021-1-15 14:41:29

http in 请求是不需密码的,认证用jwt节点做token认证

discuz 发表于 2021-1-26 08:55:42

neroxps 发表于 2021-1-11 22:07
nodered 本质上就是 nodejs。auth不是很难吧套个 nginx proxy 加上认证套 ssl就是了,限制下 url。不是什 ...

谢谢!以前没怎么研究过nginx,发现这个很简单,配置下location就实现了想要的结果。其他路径要密码,配置的路径直接访问。

discuz 发表于 2021-1-26 09:00:08

yyddyym 发表于 2021-1-15 14:41
http in 请求是不需密码的,认证用jwt节点做token认证

谢谢回复!

Node-RED如果设置了密码,http in请求也是需要密码的。

你这个方法没试过,看了下要装些东西,我就从已经安装了的nginx配置文件入手了

yyddyym 发表于 2021-2-1 14:46:19

nr设置的密码好像只在nr的编辑页登录时要认证吧,http in 是没认证的,我现在在运行的服务都是用token 认证

zws1023 发表于 2021-3-10 17:53:40

楼主解决了吗。 我想发送数据给NR http in 也是提示要输入用户名密码,输入了也不能访问。
页: [1] 2
查看完整版本: Node-RED中tcp in节点如何配置ssl?