ctl_dir /root/.libnet-openssh-perl/在/usr/local/share/perl/5.18.2/Net/OpenSSH/Compat/Perl.pm下不安全123行

问题描述:

我安装了Net :: OpenSSH :: Compat :: Perl最近。所有的依赖关系都没有任何错误地安装。但是,当我尝试使用下面的代码ctl_dir /root/.libnet-openssh-perl/在/usr/local/share/perl/5.18.2/Net/OpenSSH/Compat/Perl.pm下不安全123行

$linux_ses= Net::OpenSSH::Compat::Perl->new($host); 
$linux_ses->login($linux_uname,$linux_pass); 

登录我收到以下错误信息:

“ctl_dir /root/.libnet-openssh-perl/位于/ usr/local/share下并不安全/perl/5.18.2/Net/OpenSSH/Compat/Perl.pm line 123.“

我运行该脚本为根,/root/.libnet-openssh-perl/的文件权限是700

上/根目录的权限/可能是过于宽松。 Group writeable可能意味着能够删除除root之外的其他人的.libnet-openssh-perl /,这不是安全的情况。

请检查。

+0

谢谢@edehont。我将权限更改为700.我仍然面临同样的问题。 – SilentMonk

+0

我将/root/.libnet-openssh-perl/的权限更改为500.它工作正常。这个链接 - [链接](http://rpm.pbone.net/index.php3/stat/45/idpl/16345800/numer/3/nazwa/Net::OpenSSH)表明该文件应该只能由当前用户。但它没有提到它不应该是可执行的。你能否提供更多见解? – SilentMonk

+0

我收到以下错误_unable建立主SSH连接:目标主机的真实性无法建立;远程主机公钥可能不在/usr/local/share/perl/5.18.2/Net/OpenSSH/Compat/Perl.pm 123行的'〜/ .ssh/known_hosts'文件中。我使用SSH客户端进行了SSH,并且由于公钥已经添加,所以它现在正在工作。 Net :: OpenSSH :: Compat :: Perl获取远程主机的公钥吗? – SilentMonk