python 之 實現su 到root賬號


簡單記錄一下如何通過python代碼在linux系統下實現自動su - 切換到root賬號,

使用到的模塊:paramiko

使用到的方法:invoke_shell  功能:在SSH server端創建一個交互式的shell,且可以按自己的需求配置偽終端,可以在invoke_shell()函數中添加參數配置。

測試代碼如下:

import paramiko

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=ipaddr, port=port, username=user,password=pwd)
# 假設以上以普通用戶登錄


chan = ssh_client.invoke_shell()  # 使用偽終端,默認vt100創建交互式
chan.send('su -\n')  # 發送su 命令
chan.recv(4096).decode()  # 接收返回
chan.send('root密碼\n')  # 發送root密碼
# 以上切換root完畢

# 開始執行shell命令
stdin, stdout, stderr = self.client.exec_command('ls /root')
out, err = stdout.read(), stderr.read()
mess = out if out else err
mess = mess.strip().decode() 
print(mess) # 查看輸出結果

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM