FTP
    • PDF

    FTP

    • PDF

    Article summary







    Providers

    Settings are specific to service providers. Use the provided connection profiles.

    Note - All connection profiles are available through the *Preferences → Profiles* tab.
    

    FTP Connect Mode

    Choose between an Active (PORT) or Passive (PASV) connect mode per bookmark or when opening a new connection. The default setting can be set in the System Preferences in Network → Advanced... → Proxies → Use Passive FTP Mode (PASV).

    Character Encoding

    The character encoding used to parse directory listings can be set as a per bookmark setting. If special characters such as Umlaute aren't displayed correctly in the browser, try to change the character encoding used. To change the character encoding for the current browser, use View → Text Encoding. The setting is also available per bookmark. Try UTF-8 (the default), ISO-8859-1 and Windows-1252.

    TLS Connections (FTPS)

    FTP with explicit TLS is supported. Interoperable with TLSv1.2. Implicit FTPS with no negotiation is deprecated and not supported. FTPS should not be confused with the SSH File Transfer Protocol (SFTP).

    Warning - TLSv1 and TLSv1.1 deprecation
    TLSv1 and TLSv1.1 are no longer supported as of
    * Cyberduck [8.1.0](https://github.com/iterate-ch/cyberduck/milestone/184) or later
    * Mountain Duck [4.9.0](https://mountainduck.io/changelog/) or later
    

    Mutual TLS

    Mutual (two-way) TLS with a client certificate for authentication is supported. When a server requests a client certificate for authentication, a prompt is displayed to choose a certificate with a private key that matches the given issuer name requested from the server. Matching certificates are searched for in the Keychain on macOS or the Windows Certificate Manager respectively.

    Switch to Secure Connection

    If you attempt to connect to a server using FTP without TLS transport security but the server advertises support for TLS (as a response to FEAT), a prompt is displayed to secure the connection.

    You can always switch back to FTP without TLS transport security by changing the protocol selection in the bookmark to FTP (File Transfer Protocol).

    Trust Certificate

    If the certificate is not trusted by the system, you are asked to make an exception if you still want to connect to the site that cannot be verified. This failure during certificate trust verification is most often the case when the certificate is invalid either

    • Because the hostname does not match the common name in the certificate. You will get the error message You might be connecting to a server that is pretending to be….
    • The certificate is self signed or signed by a root authority not trusted in the system.
    • The certificate is expired.

    You can temporarily or permanently allow to connect nevertheless by choosing Continue. To remember your choice, select Always Trust….

    Distribution (CDN)

    You can enable custom origin Amazon CloudFront (Content Delivery Network) distribution using File → Info → Distribution (CDN).

    Remote Commands

    Use Go → Send Command... to open a command input window for the current browser.

    Connected to a FTP server this allows to send arbitrary command not available through the user interface of the browser. Possibly these are extensions to the standard FTP protocol your server may support you can invoke with the SITE prefix. Type SITE HELP for supported commands.

    Server Compatibility

    ProFTPd

    • You need to have the option set TLSOptions NoSessionReuseRequired for FTP-TLS connections (Issue #5087). If configuring the server is not an option, users should switch back to plain FTP connections. Choose FTP (File Transfer Protocol) in the bookmark protocol setting. Most users hit by this compatibility issue have been asked to secure the connection because support for TLS was detected upon negogiating the connection.

    Example configuration:

    TLSOptions
    
      The NoSessionReuseRequired option has been added.  As of
      ProFTPD 1.3.3rc1, mod_tls only accepts SSL/TLS data connections
      that reuse the SSL session of the control connection, as a security
      measure.  Unfortunately, there are some clients (e.g. curl) which
      do not reuse SSL sessions.
    
      To relax the requirement that the SSL session from the control
      connection be reused for data connections, use the following in the
      proftpd.conf:
    
        <IfModule mod_tls.c>
          ...
          TLSOptions NoSessionReuseRequired
          ...
        </IfModule>
    
    • The option TLSOptions AllowClientRenegotiations must be set for FTP-TLS connections (Issue #3012).
    • The option TLSProtocol SSLv23 must be set for FTP-TLS connections (Issue #5061).

    vsFTPd

    • The option require_ssl_reuse=NO must be set for FTP-TLS connections (Issue #5087).

    Preferences

    Connection → Text Encoding

    The text encoding selected is used to decode the filenames in a directory listing sent by the server. It is important this matches the text encoding used by the server to encode the characters as otherwise characters not in the ASCII range (such as German Umlaute) are not displayed correctly. UTF-8 (the default), ISO-8859-1 and Windows-1252 are the most common. You can also change the text encoding per browser using View → Text Encoding.

    Default Protocol Handler

    You can set Cyberduck or a third party application as the default application (protocol handler) for FTP in Preferences → FTP. When you click URLs in another application like your web browser, this application is opened to open the URL instead.

    Known Issues

    Modification Date

    Requires server-side support for MFMT or UTIME extensions.

    Maximum Number of Connections

    Many servers limit the number of allowed connections with an error message like 530 Sorry, the maximum number of clients (10) from your host are already connected.. Because FTP is a stateful protocol it requires opening separate connections when transferring files in parallel. Refer to limit the number of connections allowed for the file transfers.

    Error Opening Data Socket

    For data transfers and possibly file listings (depending on the features supported by the server), a second data connection must be opened using PASV or PORT commands which is referred to as a passive or active data connection.

    Depending on the firewall and router configuration in your network there may be errors reported:

    • Failure opening active data socket reports I won't open a connection to xxx.xxx.xx.xx (only to xxx.xx.xxx.x)

    It is not Possible to Change Permissions

    The error message FTP Error: SITE not understood or similar is displayed. The server does not support this feature (which is an optional extension to the FTP protocol) and can not be used.

    Listing Directory Fails or Shows no Content

    Various options are available to adjust the usage of different directory listing commands (LIST, STAT and MLSD). Directory listings are requested using STAT, MLSD, LIST -a and LIST commands in that order. If a failure is detected (because the server may not support the command), the next option is tried. Because this can be fuzzy logic, it may still be that Cyberduck does not correctly fall back to a supported list command. You may then try to force the use of a given command.

    To disable STAT for directory listings, change the hidden configuration option as follows:

    defaults write ch.sudo.cyberduck ftp.command.stat false
    

    To disable LIST -a for directory listings, open a Terminal.app window and enter

    defaults write ch.sudo.cyberduck ftp.command.lista false
    

    To disable MLSD for directory listings, open a Terminal.app window and enter

    defaults write ch.sudo.cyberduck ftp.command.mlsd false
    

    Restart Cyberduck.

    Alternatively, you can use one of the connection profiles below for which the mentioned directory listing commands are already disabled.

    • Download the FTP (Compatibility Mode) Connection Profile or install it from Preferences… → Profiles for preconfigured settings.
    • Download the FTP-SSL (Compatibility Mode) Connection Profile or install it from Preferences… → Profiles for preconfigured settings.
    Connection profiles are available through the *Preferences → Profiles* tab.
    

    Interoperability with ASUS Routers

    Asus Routers are incapable of performing basic STAT-requests. This is in direct violation of RFC9591 which states that STAT should behave like LIST when a path name is given - which is not the case.
    Because of this, the usage of the FTP (Compatibility Mode) Connection Profile is mandatory to get proper access to drives connected to an ASUS Router.

    File Locks with vsFTPd

    Set the property lock_upload_files=NO in vsftpd_conf.


    Was this article helpful?