Назад | Перейти на главную страницу

Настроить многоуровневый доступ по sftp

Я настраиваю сервер sftp, на котором клиенты будут иметь доступ только для чтения. Они войдут в свои каталоги chroot, и это нормально, но мне нужна учетная запись администратора, которая может получать доступ / писать в эти каталоги.

/var/www/hosts <- admin chroot  (root:root, 700)
 -- /domain1    <- client1 chroot (root:root, 700)
 -- /domain2    <- client2 chroot (root:root, 700)
 -- /domain3    <- client3 chroot (root:root, 700)

все пользователи sftp переходят в нужные места после входа в систему, но учетная запись администратора может видеть подкаталоги, но не может войти в них и, очевидно, не может писать в них.

Я попытался установить разрешения ACL для подкаталогов, которые дают учетной записи администратора доступ на запись; это работает, но нарушает доступ клиента к sftp, потому что sshd сообщает о фатальной ошибке о неправильном владении / разрешениях chroot и прерывает вход в систему.

Что я могу сделать, чтобы решить мою проблему?

Хорошо, поэтому я изменил права доступа на 755 для всех каталогов, создал каталог «данных» в каждом домене и установил разрешения на root: admsftp 775 и изменил свой sshd_config, чтобы включить

ForceCommand internal-sftp -d /data

поэтому теперь, когда клиент подключается, они принудительно помещаются в каталог данных, все еще доступный только для чтения. Конечно, они могут подняться по каталогу, но все, что они могут сделать оттуда, - это вернуться в каталог «данных».

Не идеально, но делает то, что мне нужно.