puerto - rabbitmq server jar
¿Qué puertos usa RabbitMQ? (4)
¿Qué puertos usa RabbitMQ?
Valor predeterminado: 5672, el manual tiene la respuesta. Está definido en la variable RABBITMQ_NODE_PORT
.
https://www.rabbitmq.com/configure.html#define-environment-variables
El número podría ser diferente si alguien en el archivo de configuración rabbitmq lo cambiara:
vi /etc/rabbitmq/rabbitmq-env.conf
Pídale a la computadora que le diga:
sudo nmap -p 1-65535 localhost
Starting Nmap 5.51 ( http://nmap.org ) at 2014-09-19 13:50 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00041s latency).
PORT STATE SERVICE
443/tcp open https
5672/tcp open amqp
15672/tcp open unknown
35102/tcp open unknown
59440/tcp open unknown
Oh mira, 5672 y 15672
Use netstat:
netstat -lntu
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:55672 0.0.0.0:* LISTEN
tcp 0 0 :::5672 :::* LISTEN
Oh, mira 5672.
usa lsof:
eric@dev ~$ sudo lsof -i | grep beam
beam.smp 21216 rabbitmq 17u IPv4 33148214 0t0 TCP *:55672 (LISTEN)
beam.smp 21216 rabbitmq 18u IPv4 33148219 0t0 TCP *:15672 (LISTEN)
use nmap desde una máquina diferente, descubra si 5672 está abierto:
sudo nmap -p 5672 10.0.1.71
Starting Nmap 5.51 ( http://nmap.org ) at 2014-09-19 13:19 EDT
Nmap scan report for 10.0.1.71
Host is up (0.00011s latency).
PORT STATE SERVICE
5672/tcp open amqp
MAC Address: 0A:40:0E:8C:75:6C (Unknown)
Nmap done: 1 IP address (1 host up) scanned in 0.13 seconds
Intente conectarse a un puerto manualmente con telnet, 5671 está CERRADO:
telnet localhost 5671
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
Intente conectarse a un puerto manualmente con telnet, 5672 está ABIERTO:
telnet localhost 5672
Trying 127.0.0.1...
Connected to localhost.
Escape character is ''^]''.
Verifica tu firewall:
sudo cat /etc/sysconfig/iptables
Debería decirle qué puertos están abiertos:
-A INPUT -p tcp -m tcp --dport 5672 -j ACCEPT
Vuelva a aplicar su firewall:
sudo service iptables restart
iptables: Setting chains to policy ACCEPT: filter [ OK ]
iptables: Flushing firewall rules: [ OK ]
iptables: Unloading modules: [ OK ]
iptables: Applying firewall rules: [ OK ]
¿Qué puertos usa o necesita tener RabbitMQ Server en el firewall para un clúster de nodos?
Mi /usr/lib/rabbitmq/bin/rabbitmq-env
se establece debajo de lo que asumo que son necesarios (35197).
SERVER_ERL_ARGS="+K true +A30 +P 1048576 /
-kernel inet_default_connect_options [{nodelay,true}] /
-kernel inet_dist_listen_min 35197 /
-kernel inet_dist_listen_max 35197"
No he tocado el rabbitmq.config
para establecer un tcp_listener
personalizado, tcp_listener
lo que debería estar escuchando en el 5672 predeterminado.
Aquí están las líneas netstat relevantes:
tcp 0 0 0.0.0.0:4369 0.0.0.0:* LISTEN 728/epmd
tcp 0 0 0.0.0.0:35197 0.0.0.0:* LISTEN 5126/beam
tcp6 0 0 :::5672 :::* LISTEN 5126/beam
Mis preguntas son:
para que otros nodos puedan conectarse al clúster, ¿deben abrirse los 3 puertos 4369, 5672 y 35197?
¿Por qué no se ejecuta 5672 en tcp y no solo en tcp6?
Acceso al puerto
Los firewalls y otras herramientas de seguridad pueden evitar que RabbitMQ se enlace a un puerto. Cuando eso suceda, RabbitMQ no podrá comenzar. Asegúrese de que se pueden abrir los siguientes puertos:
4369: epmd, un servicio de descubrimiento de pares utilizado por los nodos de RabbitMQ y herramientas CLI
5672, 5671: utilizado por AMQP 0-9-1 y 1.0 clientes sin y con TLS
25672: utilizado por la distribución de Erlang para la comunicación de herramientas entre nodos y CLI, y se asigna desde un rango dinámico (limitado a un puerto único por defecto, calculado como puerto AMQP + 20000). Ver la guía de redes para más detalles.
15672: clientes API API y rabbitmqadmin (solo si el complemento de administración está habilitado)
61613, 61614: clientes STOMP sin y con TLS (solo si el complemento STOMP está habilitado)
1883, 8883: (clientes MQTT sin y con TLS, si el complemento MQTT está habilitado
15674: clientes STOMP-over-WebSockets (solo si el complemento Web STOMP está habilitado)
15675: clientes MQTT-over-WebSockets (solo si el complemento web MQTT está habilitado)
Documento de referencia: https://www.rabbitmq.com/install-windows-manual.html
PUERTO 4369: Erlang utiliza un Daemon de Port Mapper (epmd) para la resolución de nombres de nodo en un clúster. Los nodos deben poder comunicarse entre sí y el daemon del asignador de puertos para que la agrupación funcione.
PUERTO 35197 establecido por inet_dist_listen_min / max Los firewalls deben permitir que el tráfico en este rango pase entre los nodos agrupados
Consola de administración RabbitMQ:
- PORT 15672 para RabbitMQ versión 3.x
- PORT 55672 para RabbitMQ pre 3.x
Puerto principal 5672
RabbitMQ.
Para un grupo de nodos, deben estar abiertos entre sí en 35197
, 4369
y 5672
.
Para cualquier servidor que quiera usar la cola de mensajes, solo se requiere 5672
.
Para saber qué puertos usa rabbitmq :
$ epmd -names
Productos:
epmd: up and running on port 4369 with data:
name rabbit at port 25672
Ejecuta estos como root:
lsof -i :4369
lsof -i :25672