How I can make SFTP transport through
SSHClient on the remote server? I have a local host and two remote hosts. Remote hosts are backup server and web server. I need to find on backup server necessary backup file and put it on web server over SFTP. How can I make Paramiko’s SFTP transport work with Paramiko’s
import paramiko paramiko.util.log_to_file("paramiko.log") # Open a transport host,port = "example.com",22 transport = paramiko.Transport((host,port)) # Auth username,password = "bar","foo" transport.connect(None,username,password) # Go! sftp = paramiko.SFTPClient.from_transport(transport) # Download filepath = "/etc/passwd" localpath = "/home/remotepasswd" sftp.get(filepath,localpath) # Upload filepath = "/home/foo.jpg" localpath = "/home/pony.jpg" sftp.put(localpath,filepath) # Close if sftp: sftp.close() if transport: transport.close()
If you have a SSHClient, you can also use
import paramiko # lets say you have SSH client... client = paramiko.SSHClient() sftp = client.open_sftp() # then you can use upload & download as shown above ...