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

Может ли порт находиться в состоянии прослушивания и быть закрытым?

Серверы под управлением Debian7.7, Mongodb 1.2.0.6-1.1, Nmap6.0 - Спасибо за ваше время.

У меня есть пользователь, который не может подключиться к mongodb со своего рабочего стола Win7. На нем установлен mongodb, и он пытается подключиться через CML. Между ними нет брандмауэра. Но они находятся в разных VLAN. Пользователь может подключиться к серверу с помощью SSH.

Я думал, что если порт находится в состоянии прослушивания, он открыт и может принимать соединение от клиента. Разве это не так?

C:\MongoDB-2.6.6\bin>mongo xxx.xx.xx.xxx -u username -p passwd
MongoDB shell version: 2.6.6
connecting to: xxx.xx.xx.xxx/test
2015-01-28T12:58:05.746-0600 warning: Failed to connect to xxx.xx.xx.xxx:27017,
reason: errno:10061 No connection could be made because the target machine actively refused it.
2015-01-28T12:58:05.747-0600 Error: couldn't connect to server xxx.xx.xx.xxx:27017 (xxx.xx.xx.xxx), 
connection attempt failed at src/mongo/shell/mongo.js:148
exception: connect failed
root@xxxxx:/# lsof -i :27017
COMMAND  PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  5128 mongodb    8u  IPv4   9393      0t0  TCP localhost:27017 (LISTEN)

root@xxxxx:/# nmap -p 27017 xxx.xx.xx.xxx

Starting Nmap 6.00 ( http://nmap.org ) at 2015-01-29 11:20 CST
Nmap scan report for xxxxxx.xxxxxx.xxx (xxx.xx.xx.xxx)
Host is up (0.000031s latency).
PORT      STATE  SERVICE
27017/tcp closed unknown

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

Служба прослушивает только адаптер обратной петли. Если вы используете -n возможность lsof (или netstat или ss), вы увидите, что адрес прослушивания 127.0.0.1:27017. Это означает, что соединения, сделанные с вашим сетевым IP-адресом, не будут достигнуты процессом прослушивания.

Похоже, вам нужно установить net.bindIp вариант конфигурации.