Paramiko 未知伺服器異常:已解決
使用Paramiko 函式庫時,使用者可能會遇到「未知伺服器」異常,從而阻止連線嘗試。當嘗試連線到系統或本機 HostKeys 物件中未記錄主機金鑰的伺服器時,會發生此問題。
解決方案:
要解決此異常,您需要設定連接到未知伺服器時使用的政策。預設情況下,Paramiko 拒絕所有未知伺服器,但您可以使用 AutoAddPolicy 覆寫此行為。
這裡是一個修改後的 Python 程式碼片段,新增了 AutoAddPolicy 解決方案:
import paramiko client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect('127.0.0.1', username=username, password=password) stdin, stdout, stderr = client.exec_command('ls -l')
透過設定 AutoAddPolicy ,Paramiko會自動將未知伺服器的主機金鑰新增至其主機金鑰快取中,從而允許將來的連線無需
附加選項:
ssh.get_host_keys().save('/some/file/path')
ssh.load_host_keys('/some/file/path')
使用這些技術,即使在處理沒有註冊主機的伺服器時,您也可以與Paramiko 建立安全的 SSH 連線鑰匙。
以上是如何解決Paramiko的「未知伺服器」異常?的詳細內容。更多資訊請關注PHP中文網其他相關文章!