」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何在 Python 中自動化 SSH 指令?

如何在 Python 中自動化 SSH 指令?

發佈於2024-11-25
瀏覽:184

How Can I Automate SSH Commands in Python?

使用Python 透過SSH 自動執行指令

在Python 自動化指令列任務時,使用subprocess.call() 是一種常見方法。然而,對於需要 SSH 登入的遠端機器命令,此方法是不夠的。

在 Python 中自動化 SSH 指令

要在 Python 中自動化 SSH 指令,推薦的模組是帕拉米科。它提供了一個用於安全地建立 SSH 連線和執行命令的介面。

以下是使用 paramiko 的範例:

import paramiko

ssh = paramiko.SSHClient()
ssh.connect(server, username=username, password=password)
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)

這將建立到遠端伺服器的 SSH 連接,指定伺服器位址、使用者名稱和密碼。隨後,exec_command() 方法執行所需的命令,擷取標準輸出和錯誤流。

如果是 SSH 金鑰驗證,可以使用以下程式碼片段:

import paramiko

k = paramiko.RSAKey.from_private_key_file(keyfilename)
# OR k = paramiko.DSSKey.from_private_key_file(keyfilename)

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=host, username=user, pkey=k)

透過指定包含私密金鑰的金鑰檔案名,此程式碼使用基於金鑰的驗證啟動 SSH 連線。

最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3