Desativa a porta de escuta do EPMD (4369) no Ubuntu / RabbitMQ

3

Estou tentando proteger uma instalação do RabbitMQ e não tenho certeza de como proteger a porta Erlang EPMD. Eu só tenho uma máquina rodando qualquer coisa, então eu gostaria de fazer com que ela ouvisse apenas no dispositivo de loopback. Por os documentos , adicionei:

ERL_EPMD_ADDRESS=127.0.0.1

para /etc/rabbitmq/rabbitmq-env.conf , mas isso não tem efeito, pois a porta ainda está aberta em nmap de um sistema remoto.

Existe uma maneira de bloquear essa porta que não usarei?

    
por Jack M. 24.06.2011 / 20:56

1 resposta

1

Esta porta já está segura. O acesso a essa porta é controlado por um Cookie, que é basicamente uma chave de desenvolvedor exclusiva deste servidor e é criada no momento da instalação. Provavelmente está localizado em /var/lib/rabbitmq/.erlang.cookie, embora seja possível que uma distro altere esse local. Você notará que o arquivo de cookie só pode ser lido pelo usuário root.

Se um nó remoto (outro servidor) ou um nó local (outra instância Erlang neste servidor) quiser se comunicar com seu servidor RabbitMQ, eles devem apresentar o cookie ao se comunicar via EPMD ou os pedidos serão ignorados.

Se você estiver seguindo as melhores práticas do RabbitMQ, o RabbitMQ será executado em seu próprio servidor e haverá dois ou três outros servidores RabbitMQ que estão em cluster com ele. Nesse contexto, "clusterizado" significa compartilhar o mesmo cookie e se comunicar pela mesma porta do EPMD. Bloquear essa porta é uma coisa ruim.

No entanto, geralmente é bom ter um perímetro ao redor do cluster, que é gerenciado por um firewall para que a porta EPMD possa ser usada apenas dentro do perímetro. Isto implica que o bloqueio está em um dispositivo de firewall, ou um servidor agindo como um firewall, ou um firewall EC2 ou similar.

    
por 10.11.2011 / 06:04