in reply to Re^3: get ssh key passphrase from agent
in thread get ssh key passphrase from agent

Can you post your example code which fails for you, so we can try to replicate your situation?

  • Comment on Re^4: get ssh key passphrase from agent

Replies are listed 'Best First'.
Re^5: get ssh key passphrase from agent
by ninto1 (Novice) on Aug 31, 2022 at 07:32 UTC

    Thank you for helping. Sure:

    #!/usr/bin/perl -w use Net::SSH2; my $ssh2 = Net::SSH2->new(); $ssh2->connect('158.226.63.99') or $ssh2->die_with_error; $ssh2->auth_agent('z004kapc') or $ssh2->die_with_error; my $chan = $ssh2->channel() or $ssh2->die_with_error; $chan->exec('pwd') or $ssh2->die_with_error; print while <$chan>;

      And line 7 is the line where you try to talk to the agent. I presume that the environment variables are set up so that the domain socket etc. are found?

      Does the error message change when you set the environment variables ($ENV{SSH_AUTH_SOCKET} ?) to some invalid value before creating $ssh2?

      Does your Perl process run as the same user as the ssh process you're using to connect?

      Maybe consider setting trace => -1 in the constructor to dump lots (and lots) of information, and maybe compare that to what the ssh -vvv executable does. Maybe there is a difference that shows up?

      my $ssh2 = Net::SSH2->new(trace => -1);

        This is very helpful, since I don't have this env. Variable for some reason.

        I think a cause for this could be that I use Windows, since I need to develop it for windows.

        Do you know, how I could make it compatible nevertheless?

        Edit: I noticed that it may come across sarcastic, but it is actually helpful, because it made me find out I don't have it