Назад | Перейти на главную страницу

Что-то фильтрует порт 27017, даже если брандмауэр не работает

Добрый день,

Я пытаюсь переместить базу данных mongodb, чтобы отделить VPS от приложения, но VPS был предварительно настроен не мной. У меня есть экземпляр с запущенным mongodb на порту 27017:

COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  2073 mongodb   11u  IPv4   6155      0t0  TCP localhost:27017 (LISTEN)

Я настроил брандмауэр ufw, который открывает 27017 для всех (пока):

To                         Action      From
--                         ------      ----
22                         ALLOW IN    Anywhere
27017/tcp                  ALLOW IN    Anywhere
22                         ALLOW IN    Anywhere (v6)
27017/tcp                  ALLOW IN    Anywhere (v6)

Anywhere                   ALLOW OUT   27017/tcp
Anywhere (v6)              ALLOW OUT   27017/tcp

Но забавно то, что тогда я делаю 'nmap -p 27017 --IP--', он показывает мне это:

Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn

если запустить 'nmap -p 27017 --IP-- -Pn':

PORT      STATE  SERVICE
27017/tcp closed unknown

И, конечно, я не могу подключиться к mongodb с помощью tcp 27017, но я могу подключиться по ssh или через ssh. Если я выключу брандмауэр с помощью (ufw disable), состояние порта изменится на фильтрованный и я все еще не могу его использовать.

Похоже, что вторичный брандмауэр управляет портом 27017, но я не могу найти, как его отключить. Я озадачен, у кого-нибудь есть подсказка?

вот полный список правил iptables: https://gist.github.com/skatkov/b0d1173de5f319f2872d

Ваш вывод ясно показывает, что mongod слушает только на localhost. Если вы хотите установить к нему удаленные подключения, вы должны указать ему, чтобы он прослушивал подключения с удаленных хостов.

В mongodb.conf у тебя есть:

bind_ip = 127.0.0.1

Удалите это или замените на что-нибудь более подходящее.