我使用SSH.NET库在(Red Hat)服务器上执行命令 - 如下所示:
var response = string.Empty;
using (var client = new SshClient("<host>", "<username>", "<password>"))
{
client.Connect();
var cmd = client.CreateCommand("<some command>");
response = cmd.Execute();
client.Disconnect();
}
我工作得很好 - 除了我必须使用jumphost ......
这通常是通过连接到jumphost并执行&#39; ssh&#39;命令连接到另一台服务器:
ssh <user>@<server>
在连接之前,系统会要求您输入密码。您现在已连接到另一台服务器 - 该服务器以&#39;退出&#39;结束。命令。
这可以在SSH.NET(或其他C#库)中实现吗?
我尝试过使用&#39; RunCommand&#39;返回:
Pseudo-terminal will not be allocated because stdin is not a terminal.