У меня возникли проблемы с подключением к удаленному серверу базы данных.
У меня Windows 10клиенти могу успешно подключиться к моему Ubuntu 16серверс помощью putty через SSH, в том числе с парой ключей.
Теперь у меня есть сервер MongoDB, работающий на сервере, к которому я хочу подключиться с моего клиента, но я не хочу, чтобы сервер был открыт больше, чем необходимо (он в любом случае не предназначен для публичного использования) для интернета, поэтому я хочу использовать свой туннель SSH и перенаправить через него нужный порт. У меня нет проблем с использованием сервера базы данных локально с сервера.
Однако при попытке подключения к базе данных с клиента я получаю сообщение об отказе в подключении.
На сервере /var/log/auth.log
при попытке подключения получаю:
sshd[30753]: ошибка: connect_to < public-ip-redacted> port 27017: не удалось.
В sshd_config на сервере есть
GatewayPorts да
AllowAgentForwarding да
РазрешитьTcpForwarding да
Поэтому я настроил Putty на клиенте с переадресацией локального порта на удаленный компьютер.
На сервере с tcptrackЯ вижу, что некоторые соединения появляются, но сбрасываются на интерфейсе обратной связи.при попытке подключения с клиента они исчезают через 1-2 секунды.
Что я упускаю?
решение1
Сервер mongoDB слушал только свой 127.0.0.1 через свой /etc/mongod.conf
-file. Переадресация порта туннеля putty должна была быть установлена на 127.0.0.1:<port> вместо <public-remote-ip>:<port>, поскольку, как я полагаю, putty неявно транслирует это на localhost удаленного компьютера.