Lsh

lsh is a free implementation of version 2 of the SSH protocol and a client and server tool that use it.

Debian SFTP installation notes
In Debian, the lsh-server package contains the lshd server daemon functions. This package must be installed on a host to allow clients to connect via ssh or sftp. The sftp capability, although present, is turned off by default. This is not well documented. In Debian the sftp feature is controlled by a default settings file. After installation you can edit this file:

/etc/default/lsh-server

The default file contents will look something like this:

# LSHD_PORT="22" ENABLE_SFTP="yes"
 * 1) Configuration file generated by lsh-server-config.
 * 2) You can change the lsh-server configuration either by editing
 * 3) this file, or by running /usr/sbin/lsh-server-config, which uses
 * 4) a debconf interface to set up lsh-server.

The variable ENABLE_SFTP in this file must be set to y or Y or true to allow sftp support.

This variable is interpreted in the the start/stop script lsh-server:

When this script is run to start or restart the service, if the ENABLE_SFTP value is true or yes, this argument: --subsystems sftp=/usr/sbin/sftp-server.lsh is added to the invocation of lshd to enable the sftp functions. After changing this default setting, restart the server to get sftp working. Do something like this:

sudo /etc/init.d/lsh-server restart