13

A project we're working on just got a new requirement added to it: it has to be able to receive files through SFTP (SSH) using key/pair authentication. We've been able to find an interesting collection of SSH client libraries (such as SSH.Net), but no server ones. The closest we've found so far is a Python library that we're debating implementing through IronPython.

How should we go about doing this? Are we missing any libraries, or should we work on implementing it ourselves?

3
  • 1
    Any reason why you can't just run a separate SSH server? Commented Jul 12, 2012 at 16:30
  • 3
    You don't want to implement one yourself - it's too easy to get the security protocol wrong. OpenSSH itself has had it share of issues: openssh.org/security.html Commented Jul 12, 2012 at 16:33
  • We can run a separate SSH server, and that's our fallback at the moment, but it means added complexity to the solution. Commented Jul 12, 2012 at 17:39

2 Answers 2

6

Also, FxSsh is a pure C# implementing SSH server side. In this stage, supported EXEC method and return stream.

you are welcome Fork and Contribute on https://github.com/Aimeast/FxSsh


Update year 2025:

Now, support rsa-sha2-*, ecdsa-*, ecdh-* algorithms, shell, exec, sftp shells, direct-tcpip, forwarded-tcpip connections.

netcore target: net8.0

Sign up to request clarification or add additional context in comments.

Comments

0

Rebex Tiny SFTP Server is a minimalist SFTP server written in C#. You can find sources at https://github.com/rebexnet/RebexTinySftpServer. It depends on a commercial component though.

The list of SFTP server components which will enable you to write your own server application can be found at https://www.sftp.net/server-libraries. I am aware of only two of them: one is from nSoftware (originaly from Eldos) and one from Rebex.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.