FTP-соединение работает с FileZilla и командной строкой, но не python ftplib - PullRequest
0 голосов
/ 30 апреля 2020

У меня установлен ftp-сервер на aws. Я могу подключиться к нему из FileZilla, а также из командной строки. Тем не менее, мой скрипт python дает мне:

OSError: [Errno 101] Сеть недоступна

Я знаю, что мой скрипт работает, так как я могу подключиться к другие серверы.

def test_connection():
   server = ftplib.FTP()
   server.connect('xx.xxx.xxx.xx')
   server.login('xxxx', 'xxx')
   print(server.dir())
   server.quit()

if __name__ == "__main__":
   test_connection()

Любые подсказки, что это может быть?

Большое спасибо:)

Ответы [ 2 ]

0 голосов
/ 01 мая 2020

Что сработало в итоге:

Я изменил конфигурацию vsftpd:

listen = YES listen_ipv6 = NO

Не совсем уверен, что проблема в

0 голосов
/ 01 мая 2020

Возможно, вы захотите реструктурировать свой код так, чтобы учетные данные инициализировались в вызове конструктора FTP.

import ftplib
server= ftplib.FTP('server.address.com','USERNAME','PASSWORD')
print(server.dir())
session.quit()

Вместо этого используйте ftplib.FTP_TLS, если ваш FTP-хост требует TLS.

...