URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 85991
[ Назад ]

Исходное сообщение
"VSFTPD Ошибки с кодом 550"

Отправлено plaguekriz , 17-Июл-09 11:22 
Добрый день. У меня есть анонимный фтп-сервер (vsftpd 2.0.5, centos 5.2), у которого есть веб-интерфейс. Проблема в том, что через клиента и через консоль я захожу нормально, директории читаются, файлы скачиваются, а вот через веб-ну никак не получается: при загрузке страницы и при попытке скачать файл по ссылке мозила дает ошибку 550 Failed to change directory.

В логах об этом пишется так:

Fri Jul 17 06:12:43 2009 [pid 21349] CONNECT: Client "ххх.xxx.xxx.xxx"
Fri Jul 17 06:12:43 2009 [pid 21349] FTP response: Client "ххх.xxx.xxx.xxx", "220 (vsFTPd 2.0.5)"
Fri Jul 17 06:12:43 2009 [pid 21349] FTP command: Client "ххх.xxx.xxx.xxx", "USER anonymous"
Fri Jul 17 06:12:43 2009 [pid 21349] [anonymous] FTP response: Client "ххх.xxx.xxx.xxx", "331 Please specify the password."
Fri Jul 17 06:12:43 2009 [pid 21349] [anonymous] FTP command: Client "ххх.xxx.xxx.xxx", "PASS <password>"
Fri Jul 17 06:12:43 2009 [pid 21348] [ftp] OK LOGIN: Client "ххх.xxx.xxx.xxx", anon password "mozilla@example.com"
Fri Jul 17 06:12:43 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "230 Login successful."
Fri Jul 17 06:12:43 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "SYST"
Fri Jul 17 06:12:43 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "215 UNIX Type: L8"
Fri Jul 17 06:12:43 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "PWD"
Fri Jul 17 06:12:43 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "257 "/""
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "TYPE I"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "200 Switching to Binary mode."
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "PASV"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "227 Entering Passive Mode (yyy,yyy,yyy,yyy,154,235)"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "SIZE /upload_4/films/r70/ok.gif"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "550 Could not get file size."
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "MDTM /upload_4/films/r70/ok.gif"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "550 Could not get file modification time."
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "RETR /upload_4/films/r70/ok.gif"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "550 Failed to open file."
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FAIL DOWNLOAD: Client "ххх.xxx.xxx.xxx", "/upload_4/films/r70/ok.gif", 0.00Kbyte/sec
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "PASV"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "227 Entering Passive Mode (yyy,yyy,yyy,yyy,189,247)"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP command: Client "ххх.xxx.xxx.xxx", "CWD /upload_4/films/r70/ok.gif"
Fri Jul 17 06:12:44 2009 [pid 21350] [ftp] FTP response: Client "ххх.xxx.xxx.xxx", "550 Failed to change directory."

vsftpd.conf (там, как я сам подозреваю много лишних строк-это следствие танцев с бубном smile.gif ):

#Anonymous user settings
listen=YES
anonymous_enable=YES
anon_umask=0000
anon_root=/var/ftp/pub
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
anon_world_readable_only=NO
chown_uploads=YES
chown_username=ftp
#chown_upload_mode=0777
file_open_mode=0777
#delete_failed_uploads=YES
local_enable=YES
write_enable=YES
#local_umask=022
dirmessage_enable=YES
connect_from_port_20=YES
idle_session_timeout=6000
data_connection_timeout=1200
nopriv_user=ftp
#chroot_local_user=YES
#passwd_chroot_enable=YES
#pam_service_name=vsftpd
#userlist_enable=YES
userlist_deny=NO
#tcp_wrappers=YES
#force_dot_files=YES
xferlog_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
log_ftp_protocol=YES

Подскажите, как настроить корректно?


Содержание

Сообщения в этом обсуждении
"VSFTPD Ошибки с кодом 550"
Отправлено ALex_hha , 17-Июл-09 11:52 
Показывай права на файл и папки

"VSFTPD Ошибки с кодом 550"
Отправлено alex nop , 18-Июл-09 03:33 
>Показывай права на файл и папки

Дополню.

Если идем через http, значит в эти каталоги должен будет попадать пользователь apache (или тот от имени которого запущен web-сервер).

Дальше возможные косяки: прав на прохождения в каталог нет на уровне файловой системы, либо selinux бьет по рукам (он это умеет, если включен).

Так что еще и /var/log/audit/audit.log не мешало бы проверить.


"VSFTPD Ошибки с кодом 550"
Отправлено alex nop , 18-Июл-09 03:36 
>[оверквотинг удален]
>Дополню.
>
>Если идем через http, значит в эти каталоги должен будет попадать пользователь
>apache (или тот от имени которого запущен web-сервер).
>
>Дальше возможные косяки: прав на прохождения в каталог нет на уровне файловой
>системы, либо selinux бьет по рукам (он это умеет, если включен).
>
>
>Так что еще и /var/log/audit/audit.log не мешало бы проверить.

И, кстати, а не логинится ли web-сервер по ftp через какой-нибудь странный механизм на php/perl/python? И если логинится, то все ли у него хорошо с передачей команд серверу ftp?