LINUX.ORG.RU
ФорумAdmin

Помогите справится с vsftpd. Ошибка 425


0

0

Здравствуйте. Вот второй день уже мучаюсь с этим vsftpd (proftpd выдаёт примерно ту же картину, уже пробовал). Значит установил Debian Lenny (правда не первой свежести) на виртуальную машину с qemu. Настройки такие:
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
connect_from_port_20=NO
local_umask=022
check_shell=NO
ftpd_banner=Welcome to blablabla FTP service
secure_chroot_dir=/var/run/vsftpd
session_support=NO
background=YES
hide_ids=YES

ascii_download_enable=YES
pasv_enable=YES
pasv_promiscuous=YES

Без последних 3 параметров тоже пробовал, и с параметром connect_from_port_20=YES тоже. Перезапускал. Ничего не помогло.

Результаты telnet-сессии:
# telnet 127.0.0.1 21
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 Welcome to blablabla FTP service
USER maxim
331 Please specify the password.
PASS ***********
230 Login successful.
PWD
257 "/home/maxim"
PASV
227 Entering Passive Mode (127,0,0,1,149,93)
TYPE A
200 Switching to ASCII mode.
LIST

<...и всё... ждёт до таймаута.. и пишет ошибку 425 Failed to establish connection.>

# apt-cache showpkg vsftpd
Package: vsftpd
Versions:
2.0.5-2

PS: Ещё пробовал установить более свежую версию vsftpd_2.0.6-1, та же картина

> pasv_promiscuous=YES

Там что-то ещё с promiscuous включить надо.

Права на папку куда чрут делается проверь.

anonymous
()
Ответ на: комментарий от anonymous


#ls -a -l /home
итого 20
drwxr-xr-x 5 root root 4096 2008-12-08 02:14 .
drwxr-xr-x 23 root root 4096 2008-12-08 00:38 ..
drwxr-xr-x 2 root nogroup 4096 2008-12-08 02:14 ftp
drwxr-xr-x 2 maxim maxim 4096 2008-12-08 02:54 maxim
drwxr-xr-x 2 slava slava 4096 2008-12-08 03:17 slava

# ls -a -l /var/run/vsftpd
итого 8
drwxr-xr-x 2 root root 4096 2008-12-08 20:56 .
drwxr-xr-x 10 root root 4096 2008-12-09 00:23 ..

добавил параметр:
port_promiscuous=YES

больше с promiscuous ничего нет согласно man vsftpd.conf, перезапустил, не помогло :(

anterior
() автор топика
Ответ на: комментарий от anterior

кстати что-то с chroot у vsftpd не особо, это даж в мане написано, но имхо тут дело в том, что не открыты поры 1024:65535 для пассивного режима.

Sharp777
()
Ответ на: комментарий от Sharp777

А у меня IPTables пустой. Этого не достаточно, или я чего-то недопонимаю?

anterior
() автор топика
Ответ на: комментарий от Sharp777

Значит, я сейчас попробовал поигратся программой ftp на своём "виртуальном" сервере (который запущен на виртуальной машине с qemu) и локальной машиной. Результаты впечатляющие.

С сервера:
# ftp 127.0.0.1 21
Connected to 127.0.0.1.
220 Welcome to Maksislav FTP service
Name (127.0.0.1:root): maxim
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode on.
ftp> ls
227 Entering Passive Mode (127,0,0,1,50,206)
150 Here comes the directory listing.
-rw-r--r-- 1 maxim maxim 0 Dec 07 18:54 hello
226 Directory send OK.
ftp> exit
221 Goodbye.

С локальной машины на сервер (через проброс портов опцией -redir):
$ ftp 127.0.0.1 6621
Connected to 127.0.0.1.
220 Welcome to Maksislav FTP service
Name (127.0.0.1:maxim): maxim
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> passive
Passive mode on.
ftp> ls
227 Entering Passive Mode (10,0,2,2,172,244)
ftp: connect: Network is unreachable
ftp> exit
221 Goodbye.

Интересно, что при этом с konqueror и mozilla всё открывается, с operы нет. С виндовых ftp-клиентов тоже не открывается.

qemu(kvm) вызывается со следующими аргументами:
kvm -kernel vmlinuz-2.6.21-2-486 -initrd initrd.img-2.6.21-2-486 -append 'root=/dev/hda1 ro' -curses -cdrom /dev/hda -hda disk.img-boot c -m 256 -redir tcp:6680:10.0.2.15:80 -redir tcp:21:10.0.2.15:21 -redir tcp:6610:10.0.2.15:110 -redir tcp:6625:10.0.2.15:25 -localtime

Может дело всё потому что здесь порты перенаправления для 1024:65535 не указаны?

Как быть то?

anterior
() автор топика
Ответ на: комментарий от anterior

> Как быть то?

Меня сбило с толку, что виртуалка. По идее там никаких натов и т.п. быть не должно. Но вообще - на шлюзе должно быть modprobe nf_conntrack_ftp, modprobe nf_nat_ftp, и правило типа iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

anonymous
()
Ответ на: комментарий от anonymous

хм.... это каГ же получается:
>С локальной машины на сервер (через проброс портов опцией -redir):

>$ ftp 127.0.0.1 6621

>Connected to 127.0.0.1.

>220 Welcome to Maksislav FTP service

>Name (127.0.0.1:maxim): maxim

................................
>ftp> ls

>227 Entering Passive Mode (10,0,2,2,172,244)

>ftp: connect: Network is unreachable

>ftp> exit

т.е. подрубались на 127.0.0.1 а сервер ответил с 10.0.2.2 - не порядок, мож подключаться надо не на 127.0.0.1 а на 10.0.2.2 ?

Sharp777
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.