Тестировал frox вкупе со squid, оба в режиме transparent. Главное завести на frox голый ftp. Если есть нужда фильтровать 20 порт, нужно прописать в конфиге APConv yes. Остальное по-дефолту работает.
Связка неплохая, однако обнаружились и два бага. Первый обнаруживается при попытке выставить в том же FAR-е пассивный режим. Cоединение сразу разрывается:
Fri Oct 1 17:01:23 2004 frox[274] Intercepted a PASV command
Fri Oct 1 17:01:23 2004 frox[274] C: PASV
Fri Oct 1 17:01:23 2004 frox[274] Rewritten 227 reply:
Fri Oct 1 17:01:23 2004 frox[274] S: 227 Entering Passive Mode (127,0,0,1,175,123)
Fri Oct 1 17:01:25 2004 frox[274] Command not implemented
По логам СuteFTP видим следующее:
COMMAND:> CWD /pub
250 CWD command successful.
STATUS:> PWD skipped. Current dir: "/pub".
COMMAND:> PASV
227 Entering Passive Mode (127,0,0,1,162,125)
COMMAND:> LIST
STATUS:> Connecting ftp data socket 127.0.0.1:41597...
ERROR:> Can't connect to remote server. Socket error = #10061.
Таким образом первое ограничение: frox не может работать в режиме transparent прокси и одновременно пассивном FTP, поскольку перенаправлять запросы на 21 порт - это одно, а как разрулить клиента который открывает второй канал - неизвестно.
Второй баг проявляется если ткнуть на http страничке на любую ссылку, по которой лежит файл на ftp сервере. В логах frox сразу же имеем запись
Fri Oct 1 17:26:40 2004 frox[393] C: CWD /Internet/ICQ&Chat&IP-Phone/ICQ/icqpro2003b.exe
Fri Oct 1 17:26:40 2004 frox[393] S: 550 /Internet/ICQ&Chat&IP-Phone/ICQ/icqpro2003b.exe: Not a directory
Зачем тут команда CWD мне непонятно, должна быть RETR (по аналогии с FAR). Предположительно глюк IE.
Если у кого есть соображения или сами сталкивались с подобным - добро пожалувать к обсуждению.