1. 程式人生 > >Python第三方庫paramiko SSH連接

Python第三方庫paramiko SSH連接

python paramiko ssh

基於用戶名和密碼的sshclient方式登錄:

#!/usr/bin/env python
#-*- coding=utf-8 -*-
#說明:基於用戶名和密碼的sshclient方式登錄
import paramiko
try:
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    ssh.connect(hostname="192.168.58.136",port=22,username="root",password="111111")
    stdin,stdout,stderr = ssh.exec_command("ifconfig")
    print (stdout.read().decode().rstrip())
    ssh.close()
except Exception as e:
    print ("操作失敗!")

基於用戶名和密碼的transport方式登錄:

#!/usr/bin/env python
#-*- coding=utf-8 -*-
#說明:基於用戶名和密碼的transport方式登錄
import paramiko
try:
    trans = paramiko.Transport(("192.168.58.136",22))
    trans.connect(username="root",password="111111")
    ssh = paramiko.SSHClient()
    ssh._transport = trans
    stdin,stdout,stderr = ssh.exec_command("ifconfig")
    print (stdout.read().decode().rstrip())
    trans.close()
except  paramiko.SSHException:
    print "操作失敗!"

傳輸文件:

#!/usr/bin/env python
#-*- coding=utf-8 -*-
#說明:傳輸文件
import paramiko
try:
    trans = paramiko.Transport(("192.168.58.136",22))
    trans.connect(username="root",password="111111")
    sftp = paramiko.SFTPClient.from_transport(trans)
    #發送文件
    sftp.put(localpath="/root/code/test.py",remotepath="/root/test.py")
    #下載文件
    #sftp.put(remotepath,localpath)
    trans.close()
except paramiko.SSHException:
    print "操作失敗"


Python第三方庫paramiko SSH連接