всем доброго времени суток. Помогите дельным советом плиз.
прошу прощения за флуд, но что б не возникали вопросы
Итак ближе к телу: Решил я настроить файрвол и вот что из этого вышло -
в общем в ядре включил -
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=32
options IPFIREWALL_FORWARD
options IPDIVERT
options IPSTEALTH
options TCP_DROP_SYNFIN
options ICMP_BANDLIMв etc/rc.conf:
firewall_enable="YES"
firewall_logging="YES"
firewall_quiet="YES"
firewall_type="/etc/ipfw.conf"
tcp_extensions="NO"
tcp_drop_synfin="YES"
tcp_restrict_rst="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="YES"
icmp_bmcastecho="NO"
natd_enable="YES"
natd_interface="rl0"
natd_flags="-dynamic -s -m"в /etc/ipfw.conf :
add divert natd all from any to any via rl0
add deny icmp from any to any frag
add deny icmp from any to any in via rl0 icmptype 8
add allow icmp from any to any via rl0
add allow tcp from any to any 20 via rl0
add allow tcp from any 20 to any via rl0
add allow tcp from any to any 21 via rl0
add allow tcp from any 21 to any via rl0
add allow tcp from any to any 22,23 via rl0
add allow tcp from any 22,23 to any via rl0
add allow tcp from any to any 25 via rl0
add allow tcp from any 25 to any via rl0
add allow udp from any to any 53 via rl0
add allow udp from any 53 to any via rl0
add allow tcp from any to any 80 via rl0
add allow tcp from any 80 to any via rl0
add allow tcp from any to any 443 via rl0
add allow tcp from any 443 to any via rl0add allow tcp from 192.168.13.13 to any 22,23 via rl1
add deny tcp from 192.168.13.0/24 to any 22,23 via rl1add allow all from any to any via rl0
объясняю что rl0 - смотрит в интернет, а rl1 смотрит в локальную сеть. то есть мне нужно что блы маршрутизация. также еще имеется файл /etc/natd.conf вроде все :)
что мы имеем: маршрутизациия есть, у юзеров в локальной сети работает: HTTP, POP3, SMTP.. и еще забыл написать что еще открыл порт для ICQ и IRC ... все вроде счатсливы, но есть ондно но! - не могу качать с FTP. то есть захожу нормально на любой FTP - могу залить на него что угодно, но ничего не могу Выкачать! - заколебался уже. просто какбудто закрыт порт. Попросил приятеля просканить порты снаружи - говорит, что все порты закрыты (хотя фиг знает почему) кроме 25(SMTP) и 22(SSH).. Люди добрые подскажите, а то голову уже сломал, обещаю вознаградить пивом не по-детски.
PS Извиняйте за флуд, но просто чтоб от вас ничего не ускольщнуло.
покажи вывод команды ipfw show
>покажи вывод команды ipfw show#ipfw show
00100 0 0 allow ip from any to any via lo0
00200 0 0 deny ip from any to 127.0.0.0/8
00300 0 0 deny ip from 127.0.0.0/8 to any
00400 1609 605125 divert 8668 ip from any to any via rl0
00500 1 90 allow icmp from any to any via rl0
00600 0 0 allow tcp from any to any 20 via rl0
00700 0 0 allow tcp from any 20 to any via rl0
00800 0 0 allow tcp from any to any 21 via rl0
00900 0 0 allow tcp from any 21 to any via rl0
01000 0 0 allow tcp from any 20 to any 1024-65535 out xmit rl0
01100 1 76 allow udp from any to any 123 out xmit rl0
01200 0 0 allow udp from any 123 to any out xmit rl0
01300 0 0 allow tcp from any to any 22 via rl0
01400 0 0 allow tcp from any 22 to any via rl0
01500 0 0 allow tcp from any to any 25 via rl0
01600 0 0 allow tcp from any 25 to any via rl0
01700 24 1448 allow udp from any to any 53 via rl0
01800 23 3820 allow udp from any 53 to any via rl0
01900 0 0 allow tcp from any to any 53 via rl0
02000 0 0 allow tcp from any 53 to any via rl0
02100 680 98133 allow tcp from any to any 80 via rl0
02200 682 472352 allow tcp from any 80 to any via rl0
02300 0 0 allow tcp from any to any 443 via rl0
02400 0 0 allow tcp from any 443 to any via rl0
02500 92 9555 allow tcp from any to any 5190 via rl0
02600 87 18229 allow tcp from any 5190 to any via rl0
02700 0 0 allow tcp from any to any 6669 via rl0
02800 0 0 allow tcp from any 6669 to any via rl0
02900 0 0 allow tcp from any to any 6667 via rl0
03000 0 0 allow tcp from any 6667 to any via rl0
03100 62 3806 allow tcp from 192.168.1.199 to any 22 via rl1
03200 0 0 deny tcp from 192.168.1.188/30 to any 22 via rl1
03300 1696 614662 allow ip from any to any via rl1
03400 0 0 allow ip from any to any via lo0
03500 0 0 allow ip from any to any via rl1
03600 0 0 deny icmp from any to any frag
03700 0 0 allow icmp from any to any
03800 0 0 allow tcp from any to any 25 out
03900 0 0 allow tcp from any 25 to any out
04000 0 0 allow tcp from any to any 443 out
04100 0 0 allow tcp from any 443 to any out
04200 0 0 allow tcp from any to any 80 out
04300 0 0 allow tcp from any 80 to any out
04400 0 0 allow ip from any to any via rl1
04500 0 0 allow udp from any to any 53
04600 0 0 allow udp from any 53 to any
04700 0 0 allow tcp from any to any 53
04800 0 0 allow tcp from any 53 to any
04900 0 0 allow tcp from any to any 119
05000 0 0 allow tcp from any 119 to any
05100 0 0 allow tcp from any to any 110
05200 0 0 allow tcp from any 110 to any
05300 0 0 allow tcp from any to any 21
05400 0 0 allow tcp from any 21 to any
05500 0 0 allow tcp from any to any 20
05600 0 0 allow tcp from any 20 to any
05700 0 0 allow tcp from any to 81.2.2.133 22
05800 0 0 allow tcp from 81.2.2.133 to any 22
65535 22 1588 deny ip from any to anyпомогите плз :))
>>покажи вывод команды ipfw show
>
>#ipfw show
>00100 0 0 allow
>ip from any to any via lo0
>00200 0 0 deny
>ip from any to 127.0.0.0/8
>00300 0 0 deny
>ip from 127.0.0.0/8 to any
>00400 1609 605125 divert 8668 ip from any to any via rl0
>
>00500 1 90 allow icmp
>from any to any via rl0
>00600 0 0 allow
>tcp from any to any 20 via rl0
>00700 0 0 allow
>tcp from any 20 to any via rl0
>00800 0 0 allow
>tcp from any to any 21 via rl0
>00900 0 0 allow
>tcp from any 21 to any via rl0
>01000 0 0 allow
>tcp from any 20 to any 1024-65535 out xmit rl0
>01100 1 76 allow udp
>from any to any 123 out xmit rl0
>01200 0 0 allow
>udp from any 123 to any out xmit rl0
>01300 0 0 allow
>tcp from any to any 22 via rl0
>01400 0 0 allow
>tcp from any 22 to any via rl0
>01500 0 0 allow
>tcp from any to any 25 via rl0
>01600 0 0 allow
>tcp from any 25 to any via rl0
>01700 24 1448 allow udp from any to
>any 53 via rl0
>01800 23 3820 allow udp from any 53
>to any via rl0
>01900 0 0 allow
>tcp from any to any 53 via rl0
>02000 0 0 allow
>tcp from any 53 to any via rl0
>02100 680 98133 allow tcp from any to any 80
>via rl0
>02200 682 472352 allow tcp from any 80 to any via
>rl0
>02300 0 0 allow
>tcp from any to any 443 via rl0
>02400 0 0 allow
>tcp from any 443 to any via rl0
>02500 92 9555 allow tcp from any to
>any 5190 via rl0
>02600 87 18229 allow tcp from any 5190 to
>any via rl0
>02700 0 0 allow
>tcp from any to any 6669 via rl0
>02800 0 0 allow
>tcp from any 6669 to any via rl0
>02900 0 0 allow
>tcp from any to any 6667 via rl0
>03000 0 0 allow
>tcp from any 6667 to any via rl0
>03100 62 3806 allow tcp from 192.168.1.199 to
>any 22 via rl1
>03200 0 0 deny
>tcp from 192.168.1.188/30 to any 22 via rl1
>03300 1696 614662 allow ip from any to any via rl1
>03400 0 0 allow
>ip from any to any via lo0
>03500 0 0 allow
>ip from any to any via rl1
>03600 0 0 deny
>icmp from any to any frag
>03700 0 0 allow
>icmp from any to any
>03800 0 0 allow
>tcp from any to any 25 out
>03900 0 0 allow
>tcp from any 25 to any out
>04000 0 0 allow
>tcp from any to any 443 out
>04100 0 0 allow
>tcp from any 443 to any out
>04200 0 0 allow
>tcp from any to any 80 out
>04300 0 0 allow
>tcp from any 80 to any out
>04400 0 0 allow
>ip from any to any via rl1
>04500 0 0 allow
>udp from any to any 53
>04600 0 0 allow
>udp from any 53 to any
>04700 0 0 allow
>tcp from any to any 53
>04800 0 0 allow
>tcp from any 53 to any
>04900 0 0 allow
>tcp from any to any 119
>05000 0 0 allow
>tcp from any 119 to any
>05100 0 0 allow
>tcp from any to any 110
>05200 0 0 allow
>tcp from any 110 to any
>05300 0 0 allow
>tcp from any to any 21
>05400 0 0 allow
>tcp from any 21 to any
>05500 0 0 allow
>tcp from any to any 20
>05600 0 0 allow
>tcp from any 20 to any
>05700 0 0 allow
>tcp from any to 81.2.2.133 22
>05800 0 0 allow
>tcp from 81.2.2.133 to any 22
>65535 22 1588 deny ip from any to
>any
>
>помогите плз :))Мда... :) Заставь дурака молиться, он лоб расшибет... :)))
Нафига столько правил в сущности делающих одно и тоже? Можно ведь несколько условий в одно правило заталкивать... читай man ipfw.
Можно сделать что-то на вроде следующего...
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00300 deny ip from 127.0.0.0/8 to any
01000 divert 8668 ip from any to any via xl0 # это смотрит в инет.
01100 allow tcp from any to any established
01200 allow ip from any to any via xl1 # это например локалка.
01201 allow ip from any to any via ppp0 # это на случай диалин сервера.
01300 allow ip from any to any out
01350 allow tcp from any to <IP твоего сервера> 20,21,80 limit src-addr 20 # обламываем регтчиков и прочих мудаков открывающих более 20 сессий с одного IP на порты 20, 21, 80.
01400 allow tcp from any to any 20,21,25,80,110,6667 # здесь перечисли порты которые открываешь для всех
01401 allow tcp from any 20 to any
01402 allow udp from any to any 53 # деэнэся
01403 allow udp from any 53 to any #
01500 allow ip from <внешняя сеть из которой можно заходить>/<маска сети> to any
01600 allow icmp from any to any
02000 deny log logamount 100 ip from any to any
65535 deny ip from any to any
>Можно сделать что-то на вроде следующего...
>00100 allow ip from any to any via lo0
>00200 deny ip from any to 127.0.0.0/8
>00300 deny ip from 127.0.0.0/8 to any
>01000 divert 8668 ip from any to any via xl0 # это
>смотрит в инет.
>01100 allow tcp from any to any established
>01200 allow ip from any to any via xl1 # это например
>локалка.
>01201 allow ip from any to any via ppp0 # это на
>случай диалин сервера.
>01300 allow ip from any to any out
>01350 allow tcp from any to <IP твоего сервера> 20,21,80 limit src-addr 20 # обламываем регтчиков и прочих мудаков открывающих более 20 сессий с одного IP на порты 20, 21, 80.
>01400 allow tcp from any to any 20,21,25,80,110,6667 # здесь перечисли порты
>которые открываешь для всех
>01401 allow tcp from any 20 to any
>01402 allow udp from any to any 53 # деэнэся
>01403 allow udp from any 53 to any #
>01500 allow ip from <внешняя сеть из которой можно заходить>/<маска сети> to any
>01600 allow icmp from any to any
>02000 deny log logamount 100 ip from any to any
>65535 deny ip from any to any
спасиба, попробую )
Для ivi
Прощу прощение за непонятливость
allow tcp from any to <IP твоего сервера> 20,21,80 limit src-addr 20я не нашел в манах описание опции limit src-addr 20 ?
Подскажите где это?
>Мда... :) Заставь дурака молиться, он лоб расшибет... :)))
>Нафига столько правил в сущности делающих одно и тоже? Можно ведь несколько
>условий в одно правило заталкивать... читай man ipfw.это все понятно, мне так просто удобнее.. каждое правило у меня закоментировано и мне удобно убирать/добавлять именно так.
теперь по существу вопроса? плиз :)
>>Мда... :) Заставь дурака молиться, он лоб расшибет... :)))
>>Нафига столько правил в сущности делающих одно и тоже? Можно ведь несколько
>>условий в одно правило заталкивать... читай man ipfw.
>
>это все понятно, мне так просто удобнее.. каждое правило у меня закоментировано
>и мне удобно убирать/добавлять именно так.
>теперь по существу вопроса? плиз :)
Ну уж не знаю, не знаю... Проще отредактировать порты в одном месте... Чем разбираться в тех дебрях, что ты здесь привел... :)
>>>Мда... :) Заставь дурака молиться, он лоб расшибет... :)))
>>>Нафига столько правил в сущности делающих одно и тоже? Можно ведь несколько
>>>условий в одно правило заталкивать... читай man ipfw.
>>
>>это все понятно, мне так просто удобнее.. каждое правило у меня закоментировано
>>и мне удобно убирать/добавлять именно так.
>>теперь по существу вопроса? плиз :)
>
>
>Ну уж не знаю, не знаю... Проще отредактировать порты в одном месте...
>Чем разбираться в тех дебрях, что ты здесь привел... :)в общем заработало... делаю
из консоли:
ipfw add allow tcp from any to me 1000-5000 via rl0
ipfw add allow tcp from me 1000-5000 to any via rl0
работает...добавляю просто в конфиг -
add allow tcp from any to me 1000-5000 via rl0
add allow tcp from me 1000-5000 to any via rl0
не работает... мне подсказали добавить в начале конфига ipfw -f flush и сделать его исполняемым...
>>>>Мда... :) Заставь дурака молиться, он лоб расшибет... :)))
>>>>Нафига столько правил в сущности делающих одно и тоже? Можно ведь несколько
>>>>условий в одно правило заталкивать... читай man ipfw.
>>>
>>>это все понятно, мне так просто удобнее.. каждое правило у меня закоментировано
>>>и мне удобно убирать/добавлять именно так.
>>>теперь по существу вопроса? плиз :)
>>
>>
>>Ну уж не знаю, не знаю... Проще отредактировать порты в одном месте...
>>Чем разбираться в тех дебрях, что ты здесь привел... :)
>
>в общем заработало... делаю
>из консоли:
>ipfw add allow tcp from any to me 1000-5000 via rl0
>ipfw add allow tcp from me 1000-5000 to any via rl0
>работает...
>
>добавляю просто в конфиг -
>add allow tcp from any to me 1000-5000 via rl0
>add allow tcp from me 1000-5000 to any via rl0
>не работает... мне подсказали добавить в начале конфига ipfw -f flush и
>сделать его исполняемым...А попробуй пассивный режим канала данных
add allow tcp from <you> 1024-65535 to any 1024-65535 out via rl0
add allow tcp from any 1024-65535 to <you> 1024-65535 in via rl0 establishedА сделать rc.firewall исполняемым так это для удобства пперезапуска правил.
все спаибо всем.. заработало.. аллилуя..
добавил просто в конфиг
add allow tcp from any to me 1000-5000 via rl0
add allow tcp from me 1000-5000 to any via rl0и перезапустил машину, хотя я думал что перезапуск не влияет, ведь, как написано в мане ipfw считывает правила при каждом обращении к порту...
теперь сам рутер может с фтп качать... это мне и нужно было..
единственно что юзеры в локальной сети не могут с фтп качать, но это мелочи - им это не надо :)) хотя стоит в конфиге
add allow all from any to any via rl1
>все спаибо всем.. заработало.. аллилуя..
>добавил просто в конфиг
>add allow tcp from any to me 1000-5000 via rl0
>add allow tcp from me 1000-5000 to any via rl0
>
>и перезапустил машину, хотя я думал что перезапуск не влияет, ведь, как
>написано в мане ipfw считывает правила при каждом обращении к порту...
>
>
>теперь сам рутер может с фтп качать... это мне и нужно было..
>
>единственно что юзеры в локальной сети не могут с фтп качать, но
>это мелочи - им это не надо :)) хотя стоит
>в конфиге
>add allow all from any to any via rl1Действительно не надо было перегружать машину