URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 92984
[ Назад ]

Исходное сообщение
"freebsd 9.0 ipfw"

Отправлено 999 , 06-Фев-12 11:16 
проблема. есть фря 9, на ней ядерный NAT
firewall_enable="YES"
firewall_nat_enable="YES"
при этом пишу
firewall_type="open"
все великолепно ходит.
однако, пишу
firewall_type="файл_своих_правил"
отваливаются оба сетевых фейса. файл_своих_правил содержит тот же набор что и open (специально брал ipfw show и копировал в файл).
Все сервисы, и пр. настройки остаются неизменны.
В чем беда ума не приложу.

Содержание

Сообщения в этом обсуждении
"freebsd 9.0 ipfw"
Отправлено Small , 06-Фев-12 11:47 
> firewall_type="файл_своих_правил"

файлы со сценарием firewall прописываются:
firewall_script="файл_своих_правил"

firewall_type - указывает на один из разделов файла /etc/rc.firewall


"freebsd 9.0 ipfw"
Отправлено 999 , 06-Фев-12 12:17 
>> firewall_type="файл_своих_правил"
> файлы со сценарием firewall прописываются:
> firewall_script="файл_своих_правил"
> firewall_type - указывает на один из разделов файла /etc/rc.firewall

http://www.freebsd.org/doc/en/books/handbook/firewalls-ipfw....
firewall_type="open"
Available values for this setting are:
open -- pass all traffic.
client -- will protect only this machine.
simple -- protect the whole network.
closed -- entirely disables IP traffic except for the loopback interface.
UNKNOWN -- disables the loading of firewall rules.
filename -- absolute path of file containing firewall rules. <<<
последнее и пытаюсь делать - пихаю, таким образом, не скрипт, а файл со списком правил.


"freebsd 9.0 ipfw"
Отправлено Аноним , 06-Фев-12 17:58 
>[оверквотинг удален]
> firewall_type="open"
> Available values for this setting are:
> open -- pass all traffic.
> client -- will protect only this machine.
> simple -- protect the whole network.
> closed -- entirely disables IP traffic except for the loopback interface.
> UNKNOWN -- disables the loading of firewall rules.
> filename -- absolute path of file containing firewall rules. <<<
> последнее и пытаюсь делать - пихаю, таким образом, не скрипт, а файл
> со списком правил.

фалик-то, покажите


"freebsd 9.0 ipfw"
Отправлено 999 , 06-Фев-12 22:49 
>[оверквотинг удален]
>> Available values for this setting are:
>> open -- pass all traffic.
>> client -- will protect only this machine.
>> simple -- protect the whole network.
>> closed -- entirely disables IP traffic except for the loopback interface.
>> UNKNOWN -- disables the loading of firewall rules.
>> filename -- absolute path of file containing firewall rules. <<<
>> последнее и пытаюсь делать - пихаю, таким образом, не скрипт, а файл
>> со списком правил.
> фалик-то, покажите

упс. показываю
firewall_type="файл"
add 00050 nat 123 ip4 from any to any via rl0
add 65000 allow ip from any to any

ipfw show
00050  380  20990 nat 123 ip4 from any to any via rl0
00100   86   7166 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    0      0 deny ip from any to ::1
00500    0      0 deny ip from ::1 to any
00600    0      0 allow ipv6-icmp from :: to ff02::/16
00700    0      0 allow ipv6-icmp from fe80::/10 to fe80::/10
00800    0      0 allow ipv6-icmp from fe80::/10 to ff02::/16
00900    0      0 allow ipv6-icmp from any to any ip6 icmp6types 1
01000    0      0 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
65000 1239 110036 allow ip from any to any
65535    8    576 deny ip from any to any

не работает
-------------------------------------------------------
firewall_type="open"
ipfw show
00050 1797 221747 nat 123 ip4 from any to any via rl0
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    0      0 deny ip from any to ::1
00500    0      0 deny ip from ::1 to any
00600    0      0 allow ipv6-icmp from :: to ff02::/16
00700    0      0 allow ipv6-icmp from fe80::/10 to fe80::/10
00800    0      0 allow ipv6-icmp from fe80::/10 to ff02::/16
00900    0      0 allow ipv6-icmp from any to any ip6 icmp6types 1
01000    0      0 allow ipv6-icmp from any to any ip6 icmp6types 2,135,136
65000 1940 225629 allow ip from any to any
65535    6    472 deny ip from any to any

работает

что-то не могу с ядерным натом разобраться. пустил по-старинке natd - все работает нормально.


"freebsd 9.0 ipfw"
Отправлено 999 , 07-Фев-12 02:14 
решил задачу. спасибо за участие.

"freebsd 9.0 ipfw"
Отправлено Аноним , 07-Фев-12 03:17 
> решил задачу. спасибо за участие.

Привыкните говорить, как решили.

nat 123 config?


"freebsd 9.0 ipfw"
Отправлено 999 , 07-Фев-12 10:22 
>> решил задачу. спасибо за участие.
> Привыкните говорить, как решили.
> nat 123 config?

привыкните общаться без приказного тона!
да, вся проблема оказалась в неверном прочтении правила nat.
на данный момент первичный файл правил такой
add 00001 count ip from any to any out via rl0
add 00002 count ip from any to any in via rl0
add 00003 count ip from any to any out via rl1
add 00004 count ip from any to any in via rl1
nat 123 config if rl0 log
add 00050 nat 123 ip from any to any via rl0
add 00090 check-state
add 00100 deny icmp from any to any frag
add 00101 allow icmp from any to any icmptypes 0,3,8,11
add 00102 deny icmp from any to any
add 00150 deny ip from any to any dst-port 69,135-139,445,901-1110,20034,31337,6000-9999,10001-19999 in via rl0
add 65000 allow ip from any to any

осталось убедить ядерный NAT транслировать порты и порядок.
пока с конструкцией неочень разобрался.


"freebsd 9.0 ipfw"
Отправлено Аноним , 07-Фев-12 14:22 
>>> решил задачу. спасибо за участие.
>> Привыкните говорить, как решили.
>> nat 123 config?
> привыкните общаться без приказного тона!

Не знаю где вы увидели приказной тон.

>[оверквотинг удален]
> add 00050 nat 123 ip from any to any via rl0
> add 00090 check-state
> add 00100 deny icmp from any to any frag
> add 00101 allow icmp from any to any icmptypes 0,3,8,11
> add 00102 deny icmp from any to any
> add 00150 deny ip from any to any dst-port 69,135-139,445,901-1110,20034,31337,6000-9999,10001-19999
> in via rl0
> add 65000 allow ip from any to any
> осталось убедить ядерный NAT транслировать порты и порядок.
> пока с конструкцией неочень разобрался.

порты транслируются так (кусок из своего конфига, 192.168.0.31 - хост на который транслируем):
${fwcmd} nat 10 config if ${net_if} redirect_port tcp 192.168.0.31:5000-5100 5000-5100
${fwcmd} add 10 nat 10 tcp from any to any
${fwcmd} nat 20 config if ${net_if} redirect_port tcp 192.168.0.31:3479 3479
${fwcmd} add 20 nat 20 tcp from any to any


"freebsd 9.0 ipfw"
Отправлено 999 , 08-Фев-12 16:12 
> порты транслируются так (кусок из своего конфига, 192.168.0.31 - хост на который
> транслируем):
> ${fwcmd} nat 10 config if ${net_if} redirect_port tcp 192.168.0.31:5000-5100 5000-5100
> ${fwcmd} add 10 nat 10 tcp from any to any
> ${fwcmd} nat 20 config if ${net_if} redirect_port tcp 192.168.0.31:3479 3479
> ${fwcmd} add 20 nat 20 tcp from any to any

Да, работает. Спасибо. Что-то видимо недопонял в мануале. Бывает.


"freebsd 9.0 ipfw"
Отправлено Аноним , 07-Фев-12 14:26 
>[оверквотинг удален]
> add 00004 count ip from any to any in via rl1
> nat 123 config if rl0 log
> add 00050 nat 123 ip from any to any via rl0
> add 00090 check-state
> add 00100 deny icmp from any to any frag
> add 00101 allow icmp from any to any icmptypes 0,3,8,11
> add 00102 deny icmp from any to any
> add 00150 deny ip from any to any dst-port 69,135-139,445,901-1110,20034,31337,6000-9999,10001-19999
> in via rl0
> add 65000 allow ip from any to any

а зачем нужен check-state, если нет ни одного keep-state?


"freebsd 9.0 ipfw"
Отправлено 999 , 08-Фев-12 16:13 
>[оверквотинг удален]
>> nat 123 config if rl0 log
>> add 00050 nat 123 ip from any to any via rl0
>> add 00090 check-state
>> add 00100 deny icmp from any to any frag
>> add 00101 allow icmp from any to any icmptypes 0,3,8,11
>> add 00102 deny icmp from any to any
>> add 00150 deny ip from any to any dst-port 69,135-139,445,901-1110,20034,31337,6000-9999,10001-19999
>> in via rl0
>> add 65000 allow ip from any to any
> а зачем нужен check-state, если нет ни одного keep-state?

кусок от старой конф. остался