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

FTPS с использованием Python3 зависает при выполнении команды или недопустимой команде порта без использования pasv

Я пытаюсь настроить соединение FTPS, используя как пароль, так и сертификат клиента, но я не могу получить список каталогов или что-либо еще после установления соединения ... Он либо зависает (ничего не делает), либо сообщает команду 500 Illegal PORT, когда я использую set_pasv ( Ложь). Вот что происходит с curl (который работает), а затем с Python:

niels@nielshome:~$ curl -u testuser --ftp-ssl --cert client.crt --key client.key ftp://portal.xxxxx.nl/HLCDSXX_103-001-001_GTAACCGA-AAGACACC_L003_R2.fastq.gz -O
Enter host password for user 'testuser':
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  5 2044M    5  114M    0     0  12.2M      0  0:02:47  0:00:09  0:02:38 12.5M^C
niels@nielshome:~$ python3
Python 3.6.8 (default, Jan 14 2019, 11:02:34) 
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from ftplib import FTP_TLS
>>> ftps = FTP_TLS('portal.xxxxx.nl',keyfile='/home/niels/client.key',certfile='/home/niels/client.crt', user='testuser', passwd='blabla')
>>> a = ftps.mlsd()
>>> for f in a:
...     print(f)

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