Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#通过WinSCP/SSH隧道从Windows上载文件_C#_.net_Ssh_Ssh Tunnel_Winscp Net - Fatal编程技术网

C#通过WinSCP/SSH隧道从Windows上载文件

C#通过WinSCP/SSH隧道从Windows上载文件,c#,.net,ssh,ssh-tunnel,winscp-net,C#,.net,Ssh,Ssh Tunnel,Winscp Net,我使用Windows server上的WinSCP桌面应用程序作为物理接口,将文件上载到Linux服务器。我使用SCP协议,并在高级选项中传递SSH命令SSHusername@ipaddress连接到安全服务器以通过隧道连接到要上载文件的服务器。这允许我通过Linux安全服务器将文件直接从Windows上载到端点Linux文件服务器 源Windows服务器->安全Linux服务器->目标Linux服务器 使用C#我可以使用此方法/成功上载或发送命令。但是当我发送命令ssh时username@ip

我使用Windows server上的WinSCP桌面应用程序作为物理接口,将文件上载到Linux服务器。我使用SCP协议,并在高级选项中传递SSH命令
SSHusername@ipaddress
连接到安全服务器以通过隧道连接到要上载文件的服务器。这允许我通过Linux安全服务器将文件直接从Windows上载到端点Linux文件服务器

源Windows服务器->安全Linux服务器->目标Linux服务器

使用C#我可以使用此方法/成功上载或发送命令。但是当我发送命令
ssh时username@ipaddress
我的脚本挂在那里。我认为会话上下文会发生变化,需要一些异步C#魔术

我可以使用以下命令成功发送异步SSH命令:

我需要C#等价物来模拟我的桌面WinSCP应用程序,在这里我传递SSH命令
SSHusername@ipaddress
通过Linux安全服务器从源Windows服务器免费上传到远程Linux文件服务器


这些例子可以结合起来创建我需要的C代码吗?通过异步命令创建WinSCP会话/SSH隧道。我非常熟悉的例子,请帮助

在WinSCP.NET程序集中,WinSCP GUI中“Shell”选项的等效项是:

sessionOptions.AddRawSettings("Shell", "ssh username@ipaddress");

WinSCP GUI可以为您提供


尽管这可能有些过分,但由于WinSCP内置了SSH隧道支持,请参阅


C#相当于:

sessionOptions.AddRawSettings("Tunnel", "1");
sessionOptions.AddRawSettings("TunnelHostName", "example.com");
sessionOptions.AddRawSettings("TunnelUserName", "john");
sessionOptions.AddRawSettings("TunnelPasswordPlain", "password");

不客气。虽然在堆栈溢出问题上,我们还是接受了答案,对此表示感谢。我确实尝试过投票给你的答案,但它表示,声誉低于15的帐户将被考虑,但不会更改公开显示的帖子分数。这是我在这里的第一篇帖子,不知道如何获得声誉,我只有5篇。再次感谢!我写的是投票,不是投票。要接受,你不需要任何声誉。