Dépannage des raisons pour lesquelles le script Perl ne peut pas être exécuté correctement lors de l'appel d'opensh (ctl_dir /root/.libnet-openssh-perl/ n'est pas sécurisé)

Lors de l'utilisation de scripts Perl, il s'agit d'une méthode courante pour obtenir des informations sur le nœud d'exécution via Net::OpenSSH. Dans un certain environnement, une erreur se produit lors de l'exécution d'une commande. Le code correspondant est affiché ci-dessous.

    my $ssh_ops = {user => "root", password => "password", master_opts => [-o => "UserKnownHostsFile=/dev/null", -o => "StrictHostKeyChecking=no"]};
    my $ssh = Net::OpenSSH->new($host_ip, %$ssh_ops);
    # while( my ($key,$value) = each %ssh) {
    #     if (defined $value) {
    #         print "\n==== debug: $key => $value\n";
    #     }        
    # }
    $ssh->error and return "fail: cann't access by ssh";

Lorsque ce code est exécuté, "fail: can't access by ssh" sera renvoyé directement. Vérifiez manuellement que vous pouvez vous connecter normalement au nœud spécifié via ssh sur le nœud actuel.

Libérez le contenu du commentaire, déboguez et imprimez les informations suivantes :

==== debug: _error => ctl_dir /root/.libnet-openssh-perl/ is not secure

==== debug: _host => 10.0.123.123

Vérifiez les autorisations du dossier /root à ce moment

执行命令 :stat /root                                                                                                                                  23-08-03 - 13:45:41
  File: '/root'
  Size: 4096      	Blocks: 8          IO Block: 4096   directory
Device: 802h/2050d	Inode: 8912897     Links: 29
Access: (0775/drwxrwxr-x)  Uid: (    0/    root)   Gid: (    0/    root)

Notez que les autorisations ici ont été modifiées en 0755. Dans des circonstances normales, les autorisations du répertoire /root devraient être Access : (0550/dr-xr-x—) Utilisez la commande chmod pour modifier les autorisations du dossier /root,
et exécutez-le à nouveau et ce sera normal.

Suggestion : Ne modifiez pas facilement les attributs des dossiers système tels que /root pour éviter des problèmes inutiles !

Je suppose que tu aimes

Origine blog.csdn.net/haiqinma/article/details/132082422
conseillé
Classement