Rebex


More .NET components
using (var client = new Rebex.Net.Sftp())
{
  // connect and log on
  client.Connect("hostname");
  client.Login("username", "password");

  // download a file
  client.Download("/report.csv", @"C:\MyData");
}
Show me more code...
SFTP client library for C# and VB.NET developers. Provides secure remote file system access over an SSH channel using the SFTP protocol. Makes it easy to transfer files between your application and Unix/Windows SSH servers.

Choose the right component: What's the difference between FTP, FTPS, SFTP, FTP/SSL, Secure FTP and SCP?

Why Rebex SFTP

Easy-to-use API

Connect, log on, download a file, disconnect. Upload all text files in a folder at once. It's easy to start developing with our library. Simple code for simple use cases.

Login with... anything

Basic username/password authentication is often not good enough. That's why we support additional authentication methods such as keyboard-interactive, public/private key or X509 certificate authentication, NTLM or Kerberos (with single sign-on as well).

File and directory operations made easy

Upload a file from the filesystem or memory. Rename and move files. Check existing files. Or perform other single file SFTP operations.

Or simply transfer many files at once. Upload and download whole directory structures. Use wildcards or file sets to specify which files to transfer. Monitor transfer progress with events.

Need to work with directories? List their content, create or rename them. You can even delete non-empty folders recursively (and handle symlinks properly) using a single line of code.

SSH client core

Rebex SFTP includes a standalone SSH client library. Need to execute a command on the SSH server or tunnel through it? Want to generate a key pair for SSH authentication? All included.

Security features

One of the main points of using SFTP is to ensure file transfers are secure and reliable. Rebex SFTP provides a rich set of security features. You'll find APIs for verifying server identity and fine-tuning SSH parameters. PKCS8, PuTTY and OpenSSH private key formats are supported. Even private keys stored on smart cards can be used.

Platforms

  • .NET Framework
    2.0, 3.0, 3.5. 4.0, 4.5 both 32-bit and 64-bit editions on Windows XP or later; Visual Studio 2005, 2008, 2010, 2012, 2013
  • .NET Compact Framework
    2.0, 3.5, 3.9 on Windows Mobile, Windows CE, Pocket PC, PDA and SmartPhones, Windows Embedded Compact 2013; Visual Studio 2005, 2008, 2012
  • Mono
    2.10, 3.x on Linux and Apple's OS X
  • Xamarin.iOS
    Xamarin.iOS 6 and 7 ; Xamarin Studio
  • Xamarin.Android
    Xamarin.Android 4 ; Xamarin Studio

Supports Visual Studio 2005, 2008, 2010, 2012 and 2013.

Learn more about supported standards and platforms.

Standards

  • SSH v2
  • SFTP v3 and v4

Trusted by thousands of .NET developers worldwide

Thousands of developers chose Rebex SFTP for adding SFTP and SSH capabilities to their applications.

Want an example? Just check your Visual Studio 2010 or 2012 installation folders and you'll find Rebex DLLs there. It's because Microsoft uses Rebex FTP and SFTP in Visual Studio and several other products.

You'll be in a good company.

Many, many more time-tested features

Rebex SFTP is a mature and stable component maintained since 2006. We have been adding new features year after year, inspired by user feedback. For example:

  • Multi-file transfers
  • Transfer progress monitoring
  • Automated transfer resume
  • IFtp interface - unified API for FTP, FTP/SSL and SFTP
  • Transfer speed limiting
  • Ability to use SFTP in SSIS, SQL CLR and PowerShell
  • Symlinks detection and handling
  • ZLIB compression
  • FIPS 140-2 compliant mode

And many, many more...

Hear from customers

"Just wanted to say thanks! I've got a project that needed SFTP services. I was up and running in under 15 minutes after purchasing the SFTP kit. We've been a long time user of your FTP / SMTP services. Please keep up the good work."
Ben Cramer
Dealer Solutions
See more...