如何从 bash 自动使用用户名和密码登录 linux

如何从 bash 自动使用用户名和密码登录 linux

我尝试使用提供的用户名和密码进行 ssh。

限制:
1. 我不想为试图 ssh 进入的每台服务器设置公钥。2
. 我不想/没有权限安装 sshpass 工具。

尝试:

echo examplePassword | ssh exampleUser@exampleServer
ssh exampleUser@exampleServer < password.txt (contains password)

答案1

通过 Google 搜索,我找到了这个 Stack Overflow 帖子:https://stackoverflow.com/questions/16928004/how-to-enter-ssh-password-using-bash

虽然我之前没有使用过它或者尝试过它,但如果你有所期待它看起来绝对合理。

#!/usr/bin/expect -f
spawn ssh [email protected]
expect "assword:"
send "mypassword\r"
interact

答案2

您可以使用 perl:

#!/usr/bin/perl
use warnings;
use strict;

use Net::SSH::Perl;
my $host = 'remote.serv.er';
my $user = 'root';
my $pass = 'hunter2';
my $ssh = Net::SSH::Perl->new('$host');
$ssh->login('$user', '$pass') or die "Oh noes! $!";

我没有测试过这个代码,它取自这个答案

相关内容