Ubuntu Rabbitmq侦听所有接口

Ubuntu Rabbitmq侦听所有接口,ubuntu,rabbitmq,erlang,beam,Ubuntu,Rabbitmq,Erlang,Beam,我的rabbitmq似乎会侦听所有接口,尽管: 在/etc/rabbitmq/rabbitmq.config中: [{rabbit, [{tcp_listeners, [{"10.0.0.1", 5672}]}]}, {rabbitmq_mochiweb, [{listeners, [{mgmt, [{ip, "10.0.0.1"}, {port, 55672}]}]}]}]. 在/etc/rabbit

我的rabbitmq似乎会侦听所有接口,尽管:

在/etc/rabbitmq/rabbitmq.config中:

[{rabbit, [{tcp_listeners, [{"10.0.0.1", 5672}]}]},
  {rabbitmq_mochiweb, [{listeners, [{mgmt, [{ip, "10.0.0.1"},
                                            {port, 55672}]}]}]}].
在/etc/rabbitmq/rabbitmq-env.conf中:

export RABBITMQ_NODENAME=rabbit
export RABBITMQ_NODE_IP_ADDRESS=10.0.0.1
export ERL_EPMD_ADDRESS=10.0.0.1
当我运行netstat-uptan | grep beam时,我得到:


如何使beam不监听0.0.0:33551?

tcp 0 127.0.0.1:38737 127.0.0.1:4369建立1378/beam表示beam进程在
127.0.0.1:4369
上启用并连接到守护程序。另外,beam进程在
0.0.0.0:33551
上等待传入连接。此接口由Erlang Cookie和
rabbitmqctl
保护,用于连接到RabbitMQ实例并对其进行管理

要使其只能接受来自本地主机的连接,您可以:

  • 使用shell中的
    -kernel inet\u dist\u使用接口“{127,0,0,1}”
    标志或创建my\u rabbitmq.conf:

    [{kernel,[{inet\u dist\u use\u interface,{127,0,0,1}]}]

    并用于包含它:
    export-RABBITMQ\u-CONFIG\u-FILE=“/path/to/my\u-RABBITMQ.conf”
    使用配置文件

  • 输入您的
    /etc/rabbitmq/rabbitmq.conf
    export-ERL\u-EPMD\u-ADDRESS=127.0.0.1


现在我决定使用防火墙,这样公共接口只接受我需要的东西。
tcp        0      0 10.0.0.1:5672           0.0.0.0:*               LISTEN      1378/beam
tcp        0      0 0.0.0.0:33551           0.0.0.0:*               LISTEN      1378/beam
tcp        0      0 127.0.0.1:38737         127.0.0.1:4369          ESTABLISHED 1378/beam