Você usa o "ChrootDirectory"? Isso explicaria "arquivo não encontrado" se o seu "/ usr / libexec / openssh / sftp-server" existir.
Você deve usar "Subsystem sftp internal-sftp" (ou desistir do Chroot)
Estou com problemas para forçar os usuários a usar somente o sftp ao se conectarem com o ssh.
Eu tenho as seguintes linhas no meu / etc / ssh / sshd_config:
Subsystem sftp /usr/libexec/openssh/sftp-server
Match user USERNAME
ForceCommand internal-sftp
Mas quando tento me conectar via sftp, recebo o erro:
error: subsystem: cannot stat /usr/libexec/openssh/sftp-server: No such file or directory
subsystem request for sftp failed, subsystem not found
No entanto, o arquivo / usr / libexec / openssh / sftp-server existe e parece estar funcionando bem. Se eu não tentar forçar a conexão a ser sftp, então eu posso fazer o ssh bem, então o daemon ssh parece estar manipulando as coisas corretamente, mas forçar o sftp não é.
Alguém tem alguma sugestão? Eu tentei procurar por respostas, mas todas as soluções que eu encontrei parecem ser sobre o servidor sftp não estar no lugar correto. Para mim, o arquivo está definitivamente lá.
Estou usando o CentOS 6 e o OpenSSH 5.3p1. Obrigado por qualquer ajuda.