无法使用Net :: SSH:Perl登录

螺丝头

我刚刚开始使用Net :: SSH :: Perl,看来我遇到了一些奇怪的事情。如果将交互式标志设置为1并输入密码,我将通过ssh远程登录到机器,但是如果我将交互式标志保留为关闭状态或将其设置为0,则登录失败。我确认可以使用Net :: SSH :: Perl登录到本地计算机,因此对于这台特定的远程计算机(在底层操作系统为SuSE),一定是我做错了。我还确认可以从终端窗口SSH到远程计算机。

use Net::SSH::Perl;
my $cmd = 'uptime';
my $ssh = Net::SSH::Perl->new($host, interactive=> 0, debug => 1);
$ssh->login($user, $pass);
my($stdout, $stderr, $exit) = $ssh->cmd($cmd);
print $stdout;

下面是将交互式标志设置为0时从debug输出的日志。

localhost.localdomain: Reading configuration data /home/user/.ssh/config
localhost.localdomain: Reading configuration data /etc/ssh_config
localhost.localdomain: Connecting to 1.1.1.1, port 22.
localhost.localdomain: Remote version string: SSH-2.0-OpenSSH_5.1

localhost.localdomain: Remote protocol version 2.0, remote software version OpenSSH_5.1
localhost.localdomain: Net::SSH::Perl Version 1.38, protocol version 2.0.
localhost.localdomain: No compat match: OpenSSH_5.1
.
localhost.localdomain: Connection established.
localhost.localdomain: Sent key-exchange init (KEXINIT), wait response.
localhost.localdomain: Algorithms, c->s: 3des-cbc hmac-sha1 none
localhost.localdomain: Algorithms, s->c: 3des-cbc hmac-sha1 none
localhost.localdomain: Entering Diffie-Hellman Group 1 key exchange.
localhost.localdomain: Sent DH public key, waiting for reply.
localhost.localdomain: Received host key, type 'ssh-dss'.
localhost.localdomain: Host '1.1.1.1' is known and matches the host key.
localhost.localdomain: Computing shared secret key.
localhost.localdomain: Verifying server signature.
localhost.localdomain: Waiting for NEWKEYS message.
localhost.localdomain: Send NEWKEYS.
localhost.localdomain: Enabling encryption/MAC/compression.
localhost.localdomain: Sending request for user-authentication service.
localhost.localdomain: Service accepted: ssh-userauth.
localhost.localdomain: Trying empty user-authentication request.
localhost.localdomain: Authentication methods that can continue: publickey,keyboard-interactive.
localhost.localdomain: Next method to try is publickey.
localhost.localdomain: Publickey: testing agent key '[email protected]'
localhost.localdomain: Authentication methods that can continue: publickey,keyboard-interactive.
localhost.localdomain: Next method to try is publickey.
localhost.localdomain: Publickey: testing agent key 'user'
localhost.localdomain: Authentication methods that can continue: publickey,keyboard-interactive.
localhost.localdomain: Next method to try is publickey.
Permission denied at /home/user/workspace/perl-random/avamar_ssh.pl line 4.

我猜我做错了什么,所以如果有人可以指出正确的方向,那就太好了。

谢谢。

鲁阿赫

这部分:

localhost.localdomain: Authentication methods that can continue: publickey,keyboard-interactive.

表示服务器允许两种身份验证方法:

  • publickey —公钥认证
    • 您在评论中提到这不是您的选择。
  • keyboard-interactive —输入密码的地方
    • 仅在交互模式下有效,这不足为奇。

因此,您要尝试执行的操作是不可能的。

好消息是,这听起来像XY问题如果您向我们提供有关您的实际问题的更多详细信息,我们可能会建议一种更好的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法从crontab运行perl脚本以ssh登录Windows服务器(使用Net :: SSH :: Perl)

来自分类Dev

无法逃脱@登录Perl

来自分类Dev

无法通过SSH登录

来自分类Dev

SSH:无法登录

来自分类Dev

Gitolite:无法使用新的ssh密钥登录?

来自分类Dev

ssh无密码登录无法使用proxycommand

来自分类Dev

无法使用SSH-RSA密钥登录

来自分类Dev

无法使用双因素 SSH 登录

来自分类Dev

无法通过publickey ssh登录

来自分类Dev

SSH无法从特定用户登录

来自分类Dev

通过Perl进行SSH登录

来自分类Dev

使用私钥使用 SSH 登录

来自分类Dev

使用ssh登录后被踢出

来自分类Dev

SSH登录无法使用没有密码的密钥吗?

来自分类Dev

在 ssh 连接期间无法使用我的密码登录

来自分类Dev

Perl Net :: LDAP:使用当前登录进行身份验证

来自分类Dev

使用Net :: SSH登录到Shell并获取有状态输出

来自分类Dev

我无法使用su命令以root用户身份登录,但可以使用SSH登录

来自分类Dev

除非本地登录,否则无法登录SSH

来自分类Dev

除非本地登录,否则无法登录SSH

来自分类Dev

无法以root用户身份进行SSH登录

来自分类Dev

无法以root用户身份进行SSH登录

来自分类Dev

启用UFW后我无法登录ssh

来自分类Dev

无法使用Python的请求模块登录ASP.NET网站

来自分类Dev

ASP.Net Identity - 无法使用密码登录

来自分类Dev

如何使用非默认登录Shell进行ssh登录

来自分类Dev

使用不带密码的SSH登录

来自分类Dev

如何使用带有密码的ssh登录?

来自分类Dev

检查使用哪个SSH密钥登录