【问题标题】:Implementing SSH Server in C#/.Net在 C#/.Net 中实现 SSH 服务器
【发布时间】:2022-04-20 20:24:40
【问题描述】:

我们正在进行的一个项目刚刚添加了一个新要求:它必须能够使用密钥/对身份验证通过 SFTP (SSH) 接收文件。我们已经找到了一个有趣的 SSH client 库(例如 SSH.Net)集合,但没有找到服务器库。到目前为止,我们发现的最接近的是一个 Python 库,我们正在讨论通过 IronPython 实现它。

我们应该怎么做呢?我们是否缺少任何库,或者我们应该自己实现它?

【问题讨论】:

  • 有什么理由不能只运行一个单独的 SSH 服务器?
  • 你不想自己实现一个——很容易弄错安全协议。 OpenSSH 本身也有一些问题:openssh.org/security.html
  • 我们可以运行单独的 SSH 服务器,这是我们目前的后备方案,但这意味着增加了解决方案的复杂性。

标签: c# .net ssh


【解决方案1】:

另外,FxSsh 是一个纯 C# 实现 SSH 服务器端。在这个阶段,支持EXEC方法和返回流。

欢迎您在https://github.com/Aimeast/FxSsh 上分叉和贡献

【讨论】:

    【解决方案2】:

    在谷歌上快速搜索“.NET SSH 服务器”会发现我们的SecureBlackbox 排在第 4 位。在众多其他功能中,SecureBlackbox 为 .NET 提供 SSH/SFTP 服务器组件。

    【讨论】:

    • 我们试用了这个的演示版本,它看起来是最好的解决方案。不幸的是,它的费用意味着我们无论如何都要使用单独的 SSH 服务器(我们不能再将一千美元转给我们的客户),但是谢谢!
    • @GraemeK.Hefner 供应商许可证的价格为 405 美元(如果您开发用于销售的软件),内部许可证的价格为 294 美元。请私下联系我们获取许可详情。
    【解决方案3】:

    Rebex Tiny SFTP Server 是一个用 C# 编写的极简 SFTP 服务器。您可以在https://github.com/rebexnet/RebexTinySftpServer 找到资源。不过,这取决于商业组件。

    可以在https://www.sftp.net/server-libraries 找到使您能够编写自己的服务器应用程序的 SFTP 服务器组件列表。我只知道其中两个:一个来自 nSoftware(最初来自 Eldos),另一个来自 Rebex。

    【讨论】:

      猜你喜欢
      • 2011-07-30
      • 2011-02-09
      • 2023-03-23
      • 1970-01-01
      • 1970-01-01
      • 2017-04-15
      • 2010-12-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多