Я пытался настроить свой минимальный 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 / пользователь
drwxrwxr-x user sftp_users incoming
drwxrwxr-x user sftp_users outgoing
Все, что я прочитал, говорит о том, как это должно быть установлено, поэтому, пожалуйста, дайте мне знать, что мне не хватает. Я просто не могу заставить его работать должным образом.
Спасибо за ваше время.
[Редактировать:]
Я использовал эту команду для изменения домашнего каталога моего пользователя;
usermod -d /incoming
таким образом он попадет в / 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@...]#