IP *使用C#工作SSH PublicKey Auth

时间:2014-10-28 07:56:38

标签: c# .net ssh

我试图获得IP * Works SSH / Sexec与AuthMode证书,更好的PublicKey,工作。当我使用简单的用户/密码组合时,一切正常。

我的PublicKey代码:

    private static void DoSExec()
    {
        var sexec = new Sexec
        {
            SSHUser = "abc",
            SSHHost = "someserver",
            SSHPort = 22,
            SSHAuthMode = SexecSSHAuthModes.amPublicKey,
            SSHCert = new Certificate(@"c:\work\key.pem"),
            SSHEncryptionAlgorithms = "aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc"
        };
        sexec.Config("SSHMacAlgorithms=hmac-sha1");
        sexec.Config("SSHAcceptServerHostKeyFingerPrint=c9:e4:53:46:19:e7:58:ec:a7:3d:29:cc:42:87:f5:a5");
        sexec.OnStdout += SexecOnOnStdout;
        sexec.OnConnected += SexecOnConnected;
        sexec.OnError += SexecOnError;
        sexec.OnDisconnected += SexecOnDisconnected;
        sexec.OnStderr += SexecOnStderr;
        try
        {
            sexec.SSHLogon(host, port);
            if (sexec.Connected)
            {
                sexec.Execute("ls");
                if (sexec.ExitStatus != 0)
                {
                    Console.WriteLine(sexec.ErrorMessage);
                }
                sexec.DoEvents();
                sexec.SSHLogoff();
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        Console.ReadKey();
    }

IP * Works的客户端配置SSH lib与在服务器端配置SSH完全相同。

连接本身运行良好。服务器告诉我们通过我的客户端连接到SSH。连接已启动,直到客户端发送SSHLogoff() - 信号。

问题:Execute() - 方法正在做......没事!

任何想法出了什么问题?

非常感谢你。

最好的问候,Andreas

0 个答案:

没有答案