Python paramiko模塊使用解析(實現(xiàn)ssh)
更新時間:2019年08月30日 14:29:10 作者:JasonMingHao
這篇文章主要介紹了Python paramiko模塊使用解析(實現(xiàn)ssh),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
開發(fā)堡壘機(jī)之前,先來學(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文件中的主機(jī) 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文件中的主機(jī) 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ù)時,時常需要使用輸出日志來記錄程序運(yùn)行的狀態(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-05python實現(xiàn)socket+threading處理多連接的方法
今天小編就為大家分享一篇python實現(xiàn)socket+threading處理多連接的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07Python獲取當(dāng)前時間日期的方法總結(jié)
在Python編程中,獲取當(dāng)前的日期和時間是一個常見的需求,它在許多應(yīng)用中都有重要作用,本文為大家詳細(xì)整理了一些Python中的常用方法,希望對大家有所幫助2024-01-01