CentOS 5.8, FTP сервер - vsftpd
Из TotalCommander подключаюсь без проблем и под локальным пользователем и под анонимным пользователем. Могу выполнять все необходимые операции - скачивать, закачивать и т.д.
Из Браузера Windows (мой компьютор и далее в адресной строке ввожу ftp://alex:12qwaszx@192.168.0.101) выдает ошибку:
"
В ходе открытия папки на FTP произошла ошибка. Убедитесь что у вас есть разрешения открывать эту папку
Подробности:
Время ожидания окончания действия истекло.
"
К тому же если вводить просто [url]ftp://192.168.0.101[/url], не появляется диалоговое окно для ввода логина и пароля
Подскажите кто знает, где и чего я не донастроил
И еще такой прикол - под анонимным пользователем файлы выкладывать могу а удалять нет, под локальным могу как удалять так и выкладывать файлы.
Никто не знает? - Это так должно и быть или анонимному пользователю можно как то дать право на удаление файлов, хотя бы тех которые анонимный пользователь выложил
Проблема при подключении к FTP из браузера Windows
И какое, простите, отношение Explorer имеет к Линуксу? o_O
И какое, простите, отношение Explorer имеет к Линуксу? o_O
Я полагаю, я что-то недонастроил в Linux. Возможно Windows FTP клиент для подключения использует какие-то возможности которые мой сервак не предоставляет.
Если бы дело было в сервере, то в Винде они были бы одинаковы для всех.
Подскажите кто знает, где и чего я не донастроил
конфиг не прилагается?
[quote="shurik_7866"]Подскажите кто знает, где и чего я не донастроил
конфиг не прилагается?[/quote]
Файл vsftpd.conf
local_enable=YES
local_root=/var/ftp
chroot_local_user=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
xferlog_std_format=YES
connect_from_port_20=YES
idle_session_timeout=300
data_connection_timeout=120
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
userlist_deny=YES
tcp_wrappers=YES
#*************************************************
# ANONYMOUS USERS PARAMETERS #
#*************************************************
anonymous_enable=YES
anon_root=/guest
no_anon_password=YES
anon_umask=000
anon_upload_enable=YES
anon_mkdir_write_enable=NO
Самое интересное что в командной строке в FAR2 ввожу то же самое - ftp://alex:12qwaszx@192.168.0.101 и нормально захожу
но не могу зайти ни через один web браузер.
!Отключенние антивируса проблему не решило
Пробовал:
! Везде в командную строку вводил - ftp://alex:12qwaszx@192.168.0.101
1. через мой компьютер - выбрасывает указанную выше ошибку
2. через Internet Explorer - Выдает ошибку "Internet Eplorer обнаружил неполадку в настройках и будет закрыт"
Файл similarsites.dll
Описание SimilarSites Toolbar
3. через Google Chrome - Пишет "К сожалению, Google Chrome не может открыть страницу 192.168.0.101"
4. через Mozilla FireFox - Выдает ошибку - 425 Failed to establish connection
5. через Opera - Пишет "Невозможно открыть удалённый FTP-канал (код ошибки: 425)"
Что характерно: через проводник и тупые как пять копеек файлменеджеры типа FAR и даже TC - всё в порядке. Через сугубо виндовый Explorer, а уж тем более веббраузеры - *опа! Кто виноват? Конечно CentOS!
ТС - покажите пожалуйста результат через Filezilla, кажется, она и в Винде есть. В том числе, по заданным Вами вопросам. Получилось, не?
попробуйте так:
Показать
listen=YES
anonymous_enable=YES
local_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
async_abor_enable=YES
ftpd_banner=Welcome to the FTP
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
no_anon_password=YES
anon_root=/var/ftp
Может у вас iptables на лиеуксе прикрывает какойто порт, кроме 21. Как я понимаю должен быть открыт ещё и 20.
А может придется открыть вообще диапазон портов.
Возможно. Я такими настройками не занималса и потому ничего конкретного сказать не могу, но думаю что здесь проблема тока в этих режымах.
Отключил пасивный режим
pasv_enable=NO
Для вебраузеров изменился текст ошибки и сама ошибка появляется мгновенно, до этого сначала было зависание прибл на 2 мин:
1. через Total Commander и FAR2 захожу как и раньше без проблем
2. Если зоходить через "Мой компьютор" изменился текст ошибки
Тепер
"
В ходе открытия папки на FTP произошла ошибка. Убедитесь что у вас есть разрешения открывать эту папку
200 Switching to ASCII mode
Permission denied
"
! Как видно из конфигурационного файла "ASCII mode" отключен
3. Для Internet Expolrer текст ошибки не изменился
4. через Google Chrome - Пишет "Веб-страница недоступна
Веб-страница по адресу ftp://alex:12qwaszx@192.168.0.101/, возможно, временно недоступна или постоянно перемещена по новому адресу.
Ошибка 601 (net::ERR_FTP_FAILED): Неизвестная ошибка."
5. через Mozilla FireFox - Выдает ошибку "550 Permission denied"
6. через Opera - Пишет "Сервер запросил неподдерживаемый метод аутентификации имени пользователя."
#Настройки NetFilter которые касаются vsftpd
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 64000:65535 -j ACCEPT
А сделайте в iptables "всё разрешено" и тогда смотрите
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 64000:65535 -j ACCEPT
Это пока уберите.
Ну и неплохо бы какойто лог посмотреть
Ну и неплохо бы какойто лог посмотреть
Установление дериктивы ACCEPT по умолчанию для цепочки INPUT ничего не изменило
в конфигурационный файл добавил - вести системный лог (syslog_enable=YES), для файла /var/log/vsftpd.log дал права на чтение и запись всем, перезагрузил сервак.
Но в этот файл неуспешные и успешные попытки подключения не пишутся, даже после перезагрзки системы остается пустой - поэтому лог показать не могу
Интересно и в системный лог ничего не сыплетса???
Ну могу посоветовать посмотреть через tcpdump на активность на портах 21 и 20, когда вы подключаетесь из браузера.
Но в этот файл неуспешные и успешные попытки подключения не пишутся, даже после перезагрзки системы остается пустой - поэтому лог показать не могу
"Интересно девки пляшут!" (с) Тогда с Вашим серваком точно что-то не так!
Интересно и в системный лог ничего не сыплетса???
Ну могу посоветовать посмотреть через tcpdump на активность на портах 21 и 20, когда вы подключаетесь из браузера.
Захожу на сервак через мой компьютер
В адресную строку ввожу ftp://alex:12qwaszx@192.168.0.101
При этом делаю прослушку отдельно входящие, исходящие, все сразу, каждая прослушка в отдельной консоли
Но честно говоря мало что понял из прослушки. По моему сервак и клиент обмениваются пакетами пока клиент не получит отказ, и причина отказа в доступе не отображается в прослушке
прослушка по порту 21
# Входящие пакеты
[root@CentOS-58 ~]# tcpdump -i eth1 -vvn tcp src port 21 | strings
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
13:58:34.618256 IP (tos 0x0, ttl 64, id 4134, offset 0, flags [DF], proto: TCP (6), length: 50) 192.168.0.101.ftp > 192.168.0.1.privatechat: P, cksum 0x6e5a (correct), 1618798011:1618798021(10) ack 1999283599 win 5840
13:58:34.618299 IP (tos 0x0, ttl 64, id 4135, offset 0, flags [DF], proto: TCP (6), length: 70) 192.168.0.101.ftp > 192.168.0.1.privatechat: P, cksum 0x9a87 (correct), 10:40(30) ack 1 win 5840
13:58:34.618937 IP (tos 0x0, ttl 64, id 4136, offset 0, flags [DF], proto: TCP (6), length: 64) 192.168.0.101.ftp > 192.168.0.1.privatechat: FP, cksum 0x594c (correct), 40:64(24) ack 1 win 5840
13:59:00.793596 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: TCP (6), length: 48) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: S, cksum 0x8993 (correct), 4159784289:4159784289(0) ack 803269851 win 5840 <mss 1460,nop,nop,sackOK>
13:59:00.798362 IP (tos 0x0, ttl 64, id 40846, offset 0, flags [DF], proto: TCP (6), length: 60) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: P, cksum 0x5b2c (correct), 1:21(20) ack 1 win 5840
13:59:00.800935 IP (tos 0x0, ttl 64, id 40847, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: ., cksum 0xb638 (correct), 21:21(0) ack 12 win 5840
13:59:00.801107 IP (tos 0x0, ttl 64, id 40848, offset 0, flags [DF], proto: TCP (6), length: 74) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: P, cksum 0x6eed (correct), 21:55(34) ack 12 win 5840
13:59:00.825791 IP (tos 0x0, ttl 64, id 40849, offset 0, flags [DF], proto: TCP (6), length: 63) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: P, cksum 0xd46f (correct), 55:78(23) ack 27 win 5840
13:59:00.828294 IP (tos 0x0, ttl 64, id 40850, offset 0, flags [DF], proto: TCP (6), length: 66) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: P, cksum 0xf50e (correct), 78:104(26) ack 41 win 5840
13:59:00.830461 IP (tos 0x0, ttl 64, id 40851, offset 0, flags [DF], proto: TCP (6), length: 59) 192.168.0.101.ftp > 192.168.0.1.remote-winsock: P, cksum 0x4e57 (correct), 104:123(19) ack 47 win 5840
14 packets captured
14 packets received by filter
0 packets dropped by kernel
# Исходящие пакеты
[root@CentOS-58 ~]# tcpdump -i eth1 -vvn tcp dst port 21 | strings
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
13:58:34.617994 IP (tos 0x0, ttl 128, id 21055, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.privatechat > 192.168.0.101.ftp: F, cksum 0xc51e (correct), 1999283598:1999283598(0) ack 1618798011 win 65328
13:58:34.620332 IP (tos 0x0, ttl 128, id 21056, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.privatechat > 192.168.0.101.ftp: R, cksum 0xc441 (correct), 1:1(0) ack 11 win 0
13:58:34.620624 IP (tos 0x0, ttl 128, id 21057, offset 0, flags [none], proto: TCP (6), length: 40) 192.168.0.1.privatechat > 192.168.0.101.ftp: R, cksum 0xedd9 (correct), 1999283599:1999283599(0) win 0
13:58:34.620635 IP (tos 0x0, ttl 128, id 21058, offset 0, flags [none], proto: TCP (6), length: 40) 192.168.0.1.privatechat > 192.168.0.101.ftp: R, cksum 0xedd9 (correct), 1999283599:1999283599(0) win 0
13:59:00.793540 IP (tos 0x0, ttl 128, id 21061, offset 0, flags [DF], proto: TCP (6), length: 48) 192.168.0.1.remote-winsock > 192.168.0.101.ftp: S, cksum 0xddc7 (correct), 803269850:803269850(0) win 65535 <mss 1460,nop,nop,sackOK>
13:59:00.795761 IP (tos 0x0, ttl 128, id 21062, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.remote-winsock > 192.168.0.101.ftp: ., cksum 0xcd27 (correct), 803269851:803269851(0) ack 4159784290 win 65535
13:59:00.800918 IP (tos 0x0, ttl 128, id 21067, offset 0, flags [DF], proto: TCP (6), length: 51) 192.168.0.1.remote-winsock > 192.168.0.101.ftp: P, cksum 0x239b (correct), 0:11(11) ack 21 win 65515
13:59:00.803172 IP (tos 0x0, ttl 128, id 21072, offset 0, flags [DF], proto: TCP (6), length: 55) 192.168.0.1.remote-winsock > 192.168.0.101.ftp: P, cksum 0x69e5 (correct), 11:26(15) ack 55 win 65481
13:59:00.828161 IP (tos 0x0, ttl 128, id 21075, offset 0, flags [DF], proto: TCP (6), length: 54) 192.168.0.1.remote-winsock > 192.168.0.101.ftp: P, cksum 0x9f9f (correct), 26:40(14) ack 78 win 65458
15 packets captured
15 packets received by filter
0 packets dropped by kernel
# Все пакеты
[root@CentOS-58 ~]# tcpdump -i eth1 -vvn tcp src port 21 or -i eth1 -vvn tcp dst port 21 | strings
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
13:58:34.618118 IP (tos 0x0, ttl 128, id 21055, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.1735 > 192.168.0.101.21: F, cksum 0xc51e (correct), 1999283598:1999283598(0) ack 1618798011 win 65328
13:58:34.618256 IP (tos 0x0, ttl 64, id 4134, offset 0, flags [DF], proto: TCP (6), length: 50) 192.168.0.101.21 > 192.168.0.1.1735: P, cksum 0x6e5a (correct), 1:11(10) ack 1 win 5840
13:58:34.618299 IP (tos 0x0, ttl 64, id 4135, offset 0, flags [DF], proto: TCP (6), length: 70) 192.168.0.101.21 > 192.168.0.1.1735: P, cksum 0x9a87 (correct), 11:41(30) ack 1 win 5840
13:58:34.618937 IP (tos 0x0, ttl 64, id 4136, offset 0, flags [DF], proto: TCP (6), length: 64) 192.168.0.101.21 > 192.168.0.1.1735: FP, cksum 0x594c (correct), 41:65(24) ack 1 win 5840
13:58:34.620332 IP (tos 0x0, ttl 128, id 21056, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.1735 > 192.168.0.101.21: R, cksum 0xc441 (correct), 1:1(0) ack 11 win 0
13:58:34.620624 IP (tos 0x0, ttl 128, id 21057, offset 0, flags [none], proto: TCP (6), length: 40) 192.168.0.1.1735 > 192.168.0.101.21: R, cksum 0xedd9 (correct), 1999283599:1999283599(0) win 0
13:58:34.620635 IP (tos 0x0, ttl 128, id 21058, offset 0, flags [none], proto: TCP (6), length: 40) 192.168.0.1.1735 > 192.168.0.101.21: R, cksum 0xedd9 (correct), 1999283599:1999283599(0) win 0
13:59:00.793540 IP (tos 0x0, ttl 128, id 21061, offset 0, flags [DF], proto: TCP (6), length: 48) 192.168.0.1.1745 > 192.168.0.101.21: S, cksum 0xddc7 (correct), 803269850:803269850(0) win 65535 <mss 1460,nop,nop,sackOK>
13:59:00.793596 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto: TCP (6), length: 48) 192.168.0.101.21 > 192.168.0.1.1745: S, cksum 0x8993 (correct), 4159784289:4159784289(0) ack 803269851 win 5840 <mss 1460,nop,nop,sackOK>
13:59:00.795761 IP (tos 0x0, ttl 128, id 21062, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.1.1745 > 192.168.0.101.21: ., cksum 0xcd27 (correct), 1:1(0) ack 1 win 65535
13:59:00.798362 IP (tos 0x0, ttl 64, id 40846, offset 0, flags [DF], proto: TCP (6), length: 60) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0x5b2c (correct), 1:21(20) ack 1 win 5840
13:59:00.800918 IP (tos 0x0, ttl 128, id 21067, offset 0, flags [DF], proto: TCP (6), length: 51) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0x239b (correct), 1:12(11) ack 21 win 65515
13:59:00.800935 IP (tos 0x0, ttl 64, id 40847, offset 0, flags [DF], proto: TCP (6), length: 40) 192.168.0.101.21 > 192.168.0.1.1745: ., cksum 0xb638 (correct), 21:21(0) ack 12 win 5840
13:59:00.801107 IP (tos 0x0, ttl 64, id 40848, offset 0, flags [DF], proto: TCP (6), length: 74) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0x6eed (correct), 21:55(34) ack 12 win 5840
13:59:00.803172 IP (tos 0x0, ttl 128, id 21072, offset 0, flags [DF], proto: TCP (6), length: 55) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0x69e5 (correct), 12:27(15) ack 55 win 65481
13:59:00.825791 IP (tos 0x0, ttl 64, id 40849, offset 0, flags [DF], proto: TCP (6), length: 63) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0xd46f (correct), 55:78(23) ack 27 win 5840
13:59:00.828161 IP (tos 0x0, ttl 128, id 21075, offset 0, flags [DF], proto: TCP (6), length: 54) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0x9f9f (correct), 27:41(14) ack 78 win 65458
13:59:00.828294 IP (tos 0x0, ttl 64, id 40850, offset 0, flags [DF], proto: TCP (6), length: 66) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0xf50e (correct), 78:104(26) ack 41 win 5840
13:59:00.829961 IP (tos 0x0, ttl 128, id 21076, offset 0, flags [DF], proto: TCP (6), length: 46) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0xd8f9 (correct), 41:47(6) ack 104 win 65432
13:59:00.830461 IP (tos 0x0, ttl 64, id 40851, offset 0, flags [DF], proto: TCP (6), length: 59) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0x4e57 (correct), 104:123(19) ack 47 win 5840
13:59:00.832305 IP (tos 0x0, ttl 128, id 21079, offset 0, flags [DF], proto: TCP (6), length: 51) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0xe535 (correct), 47:58(11) ack 123 win 65413
13:59:00.832382 IP (tos 0x0, ttl 64, id 40852, offset 0, flags [DF], proto: TCP (6), length: 62) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0xf71c (correct), 123:145(22) ack 58 win 5840
13:59:00.834331 IP (tos 0x0, ttl 128, id 21084, offset 0, flags [DF], proto: TCP (6), length: 45) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0x2e7d (correct), 58:63(5) ack 145 win 65391
13:59:00.834449 IP (tos 0x0, ttl 64, id 40853, offset 0, flags [DF], proto: TCP (6), length: 49) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0xfde6 (correct), 145:154(9) ack 63 win 5840
13:59:00.847203 IP (tos 0x0, ttl 128, id 21086, offset 0, flags [DF], proto: TCP (6), length: 48) 192.168.0.1.1745 > 192.168.0.101.21: P, cksum 0xfaef (correct), 63:71(8) ack 154 win 65382
13:59:00.847340 IP (tos 0x0, ttl 64, id 40854, offset 0, flags [DF], proto: TCP (6), length: 70) 192.168.0.101.21 > 192.168.0.1.1745: P, cksum 0x2ed8 (correct), 154:184(30) ack 71 win 5840
29 packets captured
29 packets received by filter
0 packets dropped by kernel
Прослушка по порту 20
[root@CentOS-58 ~]# tcpdump -i eth1 -vvn tcp src port 20 or -i eth1 -vvn tcp dst port 20 | strings
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
0 packets captured
0 packets received by filter
0 packets dropped by kernel
CentOS 5.8, FTP сервер - vsftpd
Из TotalCommander подключаюсь без проблем и под локальным пользователем и под анонимным пользователем. Могу выполнять все необходимые операции - скачивать, закачивать и т.д.
Из Браузера Windows (мой компьютор и далее в адресной строке ввожу ftp://alex:12qwaszx@192.168.0.101) выдает ошибку:
К тому же если вводить просто [url]ftp://192.168.0.101[/url], не появляется диалоговое окно для ввода логина и пароля
Подскажите кто знает, где и чего я не донастроил
И еще такой прикол - под анонимным пользователем файлы выкладывать могу а удалять нет, под локальным могу как удалять так и выкладывать файлы.
У меня такое было когда я не указывал имя и пароль при попытке входа через браузер. Ну и с правами надо поколдовать.
В настройках vsftpd вот этих строк уже достаточно для нормального входа:
anonymous_enable=YES
local_enable=YES
А браузер надо другой попробовать, FireFox пример. И нужно писать всё полностью в адресной строке:
ftp://vasia:123@myhost.lan:21/
ftp://vasia:123@myhost.lan:21/TestDir/
ну и тестирование делайте сначала через команду ftp, из терминала.
Ещё для теста можно дать права на папку ftp 0777, чтобы убедиться, что дело не в этом.