Python paramiko模塊使用解析(實現(xiàn)ssh)
更新時間:2019年08月30日 14:29:10 作者:JasonMingHao
這篇文章主要介紹了Python paramiko模塊使用解析(實現(xiàn)ssh),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
開發(fā)堡壘機之前,先來學(xué)習(xí)Python的paramiko模塊,該模塊基于SSH用于連接遠(yuǎn)程服務(wù)器并執(zhí)行相關(guān)操作
安裝paramiko模塊
pip3 install paramiko
基于用戶密碼方式
import paramiko
# 創(chuàng)建SSH對象
ssh = paramiko.SSHClient()
# 允許連接不在know_hosts文件中的主機
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 連接服務(wù)器
ssh.connect(hostname="10.0.0.200", port=22, username='root', password='1')
# 執(zhí)行命令
# stdin:標(biāo)準(zhǔn)輸入(就是你輸入的命令);stdout:標(biāo)準(zhǔn)輸出(就是命令執(zhí)行結(jié)果);stderr:標(biāo)準(zhǔn)錯誤(命令執(zhí)行過程中如果出錯了就把錯誤打到這里),stdout和stderr僅會輸出一個
stdin, stdout, stderr = ssh.exec_command('df')
# 獲取命令結(jié)果
result = (stdout.read().decode('utf-8')) # 這個有問題,如果執(zhí)行的命令是錯誤的,會不顯示錯誤,可以修改一下,先判斷stdout有沒有值,如果輸出沒有,就顯示錯誤
print(result)
# 關(guān)閉連接
ssh.close()
基于公鑰密鑰連接
import paramiko
# 指定私鑰路徑
private_key = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa')
# 創(chuàng)建SSH對象
ssh = paramiko.SSHClient()
# 允許連接不在know_hosts文件中的主機
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 連接服務(wù)器
ssh.connect(hostname='10.0.0.171', port=22, username='root', pkey=private_key)
# 執(zhí)行命令
stdin, stdout, stderr = ssh.exec_command('df')
# 獲取命令結(jié)果
result = stdout.read()
print(result.decode())
# 關(guān)閉連接
ssh.close()
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python中日志logging模塊的性能及多進(jìn)程詳解
使用Python來寫后臺任務(wù)時,時常需要使用輸出日志來記錄程序運行的狀態(tài),并在發(fā)生錯誤時將錯誤的詳細(xì)信息保存下來,以別調(diào)試和分析。Python的logging模塊就是這種情況下的好幫手。本文就介紹了python中日志logging模塊性能及多進(jìn)程的相關(guān)資料,需要的朋友可以參考下。2017-07-07
用Python實現(xiàn)寫倒序輸出(任意位數(shù))
這篇文章主要介紹了用Python實現(xiàn)寫倒序輸出(任意位數(shù)),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05
python實現(xiàn)socket+threading處理多連接的方法
今天小編就為大家分享一篇python實現(xiàn)socket+threading處理多連接的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python獲取當(dāng)前時間日期的方法總結(jié)
在Python編程中,獲取當(dāng)前的日期和時間是一個常見的需求,它在許多應(yīng)用中都有重要作用,本文為大家詳細(xì)整理了一些Python中的常用方法,希望對大家有所幫助2024-01-01

