Я использую SFTP с активным каталогом. После аутентификации пользователей я перенаправляю всех пользователей в один каталог, который upload2
. Но теперь я хочу перенаправить некоторых пользователей в один каталог, а некоторых пользователей в другой каталог с помощью директивы ChrootDirectory. Насколько мне известно, в ChrootDirectory мы можем использовать только %h
и %u
параметры. Можно ли указать условие в директиве ChrootDirectory или в дополнительных параметрах?
AllowGroups *
UsePAM yes
Subsystem sftp internal-sftp
Match Group sftp-users
ChrootDirectory /upload2
AllowTcpForwarding no
Вы не можете использовать условие в ChrootDirectory
директива. Но Match
Директива разрешает условия, вот для чего она нужна.
Поместите одних пользователей в одну группу, а других - в другую. И введите правило для каждой группы с отдельной папкой:
Match Group sftp-users1
ChrootDirectory /upload1
Match Group sftp-users2
ChrootDirectory /upload2
Или, если это невозможно, явно укажите пользователей в каждом правиле:
Match User user1,user2,user3
ChrootDirectory /upload1
Match User user4,user5,user6
ChrootDirectory /upload2