2011-04-11 116 views
2

我的客户端一直在使用SSH2协议进行文件传输,最近他们决定将其应用托管在云端,他们仍然希望在将文件传输到云端存储时使用SSH协议。任何人都可以提供有关使用Windows Azure在云端进行SSH服务器设置的信息吗?在Windows Azure平台的云端SSH服务器设置

以下是

  • 主机上的云VM角色的SSH服务器,在这种情况下,将在同一个云中的其他Web /辅助角色是强麦访问VM角色的本地存储?

  • 是否有可能在Azure中的Worker角色中使用.NET组件(支付/开放源代码)托管SSH FTP服务器?如果是,请提供有关市场中可用的.NET组件的信息。

  • 如果在Windows Azure中不支持SSH,请让我知道在云中的安全文件传输的其他选择。

我的客户用于从其中进行通过SFTP文件传输使用SSH其供应商的FTP服务器关闭的网络上运行他们的业务的Unix机器。

我们正在为它们构建一些云应用程序,这些应用程序要求它们以文件形式将数据作为输入传输到此云(Web角色)应用程序。

要从封闭网络传输文件并使其在云存储上可用,他们坚持要求仍然使用SSH FTP或使用SSH协议来执行此操作。

我们已经触及了这个需求,并且以下是我们向他们提出的解决方案。

请仔细阅读并提供有关执行文件的SSH FTP到云存储的最佳方法的意见/建议/输入。

  • 在云VM角色主机SSH服务器,并部署他们的网络中的服务,从他们的网络文件传输到云中。在这种情况下,这些文件可能会被保存到虚拟机角色中的文件系统中,我们将如何从虚拟机角色中提取文件并将其保存到共享云存储中,以便在云上运行的其他Web角色可以访问这些文件以获取输入?

  • 是否有可能在Azure中的Worker角色中使用.NET组件(支付/开放源代码)托管SSH FTP服务器?

  • 如果在Windows Azure中不支持SSH,请让我知道使用SSH将安全文件传输的其他备选方法从本地传输到云存储。

+0

刚刚在我的回答中加了一条关于WinSSHD的评论 - 阅读此主题 - 大量有用的建议 - http://forums.iis.net/t/1147827.aspx – Stuart 2011-04-11 19:52:16

+0

对2014问题的交叉引用; 1. []; Azure Windows Server 2012 R2虚拟机上的X.Cygwin SSH服务器出现错误 - 超级用户;; http://superuser.com/questions/722324/cygwin-ssh-server-on-azure-windows-server-2012-r2-vm-giving-errors – AnneTheAgile 2015-01-26 01:47:08

回答

2

答案2开出3:

主机上的云VM角色的SSH服务器,在这种情况下,将在同一个云中的其他Web /辅助角色是强麦访问虚拟机角色的本地存储?

不是本地存储,但你可以让他们访问一个共享的云驱动器 - http://blog.maartenballiauw.be/post/2010/02/02/Using-Windows-Azure-Drive-(aka-X-Drive).aspx - 请注意,只有一个实例可以拥有一个到驱动器的写访问,但很多可以看了。

如果在Windows Azure中不支持SSH,请让我知道在云中的安全文件传输的其他选择。

blob的实际上传/下载可以使用SSL进行保护,并通过您的密钥访问您存储的主机。

说实话,我建议您考虑使用blob存储来满足这个要求。这取决于您要存储多少个文件/ Blob以及您想更改频率的频率,但总体blob存储非常实用且可用。

对于介绍到斑点看到http://blogs.msdn.com/b/jnak/archive/2010/01/11/walkthrough-windows-azure-blob-storage-nov-2009-and-later.aspx


是否有可能在托管Azure中辅助角色使用.NET组件(所许/开放源代码)一个SSH FTP服务器?如果是,请提供有关市场中可用的.NET组件的信息。

可能 - 但我还没有这方面的想法 - 有大量的点击来自http://www.bing.com/search?setmkt=en-GB&q=ssh+ftp+server+c%23

编辑 - 也看看这个话题 - http://forums.iis.net/t/1147827.aspx - 你可以部署WinSSHD的角色?

0

当然,任何事情都是可能的,但是您有一些基本问题需要克服,以获得无缝的SSH体验。最大的问题是不安装SSH - 这是蛋糕。您必须面对的问题是如何在前面有负载平衡器的情况下跨实例使用它。对于单个实例,运行SSH服务器应该没有问题。所有客户都可以轻松连接。一旦有多台运行SSH的服务器,如果与实例的连接断开并且您重新连接到其他实例,则会出现问题。为SLA原因运行多个实例是很好的,所以这是一个常见问题。

现在,RDP(这是一种有状态的连接)在Windows Azure中工作,因为基于套接字的路由器会将流量转发到您希望与之通信的单个实例。您可能可以为SSH做类似的事情。

除了通信问题(假设您使用负载平衡方式进行SSH),您需要考虑持久性。当你将东西FTP到Windows Azure中时,除非你使用的是驱动器(XDrive),否则它只能在本地保存。您需要考虑将这些文件从虚拟机迁移到像blob存储这样的永久性存储。

因此,长话短说。是的,你可以做到这一点,但是做一些正确的工作。

0

如果他不确定在实例上使用命令行,他可以考虑安装webmin它是一个从浏览器运行的优秀应用程序,它可以让你在虚拟的linux实例上以windows方式进行控制。