我一直在使用Perl的SSH包连接到我的RHEL系统。最近,我将我的一个VM升级为redhat-release 7.2-9.el7.x86_64。现在,当我运行Perl脚本时,它抛出了错误:
无法在/usr/local/ line 64/Perl 5/Net/SSH/Perl/kex.pm第107行找到通过包"Net::SSH::Perl::Kex::C25519“的对象方法"exchange”。当生成ssh对象时。
在我的6.8RHEL版本上,同样的脚本也在运行。有什么建议吗?
以下是代码:
#!/usr/local/bin/perl
use strict;
use
The设计:多个网络安全区,有些仅用于Linux服务器,有些仅适用于Windows。
目标:使用Win10 OpenSSH作为代理的两个Win10服务器之间的安全副本(Win10)
linux1 (zone A) > Win10-1 (zone B) > linux2 (zone C)
身份验证基于SSH密钥。我在linux1上运行ssh-keygen,并将.pub文件复制到Win10-1中,然后将内容复制到C:\Users\[username]\.ssh\authorized_keys中,这就像预期的那样:我可以将ssh从linux1复制到Win10-1密码。在Win10-1上运
我希望建立远程连接,并自动更改远程计算机中任何用户帐户的密码,因此我使用Perl::SSH::Expect模块。我的连接正在发生,但我无法在远程机器上执行任何命令。我对Perl语言很陌生,所以我的代码中可能有一些错误。我试过寻找这个,但没能找到与它相关的东西。
最初,我尝试结合使用Net::OpenSSH和Expect模块,但未能实现用例。
#!/usr/bin/perl
use strict;
use warnings;
use Net::OpenSSH;
use Expect;
use Net::SSH::Expect;
my $uName= "user";
my
没有用户目录的密码减少SSH?
据我所知,文件夹.ssh应该存储在用户目录中。
ServerA: Linux without /home/users
ServerB: Linux with /home/users
client: Linux/mac etc...
案例:
客户端无密码ssh到ServerB,没有问题
客户端无密码ssh到ServerA,没有问题
SeverA密码-无密码ssh到ServerB,问题!
如果ServerA中没有实际的用户目录,那么在没有用户目录的情况下,每个用户的公钥是怎样的呢?
或者还有其他方法可以安全地从ssh到ServerB从ServerA?
#!/usr/bin/perl
use Net::SSH::Expect;
use warnings;
use strict;
#my($stdout, $stderr, $exit) = $ssh->cmd("ls -l /home/$usr")
# Making an ssh connection with user-password authentication
# 1) construct the object
my $ssh = Net::SSH::Expect->new (
host => "host",
passwor