Using SFTP with .NET via a proxy

    Secure FTP allows you to transfer data securely between servers.

    You can use the Renci SFTP library to route SFTP transfers via XL Routes Static from your .NET app, allowing you to lock down access to our Static IP addresses.

    string host = "sftp.acme.com";
    string username = "sftpuser";
    string password = "sftppass";
    var proxy_host = "us-east-1-static-brooks.xlroutes.com";
    var proxy_username = "xlroutesXXX";
    var proxy_password = "abcdefghijk";
    int port = 22;
    
    ConnectionInfo infoConnection = newConnectionInfo(host,
                                                      port,
                                                      username,
                                                      ProxyTypes.Socks5,
                                                      proxy_host,
                                                      1080,
                                                      proxy_username,
                                                      proxy_password,
                                                      newPasswordAuthenticationMethod(username, password));
    try {
      SftpClient client = newSftpClient(infoConnection);
      client.Connect();
      string upload_file = FileUpload.FileName;
      client.UploadFile(FileUpload.PostedFile.InputStream, upload_file, true);
    } catch (Exception ex) {
      ex.ToString();
    }
    

    This allows you to access an SFTP server that requires a known IP address from cloud platforms, like Microsoft Azure.