2011-09-11 14 views
2

我想通過ssh使用Paramiko連接到遠程主機,但是我收到一條錯誤消息,指出需要鍵盤身份驗證才能訪問主機。有沒有什麼辦法可以用Paramiko解決這個問題?如果沒有,是否有另一個可以使用的ssh模塊?如果必須的話,我甚至會用另一種語言。我唯一不能做的就是改變主機上的設置。另外,我正在Windows主機上編寫此應用程序,因此pxssh不是一個選項。有什麼建議麼?如何通過與paramiko的鍵盤驗證

回答

0

您可以從您擁有的任何資源中獲取用戶名和密碼,並在致電connect時使用它。例如,您可以將它們保存在配置文件中。

0

無論是通過私有密鑰直接使用pkey=或通過與key_filename=文件的對罵connect()像這樣的時候:

client = SSHClient() 
client.connect('remotehost', key_filename='/path/to/private_key') 

private_key = """ 
-----BEGIN EC PRIVATE KEY----- 
MHcCAQEEIMhTkzF8pZ5gtXvAafjNRsKXWXnhjslUW194WteddA3YoAoGCCqGSM49 
AwEHoUQDQgAEkb0qngPKOKVcjqszHg+7Y95TLvWZb5qtHb4ZmuLJRYIMzx78C9gp 
sb3jBuW2VCaoO8SfyXUKeOzT7eJTH6j8GQ== 
-----END EC PRIVATE KEY----- 
"""" 
client = SSHClient() 
client.connect('remotehost', pkey=private_key)