in reply to Re^8: Net::SSH2 not base64 encoded
in thread Net::SSH2 not base64 encoded

I don't spot anything in your code that helps debugging this further.

The error comes from the other end, that the username (newroot) does not match the pubkey/private key pair.

Maybe look at the remote end, and/or check whether a different username gives a different error.

Replies are listed 'Best First'.
Re^10: Net::SSH2 not base64 encoded
by averlon (Sexton) on Dec 13, 2024 at 08:37 UTC

    It looks like I hang on the fact, that the script asks to accept the fingerprint, but I am not able to answer "yes" on my tty.

    perl ./scripts/av_ssh_01.pl Name "main::LOG4PERLCONF" used only once: possible typo at ./scripts/a +v_ssh_01.pl line 210. alle optionen: libssh2_knownhost_init(ss->session) -> 0x55c49814aa50 The authenticity of host 'f42240ts' can't be established. Key fingerprint is SHA1:d252c44ef170f176ef2aeb96f059178f52144535. Are you sure you want to continue connecting (yes/no)? Use of uninitialized value $yes in pattern match (m//) at /home/fxuser +2/perl5/lib/perl5/x86_64-linux-gnu-thread-multi/Net/SSH2.pm line 417. Net::SSH2::KnownHosts::DESTROY Host key verification failed: user did not accept the key (-46 LIBSSH2 +_ERROR_KNOWN_HOSTS) at ./scripts/av_ssh_01.pl line 161. Net::SSH2::DESTROY object 0x964c3580

    Any hint how I can make the script wait for an answer to type in?

    Regards Kallewirsch

      Looking at the source code, it wants to load Term::ReadKey or fails. So maybe you don't have that module installed or don't have a terminal connected when the script runs?

      If you want to accept the key anyway, use LIBSSH2_HOSTKEY_POLICY_TOFU as hostkey policy.

        Term::ReadKey is up to date. (2.38)

        Regards Kallewirsch

        I have changed to Net::OpenSSH

        Works without problems!

        Thanks for your help!

        Regards Kallewirsch