FileZilla внутренне использует PuTTY PSFTP. PSFTP имеет запасной механизм для запуска сервера SFTP, при запуске его через подсистему sftp
не удается.
Он ищет двоичный файл sftp-server
в общих путях, таких как /usr/lib/sftp-server
и /usr/local/lib/sftp-server
и в PATH
. Я предполагаю, что именно так PSFTP/FileZilla (и другие клиенты, такие как мой WinSCP - подробности см. На странице требований SFTP ) смогут устанавливать соединение SFTP, даже если вы отключите подсистему sftp
.
С OpenSSH sftp
вы можете добиться того же, используя ключ -s
:
-s subsystem | sftp_server
Указывает подсистему SSH2 или путь для сервера sftp на удаленном хосте. Путь полезен, когда на удаленном sshd не настроена подсистема sftp.
Пример:
sftp -s /usr/lib/sftp-server user@192.168.1.2
Чтобы полностью запретить SFTP, вам нужно полностью избавиться от двоичного sftp-server
.
Хотя на самом деле это мало что значит. Если вы разрешаете доступ к оболочке (то, что вы делаете, в противном случае механизм отката не сработает), тогда нет смысла отключать SFTP, так как в любом случае можно получить гораздо больший (ущерб), используя доступ к оболочке.
Я полагаю, что резервный механизм существует в основном как способ поддержки серверов SSH-1, у которых не было механизма подсистемы. Но это срабатывает даже в такой ситуации, как ваша.