Невозможно остановить RabbitMQ от прослушивания через порт 25672 на всех интерфейсах
В настоящее время я работаю над приложением, использующим сельдерей в сочетании с rabbitmq, из-за проблем безопасности никакие сервисы, не требующие подключения к Интернету, должны слушать только на localhost.
Посмотрев вокруг, я нашел этот вопрос, который показывает, как я могу заставить большинство портов слушать только на локальном хосте, однако по какой-то причине порт 25672
остается открытым, который я определил как часть rabbitmq:
$ nmap -sV -p25672 -T5 <my server>
Starting Nmap 7.50 ( https://nmap.org ) at 2018-08-04 23:54 CEST
Nmap scan report for <my server> (<my server>)
Host is up (0.011s latency).
PORT STATE SERVICE VERSION
25672/tcp open unknown
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 124.87 seconds
На сервере:
$ lsof -i :25672
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
beam.smp 4513 rabbitmq 12u IPv4 473675236 0t0 TCP *:25672 (LISTEN)
man
В записи для rabbitmq не указано, как это изменить, и я не могу узнать, как это сделать онлайн. Может ли кто-нибудь указать мне в правильном направлении, как заставить его слушать на 127.0.0.1
скорее, чем 0.0.0.0
?
Редактировать: Ебать, iptables будет делать.
iptables -A INPUT -p tcp -s localhost --dport 25672 -j ACCEPT
iptables -A INPUT -p tcp --dport 25672 -j DROP
1 ответ
Я нашел это в документации через пять секунд после поиска rabbitmq port
...
listeners.tcp.1 = 127.0.0.1:5672 listeners.tcp.2 = ::1:5672
Или в классическом формате конфигурации:
[ {rabbit, [ {tcp_listeners, [{"127.0.0.1", 5672}, {"::1", 5672}]} ]} ].
(Предупреждение: вам, вероятно, нужны оба, поскольку localhost разрешается в:: 1 на всех ОС, выпущенных за последнее десятилетие или около того, и привязка только к 127.0.0.1 может вызвать проблемы у некоторых приложений.)