日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

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

新聞中心

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

一、Paramiko模塊簡(jiǎn)介

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

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

二、安裝Paramiko模塊

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

pip install paramiko

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

pip3 install paramiko

三、Paramiko模塊基本使用

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

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

import paramiko

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

2、SSH連接對(duì)象連接

SSh連接對(duì)象與遠(yuǎn)程主機(jī)建立SSH連接。

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

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

SSH連接對(duì)象執(zhí)行遠(yuǎn)程主機(jī)的命令和程序。返回值為一個(gè)元組,包含了命令執(zhí)行的返回碼和標(biāo)準(zhǔn)輸出結(jié)果。

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

4、SSH連接對(duì)象傳輸文件

SSH連接對(duì)象傳輸文件可以將本地文件復(fù)制到遠(yuǎn)程主機(jī),也可以將遠(yuǎn)程主機(jī)文件復(fù)制到本地文件系統(tǒng)。

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

5、SSH連接對(duì)象控制會(huì)話

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

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

四、Paramiko模塊高級(jí)使用

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

通過(guò)SSH連接對(duì)象批量執(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連接對(duì)象代理設(shè)置

SSH連接對(duì)象代理設(shè)置可以通過(guò)代理服務(wù)器讓SSH連接對(duì)象連接到其他遠(yuǎn)程主機(jī)。

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連接對(duì)象多個(gè)SSH連接

SSH連接對(duì)象多個(gè)SSH連接可以通過(guò)連接多個(gè)遠(yuǎn)程主機(jī)進(jìn)行并行執(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連接對(duì)象SSH密鑰認(rèn)證

SSH連接對(duì)象SSH密鑰認(rèn)證可以替代密碼進(jìn)行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連接對(duì)象控制超時(shí)時(shí)間

SSH連接對(duì)象控制超時(shí)時(shí)間可以避免SSH連接出現(xiàn)超時(shí)等問(wè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編程語(yǔ)言中的SSHv2協(xié)議的實(shí)現(xiàn),支持連接SSH客戶端和服務(wù)器。通過(guò)SSH連接對(duì)象批量執(zhí)行命令、傳輸文件、執(zhí)行遠(yuǎn)程代碼和控制SSH會(huì)話等,可以實(shí)現(xiàn)后臺(tái)自動(dòng)化、配置管理、網(wǎng)絡(luò)管理、系統(tǒng)測(cè)試、安全審計(jì)等眾多領(lǐng)域的應(yīng)用。同時(shí),通過(guò)SSH密鑰認(rèn)證、代理設(shè)置、多個(gè)SSH連接和超時(shí)時(shí)間控制等高級(jí)使用,可以提高SSH連接對(duì)象的安全性和可靠性。


網(wǎng)頁(yè)題目:創(chuàng)新互聯(lián)Python教程:PythonParamiko模塊用法介紹
當(dāng)前地址:http://www.dlmjj.cn/article/dpiehpp.html