На главную | English version Описание:Насколья понял, в RFC четко не определено, как должен выглядеть ответ сервера после сообщения
227 при установке пассивного соединения. Модуль ядра ip_conntrack_ftp отслеживает строку,
которую используют большинство ftp-серверов: void pasv(void) { unsigned char x[6]; startlistening(x); out_puts("227 ="); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[0])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[1])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[2])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[3])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[4])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[5])); out_puts("\r\n"); }После изменнения: void pasv(void) { unsigned char x[6]; startlistening(x); out_puts("227 Entering Passive Mode ("); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[0])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[1])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[2])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[3])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[4])); out_puts(","); out_put(strnum,fmt_ulong(strnum,(unsigned long) x[5])); out_puts(")\r\n"); } Download:Сам патч publicfile-0.52.conntrack-ftp.patch. Дата создания 27.01.03. Обращения в mail-list publicfile и к разработчикам ядра понимания не встретили. Проверялся только на RH9, однако в последнем ядре (2.6.1) ничего не изменилось. Если кто будет тестировать — пишите.Ссылки:
| ||||
По всем вопросам пишите на articles <at> lithium.opennet.ru | ||||