FTPES - FTP over explicit TLS/SSL in Python
Question: I need a python client to do FTPES (explicit), does anyone has experience with
any python package that can do this.

I am not able to do this in python, but can connect to FTP server using tools
like FileZilla

Thanks


Answer: FTP-SSL Explicit is well supported by native Python. After setting up the
connection, you can use all the standard ftplib commands. More can be found
at: <http://docs.python.org/2/library/ftplib.html#ftplib.FTP_TLS>

Here's a basic example for downloading a file:

    
    
    from ftplib import FTP_TLS
    ftps = FTP_TLS('ftp.MySite.com')
    ftps.login('testuser', 'testpass')           # login anonymously before securing control channel
    ftps.prot_p()          # switch to secure data connection.. IMPORTANT! Otherwise, only the user and password is encrypted and not all the file data.
    ftps.retrlines('LIST')
    
    filename = 'remote_filename.bin'
    print 'Opening local file ' + filename
    myfile = open(filename, 'wb')
    
    ftps.retrbinary('RETR %s' % filename, myfile.write)
    
    ftps.close()
    

