Здравствуйте, я новичек в работе файрволов, никак не получается добиться желаемого...Ниже представлен скрипт от ipfw. Подскажите пожалуйста, как его можно улучшить, что бы добиться следующего:
- всем ip-адресам запретить все кроме интернета (http,https,ftp) и локальной сети (доступом в интернет управляет squid)
- некоторым ip-адресам разрешить pop и smtp
- некоторым разрешить все...ipfw='/sbin/ipfw -q'
ournet='192.168.0.1/24'
ifout='xl0'
ifuser='fxp0'${ipfw} -f flush
# Какие правила еще сюда можно добавить?
${ipfw} add 200 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
${ipfw} add 210 reject ip from ${ournet} to any in via ${ifout}# Для работы самой системы
${ipfw} add 300 allow ip from any to any via lo
${ipfw} add 310 allow tcp from me to any keep-state via ${ifout}
${ipfw} add 320 allow icmp from any to any
${ipfw} add 330 allow udp from me to any domain keep-state
${ipfw} add 350 allow ip from me to any# SMTP
${ipfw} add 410 allow tcp from not ${ournet} to me 110# Прозрачное проксирование
${ipfw} add 500 fwd 127.0.0.1,3128 tcp from ${ournet} to any http,https,ftp out via ${ifout}
# NAT
${ipfw} add 600 divert natd all from any to any via ${ifout}# Думаю, это не правильно:
${ipfw} add 1007 allow ip from ${ournet} to any via ${ifuser}
${ipfw} add 1007 allow ip from any to ${ournet} via ${ifuser}--------
FreeBSD 6.1 (ядро собрано с поддержкой ipfw и переадресацией пакетов (fwd))
ipfw='/sbin/ipfw -q'
natd='/sbin/natd'
ournet='192.168.0.1/24'
ifout='xl0'
ifuser='fxp0'$natd -interface $ifout -p 8668 -dynamic
${ipfw} -f flush
${ipfw} add 200 deny icmp from any to any in icmptype 5,9,13,14,15,16,17 via $ifuser
${ipfw} add 210 allow icmp from any to any in via $ifuser
${ipfw} add 220 allow icmp from any to any out via $ifuser${ipfw} 300 add allow ip from any to any via lo
${ipfw} 310 add deny ip from any to 127.0.0.0/8
${ipfw} 315 add deny ip from 127.0.0.0/8 to any# NAT
${ipfw} add 600 divert natd all from any to any via ${ifout} in
${ipfw} add 610 divert natd all from any to any via ${ifout} out# Прозрачное проксирование, ФТП и ХТТПС не желательно форвордить на сквид.
${ipfw} add 700 fwd 127.0.0.1,3128 tcp from ${ournet} to any http out via ${ifout}${ipfw} add 1007 allow ip from ${ournet} to any
${ipfw} add 1007 allow ip from any to ${ournet}${ipfw} 39505 add allow icmp from any to me via ${ifout}
${ipfw} 39510 add allow icmp from me to any via ${ifout}
${ipfw} 39550 add allow udp from any to me 123 via ${ifout}
${ipfw} 39565 add allow tcp from any to me 20,21,22,25,80,110,443 via ${ifout}
${ipfw} 39575 add allow tcp from any to me 1024-65535 via ${ifout}
${ipfw} 39590 add allow udp from any to me 1024-65535 via ${ifout}
${ipfw} 39595 add allow tcp from me to any via ${ifout}
${ipfw} 39600 add allow udp from me to any via ${ifout}На пробуй.
Я никак не пойму как отдельным ip-адресам разрешить pop?Этот пример разрешает всем:
${ipfw} add allow tcp from any to any 110
${ipfw} add allow tcp from any 110 to any
а необходимо только, к примеру 192.168.0.1...Пробую так:
${ipfw} add allow tcp from 192.168.0.1 to any 110
${ipfw} add allow tcp from any 110 to 192.168.0.1
не работает...