ubunturabbitmqerlangbeam

Rabbitmq listens on all interfaces


It appears that my rabbitmq listens on all interfaces despite:

In /etc/rabbitmq/rabbitmq.config:

[{rabbit, [{tcp_listeners, [{"10.0.0.1", 5672}]}]},
  {rabbitmq_mochiweb, [{listeners, [{mgmt, [{ip, "10.0.0.1"},
                                            {port, 55672}]}]}]}].

In /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

When i run netstat -uptan | grep beam i get:

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

How do i make beam not listening on 0.0.0.0:33551 ?


Solution

  • tcp 0 0 127.0.0.1:38737 127.0.0.1:4369 ESTABLISHED 1378/beam says that beam process enables Erlang distributed protocol and connected to epmd daemon on 127.0.0.1:4369. Also beam process waits for incoming connections on 0.0.0.0:33551. This interface secured with Erlang cookies and rabbitmqctl uses it to connect to RabbitMQ instance and manage it.

    To make it able to accept connections only from localhost you can: