Sftp


 * sshfs
 * chroot про чрут для sftp

Cпособ доступа к удаленной файловой системе. Умеет докачивать файлы. Удалять их. Метаданные менять (какие?) Интерактивный в отличие от scp. Позволяет ввозить команды. Например df. У команд есть ключи, но не все что имеют те же команды во FreeBSD. Например ls -alh дает.

SFTP-сервер встроен в OpenSSH. Для того чтобы включить sftp-server в sshd, необходимо указать его в конфигурационном файле sshd_config в качестве подсистемы: Subsystem      sftp    /usr/libexec/sftp-server. Во FreeBSD это сделано по умолчанию.

Пользователей показывает как uid, а не каноническими именами. Также и командам надо передавать uid. А как его узнавать?

Позволяет менять аттрибуты и permissions chgrp grp path                    Change group of file 'path' to 'grp' chmod mode path                   Change permissions of file 'path' to 'mode' chown own path                    Change owner of file 'path' to 'own' lumask umask                      Set local umask to 'umask'

Настройка
Видимо связанное с chroot, а не с sftp: директория со стандарным umask (где группа не может писать drwxr-xr-x) - пускает, а если у группы есть права на запись (drwxrwxr-x) не пускает с сообщением в логе Dec 6 08:04:23 dezkat sshd[18136]: fatal: bad ownership or modes for chroot directory component "/var/user/backups/"

Но если дать группу того пользователя который чрутится, то будет пускать.

Маска создаваемых файлов? umask есть еще маска пользователя по умолчанию ForceCommand   internal-sftp -u 007


 * -f AUTH по умолчанию
 * -l VERBOSE для повышения уровня

Чтобы было 	rw-rw-r-- 	rwxrwxr-x ForceCommand   internal-sftp -u 002

man sftp-server

Графические клиенты

 * mucommander c поддержкой SFTP

Использование
На сервере Локально
 * ls
 * pwd
 * lpwd
 * lcd

If ether the -P or -p flag is specified, then full file permissions and access times are copied too.

If the -r flag is specified then directories will be copied recursively. Note that sftp does not follow symbolic links when performing recursive transfers.

Вывод ls 1004 это группа, второй ноль это root sftp> ls -alh file.tar -rw-r--r--   0 0        1004        29.5G Nov 13 07:05 file.tar

Диагностика
Если scp запрещен и пишет exec request failed on channel 0 sftp username@10.10.10.10 cd destination_directory put * echo $?

“sftp”, no additional configuration of the environment is neces‐ sary if the in-process sftp server is used, though sessions which use logging do require /dev/log inside the chroot directory (see            sftp-server(8) for details).

Как только ставим /sbin/nologin в качестве интепретатора, то пускать по SSH перестает со словами This account is currently not available. Connection to website.ru closed.

Ограничение доступа используя scponly
Для работы с такими пользователями рекомендую использовать scponly (/usr/ports/shells/scponly).

Пользователи, для которых в качестве командного интерпретатора указано /usr/local/bin/scponly, смогут получить доступ к серверу только с помощью sftp и scp.

https://wiki.archlinux.org/index.php/SFTP-chroot