Вопрос: vsftpd - local_root = / var / www / sites / $ USER не интерпретируется?


Когда я пытаюсь подключиться к FTP-серверу, я получаю: "500 OOPS: невозможно изменить каталог: / home / $ USER / public_html"

  • когда я делаю echo $ USER - я получаю правильное имя пользователя
  • похоже, что $ USER не интерпретируется внутри моего /etc/vsftpd.conf
  • когда я удаляю «local_root = / var / www / sites / $ USER», я все нормально работаю.

Я запускаю vsftpd 2.2.2 и Ubuntu 10.04.1 LTS Выпуск: 10.04 Codename: lucid


9
2018-01-15 20:19


Источник




Ответы:


Что вам нужно использовать, это комбо user_config_dir и local_root. В главном файле конфигурации /etc/vsftpd/vsftp.conf у вас есть запись вроде:

chroot_local_user=YES
user_config_dir=/etc/vsftpd/users

Внутри этого каталога (/ etc / vsftpd / users) у вас есть файл конфигурации с тем же именем, что и пользователь ($ USER в вашем случае), и внутри этого файла у вас есть:

local_root=/var/www/sites/USER
dirlist_enable=YES
download_enable=YES
write_enable=YES

... где USER - это фактическое имя (не буквально USER или USER).


19
2018-01-16 18:52





Вы должны установить user_sub_token:

user_sub_token=$USER
local_root=/var/www/sites/$USER

2
2018-03-17 11:23