久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

帶有 Python ftplib 的 FTPS - 需要會話重用

FTPS with Python ftplib - Session reuse required(帶有 Python ftplib 的 FTPS - 需要會話重用)
本文介紹了帶有 Python ftplib 的 FTPS - 需要會話重用的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

所以,我正在嘗試連接到 FTP 服務器以獲取目錄列表并下載文件.但是 prot_p() 函數之后的第一個命令引發了異常 - 從日志中產生這些錯誤:

So, I am trying to connect to an FTP server to get directory listings and download files. But the first command after the prot_p() function is raising an exception - Producing these errors from the log:

*get* '150 Here comes the directory listing.
'
*resp* '150 Here comes the directory listing.'
*get* '522 SSL connection failed; session reuse required: see require_ssl_reuse
option in vsftpd.conf man page
'
*resp* '522 SSL connection failed; session reuse required: see require_ssl_reuse
 option in vsftpd.conf man page'
Traceback (most recent call last):
  File "C:	empdownload.py", line 29, in <module>
    files = ftps.dir()
  File "C:Python27libftplib.py", line 522, in dir
    self.retrlines(cmd, func)
  File "C:Python27libftplib.py", line 725, in retrlines
    return self.voidresp()
  File "C:Python27libftplib.py", line 224, in voidresp
    resp = self.getresp()
  File "C:Python27libftplib.py", line 219, in getresp
    raise error_perm, resp
ftplib.error_perm: 522 SSL connection failed; session reuse required: see requir
e_ssl_reuse option in vsftpd.conf man page

代碼如下:

from ftplib import FTP_TLS
import os
import socket

host = 'example.com'
port = 34567
user = 'user1'
passwd = 'pass123'
acct = 'Normal'

ftps = FTP_TLS()

ftps.set_debuglevel(2)

ftps.connect(host, port)

print(ftps.getwelcome())
print(ftps.sock)

ftps.auth()

ftps.login(user, passwd, acct)

ftps.set_pasv(True)
ftps.prot_p()

print('Current directory:')
print(ftps.pwd())
files = ftps.dir()

ftps.quit()

我想安全地執行此操作,因此使用 FTP over TLS Explicit.我的想法是我可能需要操作 ftplib 引用的 Socket 類中的一些設置.更改服務器上的設置是不可能的.我已經使用 FileZilla 客戶端成功測試了服務器,但舊版本的 WinSCP 引發了同樣的錯誤 - 盡管升級到最新版本修復了它.

I want to do this securely, hence using FTP over TLS Explicit. I have the idea that I may need to manipulate some settings in the Socket class referenced by ftplib. Changing the settings on the server is not a possibility. I have tested the server successfully with FileZilla client, an older version of WinSCP was raising the same error - although an upgrade to the newest version fixed it.

有什么想法嗎?

推薦答案

現在可以通過這個類(FTP_TLS的后代)輕松修復Python 3.6+:

It can be now easily fixed for Python 3.6+ by this class (descendant of FTP_TLS):

class MyFTP_TLS(ftplib.FTP_TLS):
    """Explicit FTPS, with shared TLS session"""
    def ntransfercmd(self, cmd, rest=None):
        conn, size = ftplib.FTP.ntransfercmd(self, cmd, rest)
        if self._prot_p:
            conn = self.context.wrap_socket(conn,
                                            server_hostname=self.host,
                                            session=self.sock.session)  # this is the fix
        return conn, size

這篇關于帶有 Python ftplib 的 FTPS - 需要會話重用的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Why I cannot make an insert to Python list?(為什么我不能插入 Python 列表?)
Insert a column at the beginning (leftmost end) of a DataFrame(在 DataFrame 的開頭(最左端)插入一列)
Python psycopg2 not inserting into postgresql table(Python psycopg2 沒有插入到 postgresql 表中)
list extend() to index, inserting list elements not only to the end(list extend() 索引,不僅將列表元素插入到末尾)
How to add element in Python to the end of list using list.insert?(如何使用 list.insert 將 Python 中的元素添加到列表末尾?)
TypeError: #39;float#39; object is not subscriptable(TypeError:“浮動對象不可下標)
主站蜘蛛池模板: 久久久亚洲一区 | 成人福利| 日韩在线xx| 国产欧美在线 | 久久高清免费视频 | 中文字幕亚洲欧美 | 久久久久久久久久久久91 | 亚洲色图网址 | 欧美在线| 久久久一区二区 | 国产视频中文字幕在线观看 | 久久99精品久久久久蜜桃tv | 福利av在线 | 欧产日产国产精品v | 可以免费观看的av | 黑人精品xxx一区一二区 | 国产精品欧美一区二区三区不卡 | 欧美精品成人一区二区三区四区 | 久久精品| 成人在线免费视频 | 精品国产一级 | 日韩精品久久久 | 丁香婷婷久久久综合精品国产 | 日韩视频一区 | 国产乱码精品一区二区三区忘忧草 | 色婷婷综合久久久中字幕精品久久 | 一区二区三区视频在线免费观看 | 99久久久久久久久 | 麻豆91av | 国产激情第一页 | 欧美日韩国产三级 | 欧美一区视频 | 久久在线 | 国产成人福利在线观看 | 日本黄视频在线观看 | 羞羞视频在线观看网站 | 毛片在线免费 | 亚洲欧美一区二区三区在线 | 一级黄色毛片子 | 中文字幕成人网 | 国产91久久精品一区二区 |