LinuxForum.Fans
Тема

vsftp local_root

Автор: chel 11 сообщений 5643 просмотров
#136777

привет всем. Тут задача - настроить vsftp для локальных пользователей. Хотя на эту тему уже было достаточно тут сказанно. но разобраться не могу. Указываю в vsftpd.conf тропу local_root=/home/ftphome, пишет

500 OOPS: cannot change directory:/home/hat Login failed
. Меняю на /var/www тогда все пашет. Права на /home/ftphome 777. Еще фишка: уберу guest_enable=YES тогда локальным юзером не могу залогинится вообще

listen=YES
anonymous_enable=NO
local_enable=YES
#virtual_use_local_privs=YES
write_enable=YES
#connect_from_port_20=YES
#secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
guest_enable=YES
#user_sub_token=$USER
local_root=/home/ftphome
chroot_local_user=YES
#hide_ids=YES

спасибо заранее

#136778

chel, покажите строку пользователя, под которым вы заходите, из файла /etc/passwd

#136780

hat:x:500:500::/home/hat:/bin/bash

#136781

Попробуйте так:
local_root=/home

#136782

не, таже картина
500 OOPS: cannot change directory:/home
Login failed.

#136784
text
user_sub_token=$USER
local_root=/home/$USER
#136787

нет, тоже не пашет :( . Может какогото параметра не хватает. Если у вас работает, может свой конфиг запостите?

#136800

У меня настроено для виртуальных пользователей — download и upload, один из которых может только скачивать, другой и скачивать и загружать на сервер. Логины и пароли виртуальных пользователей хранятся в berkeley базе (её надо создать).
Конфигурация:

/etc/vsftpd/vsftpd.conf

text

anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
dirmessage_enable=YES
dirmessage_enable=YES
ftpd_banner=Attention! You are on the FTP server belonging to the Lupo Alberto.
xferlog_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=virtual
listen=YES
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/vsftpd_user_conf
user_sub_token=$USER
local_root=/home/ftp_share/$USER

/etc/vsftpd/vsftpd_user_conf/download

text
anon_world_readable_only=NO
# If enabled, all user and group information in directory 
# listings will be displayed as "ftp".
hide_ids=YES

/etc/vsftpd/vsftpd_user_conf/upload

text
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES

В каталоге /etc/vsftpd/ имеется база для авторизации пользователей.

Для pam-авторизации создан файл /etc/pam.d/vsftpd

text

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

У виртуальных пользователей имеются домашние каталоги

text

ls -l /home/ftp_share
итого 0
drwxr-xr-x 3 virtual virtual 224 Янв 31 13:17 download/
drwxr-xr-x 2 virtual virtual  80 Янв 31 13:14 upload/
#136803

У vsftpd имеются очень подробные примеры его конфигурации и использования — http://ompldr.org/vN29vcA

#136810

спасибо, буду разбираться smile

#136813

В своём примере забыл упомянуть, что нужно создать виртуального пользователя:

text

# grep virtual /etc/passwd
virtual:x:1003:1003::/home/ftp_share:/bin/bash
Войдите или зарегистрируйтесь, чтобы ответить.