CentOS 6.5 ssh ChrootDirectory не работает
Я пытался настроить минимальную 64-битную машину CentOS 6.5, чтобы пользователи SFTP могли подключаться и получать доступ к определенным папкам. Я могу использовать sftp с помощью команды unix: "sftp user@localhost" и перемещаться по ограниченному каталогу, но я не могу использовать LS или любые другие подобные команды. Однако реальная проблема заключается в том, что я вообще не могу подключиться с помощью FileZilla. Я просто получаю эту ошибку:
Status: Retrieving directory listing...
Command: pwd
Response: Current directory is: "/"
Command: ls
Status: Listing directory /
Error: Unable to open .: permission denied
Error: Connection timed out after 20 seconds of inactivity
Я хотел бы иметь возможность использовать LS при использовании команды SFTP в Unix, но самое главное, мне нужно, чтобы она работала с FileZilla.
Вот описание текущей настройки:
/ И т.д. / SSH / sshd_config
Subsystem sftp internal-sftp
Match Group sftp_users
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory /var/sftp/%u
ForceCommand internal-sftp
пользователь grep / etc / passwd
user:x:500:500::/var/sftp/user/incoming:/sbin/nologin
пользователь группы
user : user sftp_users
ll / | grep var
drwxr-xr-x root root var
ll / var | grep sftp
drwxr-xr-x root root sftp
ll / var / sftp | пользователь grep
drwxr-xr-x root root user
ll / var / sftp / user
drwxrwxr-x user sftp_users incoming
drwxrwxr-x user sftp_users outgoing
Все, что я прочитал, говорит о том, как это должно быть настроено, поэтому, пожалуйста, дайте мне знать, что мне не хватает. Я просто не могу заставить его работать должным образом.
Спасибо за ваше время.
[Редактировать:]
Я использовал эту команду для изменения домашнего каталога моего пользователя;
usermod -d /incoming
таким образом он попадет в / входящий, а не полный путь к каталогу, как это было ранее.
пользователь grep / etc / passwd
user:x:500:500::/incoming:/sbin/nologin
ls -lrtd / var / sftp / пользователь / входящий
drwxrwxr-x user sftp_users /var/sftp/user/incoming
sshd_config
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp -f AUTH -l INFO
Match Group sftp_users
ChrootDirectory /var/sftp/%u
ForceCommand internal-sftp
Тем не менее, я все еще получаю те же ошибки при использовании команды SFTP в UNIX и FileZilla в Windows.
Я добавил запись уровня отладки в конфигурацию sshd, но сообщения не заполняются в файле / var / log / messages для кого-либо, кроме пользователя root. Так что этот маршрут не работает в настоящее время. Кроме того, файл / var / log / secure не содержит ошибок при аутентификации SFTP и запуске сеанса.
SFTP выход
[root@...]# sftp user@localhost
Connecting to localhost...
user@localhost's password:
sftp> ls
Couldn't get handle: Permission denied
sftp> cd ..
sftp> cd incoming
Couldn't canonicalise: Permission denied
sftp> quit
[root@...]#