нужно на сайт дать лазить одному логину по фтп.
на самом сайте владелец файлов www.
пробовал vsftpd в нем: vsftpd.conf содержал
guest_enable=YES
guest_username=www
заходят под логином whoever, и ничего не видят.
в proftpd.conf в виртуальном сервере
User=www
и то же самое
а вообще надо было бы чтобы любой залогинившийся на сервер, получал uid пользователя www чтобы не надо было менять владельца файлов
Если я правильно понимаю, то вы хотите, чтобы можно было заливать по протоколу ФТП файлы на веб-сервер. И делать это должны несколько юзеров. Я прав?
>Если я правильно понимаю, то вы хотите, чтобы можно было заливать по
>протоколу ФТП файлы на веб-сервер. И делать это должны несколько юзеров.
>Я прав?
абсолютно
Предлагаю такой вариант:1. Для пользователя www назначить корневым каталогом тот, где лежат интересующие нас файлы. Например /var/www
chown root:www /var/www
chmod 775 /var/www2. В настройках vsftpd
chroot_local_user=YES
write_enable=YESТогда если вы зайдете на ФТП под пользователем www, то окажетесь как раз в нужном каталоге, куда будете иметь возможность записовать файлы.
ВНИМАНИЕ: этот метод несет в себе большую потенциальную опасность, так как по протоколу ФТП пароли передаются в открытом виде.
>Предлагаю такой вариант:
>
>1. Для пользователя www назначить корневым каталогом тот, где лежат интересующие нас
>файлы. Например /var/www
>
>chown root:www /var/www
>chmod 775 /var/www
>
>2. В настройках vsftpd
>chroot_local_user=YES
>write_enable=YES
>
>Тогда если вы зайдете на ФТП под пользователем www, то окажетесь как
>раз в нужном каталоге, куда будете иметь возможность записовать файлы.
>
>ВНИМАНИЕ: этот метод несет в себе большую потенциальную опасность, так как по
>протоколу ФТП пароли передаются в открытом виде.мой vsftpd.conf
listen=YES
#
#listen_ipv6=YES
#
anonymous_enable=NO
#
local_enable=YES
#
write_enable=YES
#
#local_umask=022
#
#anon_upload_enable=YES
#
#anon_mkdir_write_enable=YES
#
dirmessage_enable=YES
#
xferlog_enable=YES
#
connect_from_port_20=YES
#
#chown_uploads=YES
#chown_username=whoever
#
#xferlog_file=/var/log/vsftpd.log
#
#xferlog_std_format=YES
#
#idle_session_timeout=600
#
#data_connection_timeout=120
#
nopriv_user=ftp
#
#async_abor_enable=YES
#
ascii_upload_enable=YES
ascii_download_enable=YES
#
#deny_email_enable=YES
# (default follows)
banned_email_file=/etc/vsftpd.banned_emails
#
chroot_local_user=YES
#
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd.chroot_list
#
ls_recurse_enable=YESsecure_chroot_dir=/var/run/vsftpd
#
pam_service_name=vsftpd
#
rsa_cert_file=/etc/ssl/certs/vsftpd.pem##############################
guest_enable=YES
guest_username=www
download_enable=YES
passwd_chroot_enable=YESк сожалению я не могу менять права на файлы сайта, а они там очень жесткие, именно поэтому надо сделать так чтобы залогинившись под whoever ты реально имел права www
>>Предлагаю такой вариант:
>>
>>1. Для пользователя www назначить корневым каталогом тот, где лежат интересующие нас
>>файлы. Например /var/www
>>
>>chown root:www /var/www
>>chmod 775 /var/www
>>
>>2. В настройках vsftpd
>>chroot_local_user=YES
>>write_enable=YES
>>
>>Тогда если вы зайдете на ФТП под пользователем www, то окажетесь как
>>раз в нужном каталоге, куда будете иметь возможность записовать файлы.
>>
>>ВНИМАНИЕ: этот метод несет в себе большую потенциальную опасность, так как по
>>протоколу ФТП пароли передаются в открытом виде.
>
и под www зайти тоже нельзя, иначе если появиться, другой сайт - то кронты :-)
Можно попробовать сделать у пользователя whoever такой же каталог, так и у www, и прописать их в одну группу.
>Можно попробовать сделать у пользователя whoever такой же каталог, так и у
>www, и прописать их в одну группу.одна группа проблемы не решает через чур срогие
Всё решилось в proftpd, там оказывается строку AuthUserFile в основной секции должен был быть раскомментирован :-))
>Всё решилось в proftpd, там оказывается строку AuthUserFile в основной секции должен
>был быть раскомментирован :-))
понимаю что не в тему.... но лучше большое IMHO использовать pure-ftp. он менее дыряв чем proftpd.