使用Python 透過SSH 自動執行指令
在Python 中自動化指令列任務時,使用subprocess.call() 是一種常見方法。但是,對於需要 SSH 登入的遠端機器命令,此方法是不夠的。
在 Python 中自動化 SSH 指令
要在 Python 中自動化 SSH 指令,建議的模組是帕拉米科。它提供了一個用於安全地建立 SSH 連線和執行命令的介面。
這是一個使用 paramiko 的範例:
<code class="python">import paramiko ssh = paramiko.SSHClient() ssh.connect(server, username=username, password=password) ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)</code>
這將建立到遠端伺服器的 SSH 連接,指定伺服器位址、使用者名稱和密碼。隨後,exec_command() 方法執行所需的命令,擷取標準輸出和錯誤流。
如果是SSH 金鑰驗證,可以使用以下程式碼片段:
<code class="python">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)</code>
透過指定包含私鑰的金鑰檔案名,此程式碼使用基於金鑰的驗證啟動SSH 連線。
以上是如何在 Python 中自動化 SSH 指令?的詳細內容。更多資訊請關注PHP中文網其他相關文章!