gryu
дикий гусь | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору cat /etc/rc.firewall #!/bin/sh FwCMD="/sbin/ipfw" # путь к ipfw LanOut="em0" # внешний интерфейс LanIn="em1" # внутренний интерфейс IpOut="<>" # внешний IP адрес машины IpIn="192.168.100.254" # внутренний IP машины NetMask="24" # маска сети (если для внешней и внутренней сети она разная # - придётся вводить ещё одну переменную, NetIn="192.168.100.0" # Внутренняя сеть # ban_table="table(100)" # Сброс всех правила: ${FwCMD} -f flush # Проверяет соответствие пакета динамическим правилам: ${FwCMD} add check-state # Разрешаем весь траффик по внутреннему интерфейсу (петле) ${FwCMD} add allow ip from any to any via lo0 # Правило fail2ban блокирующее все IP адреса, находящиеся в таблице fail2ban ${FwCMD} add deny ip from table'(100)' to any # режем попытки lo0 куда-то лезть и откуда-то лезть на lo0 ${FwCMD} add deny ip from any to 127.0.0.0/8 ${FwCMD} add deny ip from 127.0.0.0/8 to any # режем частные сети на внешнем интерфейсе ${FwCMD} add deny ip from any to 10.0.0.0/8 in via ${LanOut} ${FwCMD} add deny ip from any to 172.16.0.0/12 in via ${LanOut} ${FwCMD} add deny ip from any to 192.168.0.0/16 in via ${LanOut} ${FwCMD} add deny ip from any to 0.0.0.0/8 in via ${LanOut} # режем автоконфигуреную частную сеть ${FwCMD} add deny ip from any to 169.254.0.0/16 in via ${LanOut} # режем мультикастовые рассылки ${FwCMD} add deny ip from any to 240.0.0.0/4 in via ${LanOut} # режем фрагментированные icmp ${FwCMD} add deny icmp from any to any frag # режем широковещательные icmp на внешнем интерфейсе ${FwCMD} add deny log icmp from any to 255.255.255.255 in via ${LanOut} ${FwCMD} add deny log icmp from any to 255.255.255.255 out via ${LanOut} # пропускаем траффик через трансляцию сетевых адресов (NAT) ${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut} ${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut} # Открытие RDP (Remout Desktop ) для Консултант Плюс # Разрешаем подключаться через RDP (Windows Terminals) ## ${FwCMD} add allow all from any to any 3389 #${FwCMD} add allow all from any to any dst-port 3389 #${FwCMD} add allow all from any 3389 to any ${FwCMD} add allow all from <IP> to any ${FwCMD} add allow all from any to <IP> # ${FwCMD} add allow tcp from any to any 3389 in via ${LanOut} # ${FwCMD} add allow tcp from any to any 3389 out via ${LanOut} # ${FwCMD} add allow tcp from any to any 3389 in via ${LanIn} # ${FwCMD} add allow tcp from any to any 3389 out via ${LanIn} # Разрешаем обновление времени через NTP ${FwCMD} add allow all from any to any dst-port 123 ${FwCMD} add allow all from any 123 to any # режем траффик к частным сетям через внешний интерфейс ${FwCMD} add deny ip from 10.0.0.0/8 to any out via ${LanOut} ${FwCMD} add deny ip from 172.16.0.0/12 to any out via ${LanOut} ${FwCMD} add deny ip from 192.168.0.0/16 to any out via ${LanOut} ${FwCMD} add deny ip from 0.0.0.0/8 to any out via ${LanOut} # режем автоконфигуреную частную сеть ${FwCMD} add deny ip from 169.254.0.0/16 to any out via ${LanOut} # режем мультикастовые рассылки ${FwCMD} add deny ip from 224.0.0.0/4 to any out via ${LanOut} # режем мультикастовые рассылки ${FwCMD} add deny ip from 240.0.0.0/4 to any out via ${LanOut} # разрешаем все установленные соединения ${FwCMD} add allow tcp from any to any established # разрешаем весь исходящий траффик ${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut} # разрешаем DNS снаружи ${FwCMD} add allow udp from any 53 to any via ${LanOut} # разрешаем DNS входящий снаружи ${FwCMD} add allow udp from any to any 53 via ${LanOut} # разрешаем UDP (для синхронизации времени - 123 порт) #${FwCMD} add allow udp from any to any 123 via ${LanOut} # разрешаем ftp снаружи (пасивный режим) ${FwCMD} add allow tcp from any to ${IpOut} 21 via ${LanOut} # разрешаем некоторые типы ICMP траффика - эхо-запрос, # эхо-ответ и время жизни пакета истекло ${FwCMD} add allow icmp from any to any icmptypes 0,8,11 # открываем снаружи 80 порт - если у нас есть WWW сервер на машине ${FwCMD} add allow tcp from any to ${IpOut} 80 via ${LanOut} # открываем снаружи 25 порт (SMTP) если на машине крутится почта #${FwCMD} add allow tcp from any to ${IpOut} 25 via ${LanOut} # открываем снаружи 22 порт - если надо будет ходить на машину по ssh ${FwCMD} add allow tcp from any to ${IpOut} 22 via ${LanOut} # открываем снаружи 143 порт(если надо смотреть почту снаружи по IMAP) ${FwCMD} add allow tcp from any to ${IpOut} 143 via ${LanOut} # открываем снаружи 110 порт(если надо смотреть почту снаружи по POP) ${FwCMD} add allow tcp from any to ${IpOut} 110 via ${LanOut} # разрешаем весь tcp траффик внутри локалки (на внутреннем интерфейсе) ${FwCMD} add allow tcp from any to any via ${LanIn} # разрешаем весь udp траффик внутри локалки (на внутреннем интерфейсе) ${FwCMD} add allow udp from any to any via ${LanIn} # разрешаем весь icmp траффик внутри локалки (на внутреннем интерфейсе) ${FwCMD} add allow icmp from any to any via ${LanIn} # запрещаем всё и всем. ${FwCMD} add deny ip from any to any | Всего записей: 13025 | Зарегистр. 15-03-2006 | Отправлено: 11:57 22-10-2013 | Исправлено: gryu, 12:21 22-10-2013 |
|