我正在尝试从 Python 中正在运行的 SSH 服务器获取受支持的身份验证类型/方法。
我在 Paramiko 的 ServerInterface 类中找到了这个方法 get_allowed_auths() 但我不明白它是否可以在一个简单的类似客户端的代码片段中使用(我正在写一些只在这个任务中完成的东西)。
任何人都可以建议我一些示例链接,其他分发文档?也许还有其他想法可以做到这一点?
谢谢。
我正在尝试从 Python 中正在运行的 SSH 服务器获取受支持的身份验证类型/方法。
我在 Paramiko 的 ServerInterface 类中找到了这个方法 get_allowed_auths() 但我不明白它是否可以在一个简单的类似客户端的代码片段中使用(我正在写一些只在这个任务中完成的东西)。
任何人都可以建议我一些示例链接,其他分发文档?也许还有其他想法可以做到这一点?
谢谢。
您可以尝试使用无身份验证进行身份验证,这应该总是失败,但服务器随后将发回可以继续的身份验证类型。有一种auth_none()
方法paramiko.Transport
可以做到这一点。
import paramiko
import socket
s = socket.socket()
s.connect(('localhost', 22))
t = paramiko.Transport(s)
t.connect()
try:
t.auth_none('')
except paramiko.BadAuthenticationType, err:
print err.allowed_types