Имеем роутер на freeBSD 4.10 natd+ipfw
Правила записаны следующим образом:
ipfw='/sbin/ipfw -q'
${ipfw} -f flush
${ipfw} add divert natd all from any to any via rl0
${ipfw} add pass all from any to any via lo0
### кусок про ftp
${ipfw} add pass tcp from any 21 to any
${ipfw} add pass tcp from any to any 21
${ipfw} add pass tcp from any 20 to any
${ipfw} add pass tcp from any to any 20
# и на всякий случай udp, тк они описаны в /etc/services
${ipfw} add pass udp from any 21 to any
${ipfw} add pass udp from any to any 21
${ipfw} add pass udp from any 20 to any
${ipfw} add pass udp from any to any 20Вся работа с удаленными ftp идет отлично и из far-а клиентских машин, и по mc с роутера. Но неажиданно оказалось, что невозможно зайти по ftp на ftp.narod.ru Far (и в обычном режиме, и в passive_mode и в режиме use_firewall) просто зависает после логина-пароля. mc ведет себя более интелектуально: перед тем, как зависнуть, высвечивает внизу под панелями сообщение: "(ограничение rfc959)(сначала chdir)" И все :(
При этом работа с другими ftp индет нормально и даже не в passive-режиме.
Не подскажет ли всезнающий all, где тут могут быть грабли и как с ними бороться?
>Имеем роутер на freeBSD 4.10 natd+ipfw
>Правила записаны следующим образом:
>ipfw='/sbin/ipfw -q'
>${ipfw} -f flush
>${ipfw} add divert natd all from any to any via rl0
>${ipfw} add pass all from any to any via lo0
>### кусок про ftp
>${ipfw} add pass tcp from any 21 to any
>${ipfw} add pass tcp from any to any 21
>${ipfw} add pass tcp from any 20 to any
>${ipfw} add pass tcp from any to any 20
># и на всякий случай udp, тк они описаны в /etc/services
>${ipfw} add pass udp from any 21 to any
>${ipfw} add pass udp from any to any 21
>${ipfw} add pass udp from any 20 to any
>${ipfw} add pass udp from any to any 20
>
>Вся работа с удаленными ftp идет отлично и из far-а клиентских машин,
>и по mc с роутера. Но неажиданно оказалось, что невозможно
>зайти по ftp на ftp.narod.ru Far (и в обычном режиме, и
>в passive_mode и в режиме use_firewall) просто зависает после логина-пароля. mc
>ведет себя более интелектуально: перед тем, как зависнуть, высвечивает внизу под
>панелями сообщение: "(ограничение rfc959)(сначала chdir)" И все :(
>При этом работа с другими ftp индет нормально и даже не в
>passive-режиме.
>Не подскажет ли всезнающий all, где тут могут быть грабли и как
>с ними бороться?natd с флагом -s попробуй запустить
>>Имеем роутер на freeBSD 4.10 natd+ipfw
>>Правила записаны следующим образом:
>>ipfw='/sbin/ipfw -q'
>>${ipfw} -f flush
>>${ipfw} add divert natd all from any to any via rl0
>>${ipfw} add pass all from any to any via lo0
>>### кусок про ftp
>>${ipfw} add pass tcp from any 21 to any
>>${ipfw} add pass tcp from any to any 21
>>${ipfw} add pass tcp from any 20 to any
>>${ipfw} add pass tcp from any to any 20
>># и на всякий случай udp, тк они описаны в /etc/services
>>${ipfw} add pass udp from any 21 to any
>>${ipfw} add pass udp from any to any 21
>>${ipfw} add pass udp from any 20 to any
>>${ipfw} add pass udp from any to any 20
>>
>>Вся работа с удаленными ftp идет отлично и из far-а клиентских машин,
>>и по mc с роутера. Но неажиданно оказалось, что невозможно
>>зайти по ftp на ftp.narod.ru Far (и в обычном режиме, и
>>в passive_mode и в режиме use_firewall) просто зависает после логина-пароля. mc
>>ведет себя более интелектуально: перед тем, как зависнуть, высвечивает внизу под
>>панелями сообщение: "(ограничение rfc959)(сначала chdir)" И все :(
>>При этом работа с другими ftp индет нормально и даже не в
>>passive-режиме.
>>Не подскажет ли всезнающий all, где тут могут быть грабли и как
>>с ними бороться?
>
>natd с флагом -s попробуй запустить
попробовала (/etc/rc.conf)
natd_enable="YES"
natd_interface="rl0"
natd_flags="-s"
не помогло :(
>Имеем роутер на freeBSD 4.10 natd+ipfw
>Правила записаны следующим образом:
>ipfw='/sbin/ipfw -q'
>${ipfw} -f flush
>${ipfw} add divert natd all from any to any via rl0
>${ipfw} add pass all from any to any via lo0
>### кусок про ftp
>${ipfw} add pass tcp from any 21 to anyкроме 20,21 открой порты 49152-65535 на своей машине и на доступ к этим портам на удаленных машинах
>кроме 20,21 открой порты 49152-65535 на своей машине и на доступ к
>этим портам на удаленных машинахэто не нужно если есть правила
pass udp from any 20 to any
pass udp from any 21 to any
pass tcp from any to any 20
pass tcp from any to any 21
ошибся
>pass udp from any 20 to any
>pass udp from any 21 to any
pass tcp from any 20 to any
pass tcp from any 21 to any
>>Имеем роутер на freeBSD 4.10 natd+ipfw
>>Правила записаны следующим образом:
>>ipfw='/sbin/ipfw -q'
>>${ipfw} -f flush
>>${ipfw} add divert natd all from any to any via rl0
>>${ipfw} add pass all from any to any via lo0
>>### кусок про ftp
>>${ipfw} add pass tcp from any 21 to any
>
>кроме 20,21 открой порты 49152-65535 на своей машине и на доступ к
>этим портам на удаленных машинахи еще кроме совершенно правильного совета выше, читайте про пассивный и активный режимы FTP - все тут же станет понятно :)
>>>Имеем роутер на freeBSD 4.10 natd+ipfw
>>>Правила записаны следующим образом:
>>>ipfw='/sbin/ipfw -q'
>>>${ipfw} -f flush
>>>${ipfw} add divert natd all from any to any via rl0
>>>${ipfw} add pass all from any to any via lo0
>>>### кусок про ftp
>>>${ipfw} add pass tcp from any 21 to any
>>
>>кроме 20,21 открой порты 49152-65535 на своей машине и на доступ к
>>этим портам на удаленных машинах
>
>и еще кроме совершенно правильного совета выше, читайте про пассивный и активный
>режимы FTP - все тут же станет понятно :)
не поняла. при чем тут весь этот диапазон портов? и зачем тогда вообще firewall???
про пассивный и активный режимы знаем, плавали. Но при попытке подключиться были использованы все варианты. Так что дело не в этом.
А вот что значительно хуже narod.ru - это то, что и fetch не желает при таких установках работать, хотя в его конфигурации указаны именно порты 20,21
>>>>Имеем роутер на freeBSD 4.10 natd+ipfw
>>>>Правила записаны следующим образом:
>>>>ipfw='/sbin/ipfw -q'
>>>>${ipfw} -f flush
>>>>${ipfw} add divert natd all from any to any via rl0
>>>>${ipfw} add pass all from any to any via lo0
>>>>### кусок про ftp
>>>>${ipfw} add pass tcp from any 21 to any
>>>
>>>кроме 20,21 открой порты 49152-65535 на своей машине и на доступ к
>>>этим портам на удаленных машинах
>>
>>и еще кроме совершенно правильного совета выше, читайте про пассивный и активный
>>режимы FTP - все тут же станет понятно :)
>не поняла. при чем тут весь этот диапазон портов? и зачем тогда
>вообще firewall???
>про пассивный и активный режимы знаем, плавали. Но при попытке подключиться были
>использованы все варианты. Так что дело не в этом.
>А вот что значительно хуже narod.ru - это то, что и fetch
>не желает при таких установках работать, хотя в его конфигурации указаны
>именно порты 20,21
Всё дело в том, что при работе в пассивном режиме при передаче файлов используются порты 49152-65535, соответственно тебе нужно их открыть на своем файрволле. В Linux я делаю так: 1024-65535 открываю для Established, Related соединений, про ipfw не помню, посмотри ман.З.Ы. Ты правда девушка?
>>>>>Имеем роутер на freeBSD 4.10 natd+ipfw
>>>>>Правила записаны следующим образом:
>>>>>ipfw='/sbin/ipfw -q'
>>>>>${ipfw} -f flush
>>>>>${ipfw} add divert natd all from any to any via rl0
>>>>>${ipfw} add pass all from any to any via lo0
>>>>>### кусок про ftp
>>>>>${ipfw} add pass tcp from any 21 to any
>>>>
>>>>кроме 20,21 открой порты 49152-65535 на своей машине и на доступ к
>>>>этим портам на удаленных машинах
>>>
>>>и еще кроме совершенно правильного совета выше, читайте про пассивный и активный
>>>режимы FTP - все тут же станет понятно :)
>>не поняла. при чем тут весь этот диапазон портов? и зачем тогда
>>вообще firewall???
>>про пассивный и активный режимы знаем, плавали. Но при попытке подключиться были
>>использованы все варианты. Так что дело не в этом.
>>А вот что значительно хуже narod.ru - это то, что и fetch
>>не желает при таких установках работать, хотя в его конфигурации указаны
>>именно порты 20,21
>
>
>Всё дело в том, что при работе в пассивном режиме при передаче
>файлов используются порты 49152-65535, соответственно тебе нужно их открыть на своем
>файрволле. В Linux я делаю так: 1024-65535 открываю для Established, Related
>соединений, про ipfw не помню, посмотри ман.
>
>З.Ы. Ты правда девушка?keep-state вам поможет
>>${ipfw} add divert natd all from any to any via rl0
по этому правилу у тебя маскарадятся ВСЕ порты
поэтому
${ipfw} add pass tcp from any 21 to any
ничего не меняет, ровно как и советы открыть еще
и тот диапазон что отвечает за пассив ;)и вообще при чем тут _твой_ фаервол если
тебя с самого роутера по ftp точно также
не пускает.для зксперимента отключи на время роутер и маскарад
и попробуй на глючную ftp зайти из шелла.возможно там стоит ftp какая-то кривая с нестандартными портами...
а пров трой какие-то из этих портов режет
>>>${ipfw} add divert natd all from any to any via rl0
>по этому правилу у тебя маскарадятся ВСЕ порты
>поэтому
>${ipfw} add pass tcp from any 21 to any
>ничего не меняет, ровно как и советы открыть еще
>и тот диапазон что отвечает за пассив ;)
тогда вряд ли были бы проблемы?
при вклюбчении разрешения на ВСЕ порты все работает. (Так большинство программ тоже работает, потому я не сразу глючность нашла)
Так что провайдер тут не при чем - это я сама себе в провайдера неудачно сыграла
С роутера я могу/или не могу куда-то ходить потому, что его интерфейс в правилах тоже записан.
2patriot:
похоже, ты прав:
bash-2.05b# host -a ftp.narod.ru
...
ftp.narod.ru 2173 IN A 213.180.199.32bash-2.05b# cat /var/log/security |grep 213.180.199.32
Jul 5 20:53:30 marr /kernel: ipfw: 3300 Deny TCP 213.180.199.32:64768 192.168.85.3:1462 in via rl0
Jul 7 15:50:02 marr /kernel: ipfw: 2300 Accept TCP 192.168.85.3:2677 213.180.199.32:21 in via rl1
Jul 7 15:50:02 marr /kernel: ipfw: 2300 Accept TCP мой_ип:2677 213.180.199.32:21 out via rl0
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 213.180.199.32:21 192.168.85.3:2677 in via rl0
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 213.180.199.32:21 192.168.85.3:2677 out via rl1
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 192.168.85.3:2677 213.180.199.32:21 in via rl1
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP мой_ип:2677 213.180.199.32:21 out via rl0
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 213.180.199.32:21 192.168.85.3:2677 in via rl0
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 213.180.199.32:21 192.168.85.3:2677 out via rl1
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP 192.168.85.3:2677 213.180.199.32:21 in via rl1
Jul 7 15:50:03 marr /kernel: ipfw: 2300 Accept TCP мой_ип:2677 213.180.199.32:21 out via rl0
Jul 7 15:55:39 marr /kernel: ipfw: 2200 Accept TCP 213.180.199.32:21 192.168.85.3:2677 in via rl0
Jul 7 15:55:39 marr /kernel: ipfw: 2200 Accept TCP 213.180.199.32:21 192.168.85.3:2677 out via rl1
Jul 7 15:55:39 marr /kernel: ipfw: 2200 Accept TCP 192.168.85.3:2677 213.180.199.32:21 in via rl1
вот такие пироги :( в общем-то, народ_ру - Бог с ним. А вот fetch и cvs примерно так же себя ведут (то есть систему не обновить :( )
Попробую открыть верхний диапазон портов
>З.Ы. Ты правда девушка?
я еще и энтомолог по образованию :))
DimMan,
patriot
спасибо!!! открытие диапазона действимтельно помогло.
2all а как же быть с безопасностью при таком большом открытом диапазоне? (дома-то мне, в общем, более-менее все равно. А на работе, если такую конфигурацию использовать?)
>>З.Ы. Ты правда девушка?
>я еще и энтомолог по образованию :))Если еще и симпатичная, то съем собственную бейсболку.