@SlyDeath

Как запереть ftp пользователя в определённой папке?

Здравствуйте!
Ответ не нагуглился. chroot_local_user=YES не помогает, пользователь всё равно может подняться выше своей домашней директории. Я обратил внимание, что некоторые сервера при входе по FTP показывают путь не /var/www/ftp а просто / и нет ссылки на подъём выше в принципе. Как подобное можно настроить с vsftpd?

listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
user_sub_token=$USER
local_root=/var/www/ftp
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
  • Вопрос задан
  • 1965 просмотров
Решения вопроса 1
@SlyDeath Автор вопроса
Решено!

Убрал:
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

И добавил:
allow_writeable_chroot=YES

Оба комментатора подсказали путь решения. Спасибо! :)

Ошибка возникает в том случае, когда у учетной записи, от которой идет подключения есть права на запись в корневую домашнюю директорию, а также используется безопасное соединение через TLS. В vsFTPd, по умолчанию, это приводит к ошибке. А мне и надо было дать запись в корень, а не вложенную папку. Директива allow_writeable_chroot позволяет писать в корень чрута.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@q2digger
никого не трогаю, починяю примус
Странно, проверил, все работает как надо - chroot в своей папке, выше выйти не может.
но я не использую
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

у вас лист точно содержит правильных пользователей?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы