我正在尝试使用Net::SSH::Perl
带有此代码的公钥进行连接:
my $ssh = Net::SSH::Perl->new($host, debug=>1) || die ......
我把密钥放在 /root/.ssh/id_rsa 和 /root/.ssh/identity
似乎它没有尝试使用公钥,而是尝试询问密码:
我得到这个输出:
localhost:发送密钥交换初始化(KEXINIT),等待响应。 本地主机:算法,c->s:3des-cbc hmac-sha1 无 本地主机:算法,s->c:3des-cbc hmac-sha1 无 localhost:进入 Diffie-Hellman Group 1 密钥交换。 localhost:发送DH公钥,等待回复。 localhost:收到主机密钥,输入“ssh-dss”。 localhost:主机 '10.212.1.201' 是已知的并且与主机密钥匹配。 localhost:计算共享密钥。 localhost:验证服务器签名。 localhost:等待 NEWKEYS 消息。 本地主机:发送 NEWKEYS。 localhost:启用加密/MAC/压缩。 localhost:发送用户认证服务请求。 localhost:接受的服务:ssh-userauth。 localhost:尝试空的用户身份验证请求。 localhost:可以继续的认证方式:publickey,gssapi-with-mic,password。 localhost:下一个尝试的方法是 publickey。 localhost:下一个尝试的方法是密码。 localhost:尝试密码验证。 localhost:不会在批处理模式下查询密码。 localhost:可以继续的认证方式:publickey,gssapi-with-mic,password。 localhost:下一个尝试的方法是 publickey。 localhost:下一个尝试的方法是密码。 localhost:尝试密码验证。 localhost:不会在批处理模式下查询密码。 localhost:可以继续的认证方式:publickey,gssapi-with-mic,password。 localhost:下一个尝试的方法是 publickey。 localhost:下一个尝试的方法是密码。 localhost:尝试密码验证。 localhost:不会在批处理模式下查询密码。 localhost:可以继续的认证方式:publickey,gssapi-with-mic,password。 localhost:下一个尝试的方法是 publickey。 localhost:下一个尝试的方法是密码。