Я пытаюсь настроить соединение 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, он говорит только о недопустимой команде порта, как я сказал выше.