Sample code for 30+ languages & platforms
Swift

SFTP using SOCKS Proxy

See more SFTP Examples

Demonstrates how to connect to an SFTP/SSH server through a SOCKS4 or SOCKS5 proxy.

Chilkat Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    let sftp = CkoSFtp()!

    // To use a SOCKS4 or SOCKS5 proxy, simply set the following
    // properties prior to connecting:
    // The SOCKS hostname may be a domain name or 
    // IP address:
    sftp.socksHostname = "www.mysocksproxyserver.com"
    sftp.socksPort = 1080
    sftp.socksUsername = "myProxyLogin"
    sftp.socksPassword = "myProxyPassword"

    // Set the SOCKS version to 4 or 5 based on the version
    // of the SOCKS proxy server:
    sftp.socksVersion = 5

    // Note: SOCKS4 servers only support usernames without passwords.
    // SOCKS5 servers support full login/password authentication.

    // Connect to the SSH server.  
    // The standard SSH port = 22
    // The hostname may be a hostname or IP address.
    var hostname: String? = "sftp.example.com"
    var port: Int = 22
    success = sftp.connect(hostname: hostname, port: port)
    if success != true {
        print("\(sftp.lastErrorText!)")
        return
    }

    // Your application is now connected to an SFTP/SSH server 
    // through a SOCKS4 or SOCKS5 proxy. 
    // ..

}