Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна - ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip с сети ftp-клиента, все работет нормально.
01000 allow icmp from any to me
01001 allow ip from me to any
01002 allow ip from any to me dst-port 20,21
65535 deny ip from any to any
>Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна
>- ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip
>с сети ftp-клиента, все работет нормально.
>01000 allow icmp from any to me
>01001 allow ip from me to any
>01002 allow ip from any to me dst-port 20,21
>65535 deny ip from any to any
в пассивном режиме фтп сервер открывает на своей стороне не 20 порт для данных, а чаще всего какой-нить больше 40000(хотя это настраивается). Попробуй зайти гаранитрованно в активном режиме.
>>Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна
>>- ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip
>>с сети ftp-клиента, все работет нормально.
>>01000 allow icmp from any to me
>>01001 allow ip from me to any
>>01002 allow ip from any to me dst-port 20,21
>>65535 deny ip from any to any
>в пассивном режиме фтп сервер открывает на своей стороне не 20 порт
>для данных, а чаще всего какой-нить больше 40000(хотя это настраивается). Попробуй
>зайти гаранитрованно в активном режиме.
В активном режиме та же песня. на самом деле режется не только ftp, но и ssh:
01003: allow ip from any to me 22
>В активном режиме та же песня. на самом деле режется не только
>ftp, но и ssh:
>01003: allow ip from any to me 22
тогда добавь в последнее правило ipfw log, и смотри в лог + tcpdump. И все станет понятно.
>Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна
>- ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip
>с сети ftp-клиента, все работет нормально.
>01000 allow icmp from any to me
>01001 allow ip from me to any
>01002 allow ip from any to me dst-port 20,21У ip протокола нет понятия портов. Пиши так:
allow tcp from any to me 20,21
>>Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна
>>- ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip
>>с сети ftp-клиента, все работет нормально.
>>01000 allow icmp from any to me
>>01001 allow ip from me to any
>>01002 allow ip from any to me dst-port 20,21
>
>У ip протокола нет понятия портов. Пиши так:
>allow tcp from any to me 20,21
блин, вот ведь невнимательность моя природная :(
>>У ip протокола нет понятия портов. Пиши так:
>>allow tcp from any to me 20,21
>блин, вот ведь невнимательность моя природная :(
не переживай насчет невнимательности.
короче, ситуация такая:00500 248 13888 allow icmp from any to me
01000 18263 1306647 allow ip from me to any
01001 0 0 allow tcp from any to me dst-port 20
01002 2 88 allow tcp from any to me dst-port 21
01005 14046 1012576 allow ip from any to me dst-port 22
65535 25514024 1242727879 deny ip from any to anyсоединение по 22 порту сделано при наличии правила, разрешающего весь ip с сети. далее это правило удаляется, и начинает действовать правило 1005 (заметь, ip с указанием порта 22). На новое соединение действует правило 65535. следует отметить, что по 21 пакеты-таки проскакивают. бред какой-то. сейчас перекомпилирую ядро с IPFIREWALL_VERBOSE...
>не переживай насчет невнимательности.Да, на деле проверка всётаки происходит. В предыдущих версиях FreeBSD (говорю про 4х) такое правило нельзя было добавить вообще, и возможно в дальнейшем утилиту /sbin/ipfw поправят, чтобы это не работало.
>ядро с IPFIREWALL_VERBOSE...
Можно без перекомпиляции (проверял на 6-ке, 5ки щас нет под рукой..)sysctl net.inet.ip.fw.verbose=1
sysctl net.inet.ip.fw.verbose_limit=100у вас других пакетных фильтров нет случайно?
>>не переживай насчет невнимательности.
>
>Да, на деле проверка всётаки происходит. В предыдущих версиях FreeBSD (говорю про
>4х) такое правило нельзя было добавить вообще, и возможно в дальнейшем
>утилиту /sbin/ipfw поправят, чтобы это не работало.
>
>>ядро с IPFIREWALL_VERBOSE...
>Можно без перекомпиляции (проверял на 6-ке, 5ки щас нет под рукой..)
>
>sysctl net.inet.ip.fw.verbose=1
>sysctl net.inet.ip.fw.verbose_limit=100
Спасибо, что мне не хватало, так это логов:)
>
>у вас других пакетных фильтров нет случайно?Все, разобрался. Мне теперь других не надо:)
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1528 212.94.96.68:20 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1526 212.94.96.68:21 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1528 212.94.96.68:20 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1528 212.94.96.68:20 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1522 212.94.96.68:21 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1524 212.94.96.68:21 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1526 212.94.96.68:21 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1526 212.94.96.68:21 in via xl0
kernel: ipfw: 1001 Accept TCP 192.168.0.2:1530 212.94.96.68:21 in via xl0
last message repeated 9 timesТеперь совершенно чайниковский вопрос - а нафига ftpd открывать соединения по другим портам?
>Теперь совершенно чайниковский вопрос - а нафига ftpd открывать соединения по другим
>портам?
так для этого почитай чем отличаются пассивный и активный фтп моды.
>>Рязъясните, пожалуйста, почему ipfw режет пакеты по 20/21 портам? Задача, думаю, ясна
>>- ftp-сервер. Касательно ftpd все нормально, поскольку ежели полность разрешить ip
>>с сети ftp-клиента, все работет нормально.
>>01000 allow icmp from any to me
>>01001 allow ip from me to any
>>01002 allow ip from any to me dst-port 20,21
>
>У ip протокола нет понятия портов. Пиши так:
>allow tcp from any to me 20,21
ip - это уже результаты эксперимента. До этого с таким же успехом было записано правило на tcp.