Я настраиваю веб-сервер на базе Windows Server 2019. Один из наших поставщиков должен иметь возможность загружать файлы. у меня есть

  • Добавлен sshd
  • Создал логин для использования
  • Создал группу для этого логина
  • Добавлен этот логин в группу и удален из всех остальных групп.
  • Создан каталог для загрузки
  • Учитывая права группы на запись и изменение в этом каталоге
  • Добавлена ​​строка ForceCommand internal-sftp -d "C:\inetpub\ftproot\Upload"в директиву Match для этой группы в sshd_config

Все идет нормально. Этот логин может подключаться к ящику через SFTP, и сеанс автоматически начинается в каталоге Upload , и он может загружать и скачивать файлы оттуда. Но я не могу понять, как запретить ему видеть содержимое других каталогов. Простое удаление логина из группы « Пользователи» не повлияло. Запрещение группового чтения и списка во включающем каталоге ftproot приводит к невозможности подключения (с ошибкой аутентификации). Единственное предложение, которое я нашел за час поиска в Google, - это установить значение дляChrootDirectory, но это приводит к тому, что вход в систему не может подключаться через SFTP или SSH (с очевидными сбоями службы для ответа). Я новичок в Windows Server, и у меня нет идей. Очевидно, должен быть правильный способ сделать это - может ли кто-нибудь указать мне правильное направление?

[Обновлять]

Этот ящик работает под управлением OpenSSH 7.7:

> ssh -V
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5

Когда я добавляю эту строку в директиву Match для группы sftp:

ChrootDirectory "C:\inetpub\ftproot\Upload"

а затем попытайтесь подключиться как любой пользователь, независимо от того, входит ли он в эту группу, это то, что отображается в sshd.log (очевидно, pid, порт и временная метка будут отличаться):

3332 2021-08-17 12:04:24.931 Failed password for invalid user sftpuser from XX.XX.XX.XX port 34240 ssh2
answer

Кажется, ключевой момент здесь - не использовать кавычки вокруг пути в этой строке:

ChrootDirectory C:\inetpub\ftproot\Upload

После внесения этого изменения установление SFTP-соединения в точности соответствовало моим ожиданиям: каталог, которым ограничена группа, отображается как корень.