FTPLIB не может подключиться к виртуальной машине Azure - PullRequest
0 голосов
/ 17 февраля 2019

У меня очень странная проблема с ftplib.Я использую одну виртуальную машину Azure с Ubuntu, где работает веб-приложение.Вторая виртуальная машина Azure (клиентская) запускает FTP-сервер.Если я пытаюсь соединиться с Python и ftplib, FTP-сервер отклонил соединение.В то же время я могу подключаться к одной и той же виртуальной машине Azure на FTP-сервере.Журнал FTP-сервера показывает IP-адрес 127.0.0.1 для моей виртуальной машины Azure, когда я пытаюсь подключиться с помощью ftplib, и показывает правильный IP-адрес, когда я пытаюсь соединиться с telnet.В конце концов, я попытался запустить то же приложение Python из моего ноутбука, и все работает отлично!В данный момент клиент не использует брандмауэр, входящие правила и т. Д. Любая идея ???

1 Ответ

0 голосов
/ 18 февраля 2019

В моем понимании нет разницы между использованием команды FTP и python ftplib для подключения к FTP-серверу.А когда вы подключаете FTP через разные места, это также влияет на результат.

Если виртуальная машина веб-приложения и виртуальный FTP-сервер находятся в одной подсети, и нет ни NSG, ни NSG, просто связанных с подсетью.Вы можете просто подключить FTP с частным IP-адресом FTP vm.

Если виртуальная машина веб-приложения и виртуальный FTP-сервер находятся в разных подсетях, а NSG связан с подсетью.Вам нужно добавить правила, чтобы разрешить трафик на FTP-сервер в NSG.Затем вы можете подключить FTP с частным IP-адресом FTP vm.

, если виртуальная машина веб-приложения и виртуальный FTP-сервер находятся в разных виртуальных сетях, а также NSG, связанный с подсетью.Вам нужно добавить правила, чтобы разрешить трафик на FTP-сервер в NSG.Затем вы можете подключить FTP с публичным IP-адресом FTP vm.

Для FTP-сервера в ВМ вы должны убедиться, что FTP прослушивает правильный порт и IP 0.0.0.0.Так что он может принимать весь трафик на этот vm через порт.

Если у вас есть еще вопросы, вы можете дать мне сообщения с комментариями.

...