我有一台只能通过SSH进行访问的目标计算机,我没有直接连接,因此我需要通过另一台SSH机器进行连接。
直到现在,我使用腻子(SSH)连接到机器A,然后登录时对机器B进行SSH。
我正在尝试创建一个将在计算机B中运行脚本的应用程序,并且我使用SSH.NET,这是我的代码:
using (var client = new SshClient("hostMachineA", "usernameMachineA", "passwordMachineA"))
{
client.Connect();
try
{
if (client.IsConnected)
{
using (var terminalConnection = new SshClient("hostMachineB", "usernameMachineB", "passwordMachineB"))
{
terminalConnection.Connect();
var command = terminalConnection.CreateCommand("ls -ltr");
command.Execute();
MessageBox.Show(command.Result);
terminalConnection.Disconnect();
}
}
client.Disconnect();
}
catch (Exception command)
{
MessageBox.Show(command.Message);
}
}
问题是我的应用程序连接到机器A,但无法与机器B建立连接,它尝试不使用已经从机器A建立的连接来创建新连接。
有什么主意吗?