Есть FreeBSD как bridge с ipfw, NAT на нем нет и не будет. Трансляция адресов осуществляется на маршрутизаторе CISCO.Маршрутизатор: 10.XX.XX.1
Локальная сетка: 10.XX.XX.0:255.255.255.0
Машины которые должны выходить в инет имеют фиксированные ip-адреса, скажем 10.XX.XX.2 - 10.XX.XX.14
интерфейс xl0 смотрит в сторону маршрутизатора, xl1 соотвественно в локальную сетку.#!/bin/sh
ipfw='/sbin/ipfw -q'
ournet='10.XX.XX.0:255.255.255.0'
ifout='xl0'
ifuser='xl1'${ipfw} flush
${ipfw} add 50 allow udp from 0.0.0.0 2054 to 0.0.0.0
${ipfw} add 100 check-state${ipfw} add 200 deny icmp from any to any in icmptype 5,9,13,14,15,16,17 via ${ifout}
${ipfw} add 205 deny udp from any to any 135,137,138,139,445 in via ${ifout}
${ipfw} add 210 reject ip from ${ournet} to any in via ${ifout}${ipfw} add 250 allow ip from any to any via lo0
${ipfw} add 260 deny ip from any to 127.0.0.0/8
${ipfw} add 570 deny ip from 127.0.0.0/8 to any${ipfw} add 305 allow tcp from me to any keep-state via ${ifout}
${ipfw} add 310 allow icmp from any to any
${ipfw} add 315 allow udp from ${ournet} to any 53 out xmit ${ifout}
${ipfw} add 320 allow udp from any 53 to ${ournet} in recv ${ifout}
${ipfw} add 325 allow tcp from ${ournet} to any 53 out xmit ${ifout}
${ipfw} add 330 allow tcp from any 53 to ${ournet} in recv ${ifout} established
${ipfw} add 335 allow ip from me to any${ipfw} add 1000 allow ip from 10.XX.XX.2 to any
${ipfw} add 1001 allow ip from any to 10.XX.XX.2 established${ipfw} add 65535 deny log logamount 1000 ip from any to any
надо дать скажем 10.XX.XX.2 доступ в инет, всем остальным соотвественно запретить, одним словом вышеприведенная чушь не работает, выхода в инет нету. если в конец добавить allow ip from any to any, то все замечательно но всем ественно открывается доступ в инет. Помогите разобраться!!!
>Есть FreeBSD как bridge с ipfw, NAT на нем нет и не
>будет. Трансляция адресов осуществляется на маршрутизаторе CISCO.
>
>Маршрутизатор: 10.XX.XX.1
>Локальная сетка: 10.XX.XX.0:255.255.255.0
>Машины которые должны выходить в инет имеют фиксированные ip-адреса, скажем 10.XX.XX.2 -
>10.XX.XX.14
>интерфейс xl0 смотрит в сторону маршрутизатора, xl1 соотвественно в локальную сетку.
>
>#!/bin/sh
>
>ipfw='/sbin/ipfw -q'
>ournet='10.XX.XX.0:255.255.255.0'
>ifout='xl0'
>ifuser='xl1'
>
>${ipfw} flush
>
>${ipfw} add 50 allow udp from 0.0.0.0 2054 to 0.0.0.0
>${ipfw} add 100 check-state
>
>${ipfw} add 200 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
>via ${ifout}
>${ipfw} add 205 deny udp from any to any 135,137,138,139,445 in via
>${ifout}
>${ipfw} add 210 reject ip from ${ournet} to any in via ${ifout}
>
>
>${ipfw} add 250 allow ip from any to any via lo0
>${ipfw} add 260 deny ip from any to 127.0.0.0/8
>${ipfw} add 570 deny ip from 127.0.0.0/8 to any
>
>${ipfw} add 305 allow tcp from me to any keep-state via ${ifout}
>
>${ipfw} add 310 allow icmp from any to any
>${ipfw} add 315 allow udp from ${ournet} to any 53 out xmit
>${ifout}
>${ipfw} add 320 allow udp from any 53 to ${ournet} in recv
>${ifout}
>${ipfw} add 325 allow tcp from ${ournet} to any 53 out xmit
>${ifout}
>${ipfw} add 330 allow tcp from any 53 to ${ournet} in recv
>${ifout} established
>${ipfw} add 335 allow ip from me to any${ipfw} add 500 allow tcp from ${ournet} to any 80,25,110,143,443,1024-65535
>
>${ipfw} add 1000 allow ip from 10.XX.XX.2 to any
>${ipfw} add 1001 allow ip from any to 10.XX.XX.2 established
>
>${ipfw} add 65535 deny log logamount 1000 ip from any to any
>
>
>надо дать скажем 10.XX.XX.2 доступ в инет, всем остальным соотвественно запретить, одним
>словом вышеприведенная чушь не работает, выхода в инет нету. если в
>конец добавить allow ip from any to any, то все замечательно
>но всем ественно открывается доступ в инет. Помогите разобраться!!!
>${ipfw} add 500 allow tcp from ${ournet} to any 80,25,110,143,443,1024-65535не помогло:( Может есть у кого готовый конфиг на подобную конфигурацию?
Password:
mail# cat /etc/rc.firewall
#!/bin/sh
cmd="/sbin/ipfw"onet="w.w.w.w/e"
oip="d.d.d.d/30"
oif="em0"iif="em1"
inet="192.168.1.0/24"
iip="192.168.1.3"office="192.168.1.0/24"
buhta="192.168.2.0/24"
srve2k="192.168.1.228/28"
$cmd -f flushj=100
allow () { j=$(($j+100)); $cmd add $j allow $*; }
deny_log () { j=$(($j+100)); $cmd add $j deny log $*; }
deny () { j=$(($j+100)); $cmd add $j deny $*; }
count () { j=$(($j+100)); $cmd add $j count $*; }
fwd () { j=$(($j+100)); $cmd add $j fwd $*; }
divert () { j=$(($j+100)); $cmd add $j divert $*; }
add_pipe () { j=$(($j+100)); $cmd add $j pipe $*; }allow_110 () { allow tcp from any 110 to $*
allow tcp from $* to any 110; }add_pipe 100 tcp from $oip to any
$cmd pipe 100 config bw 1024KBit/s
divert natd ip from $srve2k to any out via $oif
divert natd ip from any to $oipallow ip from any to any via lo0
#ntpdate
allow ip from any to 195.58.5.202
allow ip from 195.58.5.202 to anyallow ip from $onet to any
allow ip from any to $onetallow ip from $makfa to any
allow ip from any to $makfaallow ip from $buhta to any
allow ip from any to $buhta#local net
allow ip from any to any via $iifallow ip from 192.168.0.0/24 to any
allow ip from any to 192.168.0.0/24allow tcp from any to any 25
allow tcp from any 25 to anyallow udp from any 53 to any
allow udp from any to any 53allow tcp from any 53 to any
allow tcp from any to any 53allow tcp from any 80 to $oip
allow tcp from $oip to any 80allow tcp from any 20-22 to $oip
allow tcp from $oip to any 20-22allow tcp from any 113 to any
allow tcp from any to any 113allow tcp from any 2121 to any
allow tcp from any to any 2121allow tcp from any 119 to any
allow tcp from any to any 119allow udp from any 123 to any
allow udp from any to any 123allow tcp from any 253 to any
allow tcp from any to any 253allow icmp from any to any
deny_log ip from any to any
mail#