我想使用SSHLibrary连接远程服务器。
*** Settings ***
Library SSHLibrary
*** Test Cases ***
Connection
${RemoteServer}= openconnection 127.0.0.1 port=2123
login 127.0.0.1 gfi
${username}= Executecommand pwd
但是由于身份验证失败,我收到了错误消息
TRACE : Arguments: [ '127.0.0.1' | port=2123 ]
TRACE : Return: 1
INFO : ${RemoteServer} = 1
TRACE : Arguments: [ '127.0.0.1' | 'gfi' | delay='0.5 seconds' ]
INFO : Logging into '127.0.0.1:2123' as '127.0.0.1'.
DEBUG : Adding ssh-ed25519 host key for [127.0.0.1]:2123: 56cde5c5d3a8494218b68ed41b4e837d
FAIL : Authentication failed for user '127.0.0.1'.
DEBUG :
Traceback (most recent call last):
File "c:\python27\lib\site-packages\SSHLibrary\library.py", line 914, in login
is_truthy(look_for_keys), delay, proxy_cmd)
File "c:\python27\lib\site-packages\SSHLibrary\library.py", line 973, in _login
raise RuntimeError(e)
Ending test: Launchvm.Launchvm.Connection
这是我第一次使用SSHLibrary。使用SSHLibrary是否需要任何先决条件。 有人可以帮忙解决身份验证失败的问题。
答案 0 :(得分:0)
您必须查看SSHLibrary - Login关键字的参数。
如文档Login
所示,第一个参数是username
。
但是,在您的代码中,您将127.0.0.1
作为用户名。
login 127.0.0.1 gfi
我认为这不是用户名。
您还可以在日志消息中看到该消息,它尝试以127.0.0.1
的身份登录127.0.0.1:2123。
INFO : Logging into '127.0.0.1:2123' as '127.0.0.1'.
如果您按预期更新代码并使用用户名和密码调用登录关键字,它应该可以正常运行。
login <username> <password>