小白刚学rocketMQ,问下各位大佬,在部署多主多从的集群时,怎么保证name server与broker之间的安全

发布于 2022-08-16 11:29:50 字数 593 浏览 18 评论 8

1.部署情况:目前有两个服务器,集群是这样部署的:a主部署在阿里服务器中,a的从机部署在腾讯的服务器中,这两个服务器都开放了name server的相应端口;broker是直接通过公网ip+端口进行访问的

                      阿里服务器                                                                      腾讯服务器

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

橘寄 2022-08-20 01:36:35

我觉得还是这个方案好些,云服务厂商都有白名单这些功能,不过节点多了也不好维护

没有伤那来痛 2022-08-20 01:32:48

云服务器的白名单机制了解一下,设置ip白名单不就得了

我家小可爱 2022-08-20 01:26:53

看起来更像是跨云高可用吧

鸵鸟症 2022-08-20 01:11:41

都穷成这样了还在用集群?

笑咖 2022-08-20 00:26:59

因为没钱:sob:,两个服务器都是享受新人优惠的,合计就120多

青萝楚歌 2022-08-19 23:23:39

确实不安全 为什么不用同一家的云服务 然后通过内网通讯

轻许诺言 2022-08-19 19:35:11

十分感谢大佬耐心指导,确实刚接触消息队列,对机制理解不清楚,回去试试看

情绪 2022-08-19 18:16:27

这个问题的确存在,不过既然是公开的MQ broker一定会有避免的方法。避免的方法就是认证机制。服务器只需要开启用户名和密码授权就可以了。这样你就算使用相同的clientId也无法冒充,因为client在提交时必须提交用户名和密码。这点你随便 下载一个MQ的客户端就会知道在MQ客户端发布生产消息时需要提交userName和password,在broker/agent转发前会验证客户端提交过来的user和pwd这样如果别人用相同的clientId伪造同主题的内容发送过来时,在用户和密码验证时就会报错!

题主说的这种情况不知道题主仔细了解过MQ的机制没有?MQ的broker只是一个代理,生产者将主题publish到broker上,消费者订阅这个主题,而这个并不需要同步完成。

以阿里MQ服务为例:

打比方有一台智能冰箱生产者想把温度和当前工作状态发送到手机(消费)可以这样做。

1.阿里云建空主题设置clientId:冰箱、主题名:冰箱温度、工作状态。

2.手机作为MQ的客户端订阅这个空主题。

3.冰箱上线上以另一个MQ客户端连接到阿里云broker,以clientId:冰箱的身份发送主题名为冰箱温度,值:5度到阿里云。

4.这时手机订阅了冰箱温度主题,会收到阿里云broker推送的订阅消息。当然开关状态也是同理。

5.题主是担心有其它客户端冒充冰箱的clientId提交假的温度吧,其实mq都有授权设置。在第1步建立主题时分配一个用户名和密码出来,而这时真正的冰箱是知道用户名和密码的,这时其只需要在以冰箱为client 发布生产主题时以分配的用户和密码一同提交就不会被拦截,否则冒充的客户端只要没有提交正确的用户名和密码就会被拦截!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文