我为自己的企业编写了一个应用程序。我使用ssh连接连接到服务器。但是在连接到SOLARIS服务器时出现键盘交互错误。我找到了一种方法。我正在从Linux服务器到solaris服务器执行ssh。 这可以手动执行,但是在c#中执行此操作时无法得到响应。
if (txtSunucuismi.Text != "")
{
using (client = new SshClient("hostname1", 22, LDAP.username, LDAP.pass))
{
try
{
client.ConnectionInfo.Timeout = TimeSpan.FromSeconds(120);
client.Connect();
ss = client.CreateShellStream("msoffline",80,60,800,600,65536);
SshCommand sc1 = client.CreateCommand("ssh " + LDAP.username + "@hostname2");
listboxsonuc.Items.Add(sc1.CommandText);
sc1.Execute();
listboxsonuc.Items.Add(sc1.Result);
SshCommand sc2 = client.CreateCommand(LDAP.pass);
listboxsonuc.Items.Add(sc2.CommandText);
sc2.Execute();
listboxsonuc.Items.Add(sc2.Result);
SshCommand sc3 = client.CreateCommand("bash");
listboxsonuc.Items.Add(sc3.CommandText);
sc3.Execute();
listboxsonuc.Items.Add(sc3.Result);
SshCommand sc4 = client.CreateCommand("grep " + txtSunucuismi.Text + " /etc/hosts");
listboxsonuc.Items.Add(sc4.CommandText);
sc4.Execute();
listboxsonuc.Items.Add(sc4.Result);
client.Disconnect();
}
catch (Exception ex)
{
MessageBox.Show("Hata :"+ex.Message);
client.Disconnect();
}
}
}