Porta aberta 5672 / tcp para acesso ao RabbitMQ no Mac

12

Eu tenho o RabbitMQ em sua versão mais recente instalada no meu Mac com a configuração padrão e, quando estou acessando a partir do localhost, não há problema algum. Hoje, porém, eu construo uma máquina Linux na rede local e não consigo conectar remotamente ao meu servidor RabbitMQ a partir dessa máquina. Desliguei todos os firewalls do meu Mac e tudo o que poderia bloquear a conexão. Sou perfeitamente capaz de me conectar ao MongoDB em execução em porta diferente e a qualquer outro aplicativo, ssh no meu macbook e assim por diante, mas não consigo me conectar ao RabbitMQ (mesmo quando altero a porta). Quando executo o nmapLinux para verificar se a porta apropriada está aberta no meu Mac, recebo o seguinte:

>> nmap -p 5672 192.168.1.101 
Nmap scan report for 192.168.1.101
Host is up (0.00019s latency).
PORT     STATE  SERVICE
5672/tcp closed amqp

Mas quando faço a mesma coisa no meu Mac:

>> nmap -p 5672 localhost
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00049s latency).
PORT     STATE SERVICE
5672/tcp open  amqp

Eu adicionei regra ipfwmanualmente e adicionei rabbitmq-serverà system preferences -> security -> firewall -> advancedlista de aplicativos para permitir todas as conexões recebidas por precaução, mas não ajudou. Alguma idéia de como forçar a porta a ser aberta para acesso à rede de outro computador na rede local? Quando eu faço o contrário (instale o rabbitmq no linux e conecte-o a partir do mac), ele funciona bem.

Kreeki
fonte

Respostas:

18

Quando instalei o RabbitMQ no Mac OS X, via brew, tive o mesmo problema com a porta 5672 sendo aberta apenas no host local.

Verificou-se que o arquivo /usr/local/etc/rabbitmq/rabbitmq-env.confcontinha uma entrada para NODE_IP_ADDRESSvinculá-lo apenas ao localhost. A remoção da NODE_IP_ADDRESSentrada da configuração liga a porta a todos os inferfaces da rede .

dorzey
fonte
5

Parece que o daemon está vinculando 127.0.0.1 em vez de 0.0.0.0, você pode verificá-lo usando a ferramenta netstat

Jose
fonte
3

O que funcionou para mim foi uma combinação das duas respostas anteriores.

Faça com que seu /usr/local/etc/rabbitmq/rabbitmq-env.conf fique assim:

CONFIG_FILE = / usr / local / etc / rabbitmq / rabbitmq

NODE_IP_ADDRESS = 0.0.0.0

NODENAME = rabbit @ localhost

(Se eu remover a entrada NODE_IP_ADDRESS completamente rabbitmq me fornecerá erros)

Rob Carpenter
fonte
0

qual conta você está usando para se conectar ao RabbitMQ. Se você estiver usando uma conta de convidado. Isso pode ajudar

https://www.rabbitmq.com/access-control.html

Shuliyey
fonte
1
O objetivo da SU é criar uma base de conhecimento em vez de uma coleção de links para respostas em outros lugares. Links externos podem ser interrompidos, caso em que sua resposta não teria valor. Por favor, inclua a informação essencial em sua resposta e use o link para a atribuição e leitura adicional ..
fixer1234