Changes between Version 83 and Version 84 of SftpFrontend


Ignore:
Timestamp:
2012-06-16T23:47:04Z (12 years ago)
Author:
davidsarah
Comment:

update discussion of Twisted rekeying bug

Legend:

Unmodified
Added
Removed
Modified
  • SftpFrontend

    v83 v84  
    2727The '{{{ctime}}}' and '{{{mtime}}}' attributes will always be the same, and are set from the Tahoe {{{linkmotime}}} timestamp, which is changed only when the link from the parent directory is modified (see the [http://tahoe-lafs.org/trac/tahoe-lafs/browser/docs/frontends/webapi.rst#about-the-metadata 'About the metadata' section of webapi.rst]). These fields are not updated when the contents of a mutable file are changed. The SFTP protocol and the server are able to represent dates up to the year 2106, but some clients may print dates incorrectly after 2037.
    2828
    29 Versions of Twisted before 11.0 have [http://twistedmatrix.com/trac/ticket/4395 a bug in support for rekeying]. This might cause a hang or 100% CPU usage by the gateway when a client tries to rekey. Depending on the client, rekeying may be triggered based on a time interval or the amount of data sent (for example, 1 GiB to 4 GiB for the openssh client); this problem will typically only affect long-lived connections or very large files. Some clients have options to disable rekeying:
    30 * for OpenSSH and sshfs, either use the option {{{-o RekeyLimit=0}}}, or add the line {{{RekeyLimit=0}}} to {{{~/.ssh/config}}} (TODO: please test this!)
    31 * for WinSCP, [#WinSCP see that section below].
     29Versions of Twisted before 11.0 have [http://twistedmatrix.com/trac/ticket/4395 a bug in support for rekeying]. This might cause a hang or 100% CPU usage by the gateway when a client tries to rekey. Depending on the client, rekeying may be triggered based on a time interval or the amount of data sent (for example, 1 GiB to 4 GiB for the openssh client), so this problem may not happen immediately when testing. Tahoe-LAFS v1.10 will require Twisted >= 11.0 to avoid this problem; in the meantime, we recommend that you either:
     30* Install Twisted 11.0 or later manually (if it is not already installed), or
     31* Use an option in your client to disable rekeying. For example in WinSCP, in the Key exchange section of the options under SSH, set both 'Max minutes before rekey' and 'Max data before rekey' to 0. Note that OpenSSH and sshfs do not seem to have an option to do this that works, contrary to what a previous version of this page said.
     32
     33Disabling rekeying [http://winscp.net/eng/docs/ui_login_kex#reexchange might introduce cryptographic weaknesses], so updating Twisted is the preferred solution.
    3234
    3335
     
    6971A POSIX application might assume that deleting a non-empty directory will fail, when it does not on a Tahoe filesystem (#1362).
    7072
    71 To avoid potential bugs with rekeying, either use the {{{-o RekeyLimit=0}}} option to {{{sshfs}}}, or add the line {{{RekeyLimit=0}}} to {{{~/.ssh/config}}}.
     73To avoid potential bugs with rekeying, check that the version of Twisted shown by {{{tahoe --version-and-path}}} is at least 11.0. If not, install a more recent version of Twisted. This will not be an issue for Tahoe-LAFS v1.10 or later.
    7274
    7375To unmount an sshfs filesystem, make sure you are in the {{{fuse}}} group (if necessary use "{{{sudo adduser `whoami` fuse}}}"), and then do "{{{fusermount -u mountpoint}}}".
     
    108110 * In the Environment section, set 'UTF-8 encoding for filenames' to 'On'.
    109111 * In the Connection section, set 'Server response timeout' to the maximum 6000 seconds.
    110  * In the Key exchange section under SSH, set both 'Max minutes before rekey' and 'Max data before rekey' to 0.
    111112 * Use '127.0.0.1' instead of 'localhost' if WinSCP says the connection has been refused. It sometimes tries connecting to [::1] (IPv6 localhost), where tahoe does ''not'' listen.
    112113