Мне нужно периодически предоставлять временный и ограниченный доступ к различным каталогам на сервере CentOS linux, на котором установлен vsftp.
Я создал пользователя, использующего useradd [user_name]
и дал им пароль, используя passwd [password]
.
Я создал каталог в /var/ftp
а затем привязываю это к каталогу, к которому хочу ограничить доступ.
Что еще мне нужно сделать, чтобы гарантировать, что когда этот пользователь входит в FTP, он имеет доступ только к этому каталогу?
Полный ответ, который решил мой вопрос для любых других, которые после пошагового руководства ...
Установить vsftpd
с помощью это как руководство.
useradd [user_name]
.passwd [user_name]
. (Вам будет предложено указать пароль)./var/ftp
а затем выполните привязку к «домашнему» каталогу, который вы хотите указать для этого пользователя, с помощью mount --bind /var/www/vhosts/domain.com/ /var/ftp/custom_name/
.Измените домашний каталог пользователя с помощью usermod -d /var/ftp/custom_name/ user_name
В /etc/vsftpd/vsftpd.conf
убедитесь, что настроены все следующие параметры:
Список только пользователей в vsftpd.chroot_list
файл, если вы хотите, чтобы у них был полный доступ к любому месту на сервере. Не перечисляя их в этом файле, вы ограничиваете все vsftpd
пользователей в их указанный домашний каталог.
Другими словами (для справки): -
Для меня это не сработало даже после вышеизложенного. Для каталога уже был установлен local_root, и что бы я ни делал, каталог пользователя не был заключен в тюрьму. Наконец он работает после того, как только изменил
chroot_local_user = ДА
И следующая процедура
- vi /etc/vsftpd.conf
- Добавьте строку user_config_dir = / etc / vsftpd_user_conf (без кавычек)
- mkdir / etc / vsftpd_user_conf;
- cd / etc / vsftpd_user_conf
- vi user_name;
- Введите строку 'local_root = / srv / ftp / user_name'
Только мои два цента, если у кого-то была такая же проблема.
Chrooting, упомянутый в предыдущих ответах, не работал на моем сервере ubuntu 18.04. Я наконец-то заставил его работать, используя эту ссылку: https://passingcuriosity.com/2014/openssh-restrict-to-sftp-chroot/