Доброе время суток!К связке iptables, squid, rejik поставил frox по мануалу http://www.opennet.dev/base/net/transparent_ftp.txt.html с небольшими исправлениями. Всё работает, ftp прозрачно проксируется, режик фильтрует закачку mp3, сквид ограничивает поток по delay pools и т.п.
Однако возникла проблема русских имён файлов при работе через frox. Русские файлы и папки отображаются, но при попытке зайти в папку или скопировать файл выдаётся ошибка. Русские имена преобразуются в строку из вопросительных знаков. Например файл с именем "тест русских имён файлов.txt" преобразовался в "???? ??????? ???? ??????.txt".
Лог фтп клиента:
-------------------------------------------------
257 "/limited/MP3" is current directory.
Чтение каталога...
PORT 10,0,0,220,14,202
200 PORT command successful
LIST
150 Opening ASCII mode data connection for file list
Загрузка
Жду ответа сервера...
226 Transfer complete.
CWD Барды
550 ?????: No such file or directory
-------------------------------------------------
Часть лога frox:
-------------------------------------------------
Wed Sep 7 12:38:01 2005 frox[23234] Connect from 10.0.0.220(ic2.ascnet.ru)
Wed Sep 7 12:38:01 2005 frox[23234] ... to 62.76.7.4()
Wed Sep 7 12:38:02 2005 frox[23234] Command FEAT not implemented
Wed Sep 7 12:38:40 2005 frox[23234] Server closed the control connection
Wed Sep 7 12:38:40 2005 frox[23234] Closing session
-------------------------------------------------
В логах сквида при попытке доступа к русскому файлу или папке при этом ничего не пишется.
Если в настройках фтп клиента прописать использование хттп-прокси сквида в обход frox, то файлы и каталоги читаются нормально, следовательно баг надо искать в frox, либо во взаимодействии фрокс и сквид.
Конечно, использование русских имён противоречит rfc, но в России иногда такая потребность есть, скачать русские файлы. Многие фтп серверы и клиенты поддерживают работу с ними, не хотелось бы изза прозрачного фтп терять функциональность.
Думаю этот вопрос интересен всем, кто использует frox, прошу поделиться опытом и мыслями как решить эту проблему.
Заранее Спасибо!