日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:PythonParamiko模塊用法介紹

一、Paramiko模塊簡介

Python Paramiko是Python編程語言中的SSHv2協(xié)議的實現(xiàn),支持連接SSH客戶端和服務(wù)器?;赟SH客戶端的基礎(chǔ)功能,可以在Python環(huán)境中執(zhí)行命令、傳輸文件、執(zhí)行遠程代碼和控制SSH會話等。因此,Python Paramiko模塊被廣泛應(yīng)用于后臺自動化、配置管理、網(wǎng)絡(luò)管理、系統(tǒng)測試、安全審計等領(lǐng)域。

創(chuàng)新互聯(lián)是專業(yè)的海城網(wǎng)站建設(shè)公司,海城接單;提供網(wǎng)站制作、成都網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行海城網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

二、安裝Paramiko模塊

如果你使用的是Python2.x版本,則需要執(zhí)行以下命令進行安裝:

pip install paramiko

如果你使用的是Python3.x版本,則需要執(zhí)行以下命令進行安裝:

pip3 install paramiko

三、Paramiko模塊基本使用

1、SSH連接對象構(gòu)建

在使用Paramiko模塊進行SSH連接之前,需要構(gòu)建SSH連接對象。SSH連接對象是一個連接到SSH遠程主機的網(wǎng)絡(luò)連接。

import paramiko

ssh = paramiko.SSHClient()
# 設(shè)置自動添加主機名及其對應(yīng)的密鑰
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

2、SSH連接對象連接

SSh連接對象與遠程主機建立SSH連接。

ssh.connect(hostname='example.com', port=22, username='user', password='password')

3、SSH連接對象執(zhí)行命令

SSH連接對象執(zhí)行遠程主機的命令和程序。返回值為一個元組,包含了命令執(zhí)行的返回碼和標準輸出結(jié)果。

stdin, stdout, stderr = ssh.exec_command('ls -l')
print(stdout.read().decode('utf-8'))

4、SSH連接對象傳輸文件

SSH連接對象傳輸文件可以將本地文件復制到遠程主機,也可以將遠程主機文件復制到本地文件系統(tǒng)。

sftp = ssh.open_sftp()
sftp.put(local_path, remote_path)
sftp.get(remote_path, local_path)
sftp.close()

5、SSH連接對象控制會話

SSH連接對象控制會話可以用于交互式的SSH會話,也可以將多個命令執(zhí)行在同一個SSH會話中。

channel = ssh.invoke_shell()
channel.send('ls -l\n')
print(channel.recv(4096))

四、Paramiko模塊高級使用

1、SSH連接對象批量執(zhí)行命令

通過SSH連接對象批量執(zhí)行命令可以快速執(zhí)行一系列的命令和腳本。

commands = ['uptime', 'df -h']
for command in commands:
    stdin, stdout, stderr = ssh.exec_command(command)
    print(stdout.read().decode('utf-8'))

2、SSH連接對象代理設(shè)置

SSH連接對象代理設(shè)置可以通過代理服務(wù)器讓SSH連接對象連接到其他遠程主機。

proxy = paramiko.ProxyCommand('ssh user@proxyhost -p 22 nc %h %p')
ssh.connect(hostname='example.com', port=22, username='user', password='password', sock=proxy)

3、SSH連接對象多個SSH連接

SSH連接對象多個SSH連接可以通過連接多個遠程主機進行并行執(zhí)行命令和數(shù)據(jù)傳輸。

ssh1, ssh2 = paramiko.SSHClient(), paramiko.SSHClient()
ssh1.connect(hostname='example1.com', port=22, username='user', password='password')
ssh2.connect(hostname='example2.com', port=22, username='user', password='password')

stdin1, stdout1, stderr1 = ssh1.exec_command('ls -l')
print(stdout1.read().decode('utf-8'))

stdin2, stdout2, stderr2 = ssh2.exec_command('df -h')
print(stdout2.read().decode('utf-8'))

4、SSH連接對象SSH密鑰認證

SSH連接對象SSH密鑰認證可以替代密碼進行SSH連接,更加安全和方便。

ssh_key = paramiko.RSAKey.from_private_key_file('/path/to/key')
ssh.connect(hostname='example.com', port=22, username='user', pkey=ssh_key)

5、SSH連接對象控制超時時間

SSH連接對象控制超時時間可以避免SSH連接出現(xiàn)超時等問題。

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname='example.com', port=22, username='user', password='password', timeout=3.0)

五、總結(jié)

Python Paramiko模塊是Python編程語言中的SSHv2協(xié)議的實現(xiàn),支持連接SSH客戶端和服務(wù)器。通過SSH連接對象批量執(zhí)行命令、傳輸文件、執(zhí)行遠程代碼和控制SSH會話等,可以實現(xiàn)后臺自動化、配置管理、網(wǎng)絡(luò)管理、系統(tǒng)測試、安全審計等眾多領(lǐng)域的應(yīng)用。同時,通過SSH密鑰認證、代理設(shè)置、多個SSH連接和超時時間控制等高級使用,可以提高SSH連接對象的安全性和可靠性。


本文題目:創(chuàng)新互聯(lián)Python教程:PythonParamiko模塊用法介紹
標題來源:http://m.5511xx.com/article/dpiehpp.html