Еженедельник Свет в Интернет

Главная

Новости

Статьи и обзоры
  Горожанин
  Обнинск в Internet
  Web Design
  Hardware
  Software
  Безопасность
  Серфинг
  Игродром
  Relax
  Технологии
  Web-обзор
  Интернет-ликбез
  Опросник
  УП-Технологии
  ART.net

Ссылки

Архив

О нас

Контакты

Форумы


Основатель:
К.Николаенко

Главный Редактор:
С.Коротков

Web Design:
Neutron


Наш спонсор






Порт POPULAR.RU
POPULAR.RU RegionalBanner Network.






Океан


НПП Метра - промышленные электронные автомобильные вагонные весы
Goldy Interior - салон офисной мебели: кабинеты руководителей, мебель для персонала

= Безопасность =

"FIREWALL": СТЕНА ОГНЯ, КОТОРАЯ ЗАЩИЩАЕТ

Константин Николаенко aka Steel Human lightnet@obninsk.ru

 

окончание: начало в #73, #74, #76, #77

В прошлой статье я остановился на структуре правил фильтрации. Как выяснилось, каждое правило действует определенным образом на указанный тип пакетов в зависимости от информации, характеризующей данный (поступивший на фильтрацию) пакет. Переходим непосредственно к предметной области: изучению этих самых правил...

В этой статье будет приведен краткий обзор использующихся в IPF правил фильтрации. Для более подробного изучения рекомендую почитать маны, ФАКи, списки рассылок и соответствующие форумы...

Основные правила

block in all

pass in all

Первое правило блокирует (block) все (all) входящие (in) пакеты. Прежде чем будет принято окончательное решение о пришедшем пакете, IPF перейдет к рассмотрению следующего правила, которое разрешает (pass) прохождение пакета. Таким образом, IPF просматривает ВЕСЬ набор правил (далее вы увидите, что этого можно избежать при помощи опции quick) и входящие пакеты будут проходить несмотря на то, что в первой строке находится block. Учтите, что управляющие слова не коммутативны, т.е. нельзя использовать правила типа all block in – всё должно находиться четко в определенной последовательности.

Фильтрация IP-адресов

Допустим, мы хотим заблокировать только пакеты, поступившие от какого-то (from) определенного IP-адреса (например, 195.112.97.8/16, где /16 – это маска подсети) на любой адрес (to any), то необходимо изменить правила так:

block in from 195.112.97.8/16 to any

pass in all

Однако, в данном случае пакеты все-таки заблокированы не будут, т.к. после просмотра строки block IPF снова перейдет к правилу pass, что пропустит пакет. Чтобы заблокировать входящий пакет, изменяем правила следующим образом:

block in quick from 195.112.97.8/16 to any

pass in all

Опция quick указывает фильтру, что после совпадения правила IPF прекращает дальнейший просмотр. Если же пакеты пришли с других IP-адресов, то они будут пропущены.

Контроль интерфейсов

Firewall может защищать сегменты сети с различными интерфейсами (например, xl0 – 3com ethernet, lo0 – loopback и проч.). Имя интерфейса указывается после опции on. При этом могут фильтроваться как входящие (in), так и выходящие пакеты (out). К примеру, если мы хотим заблокировать пакеты на интерфейсе ed3, идущие из (in) локальной сети LAN на адрес 192.110.5.1, но пропускать все пакеты в локальную сеть (кроме 192.110.5.1), то правила будут такими:

block in quick on ed3 from any to 192.110.5.1

pass in quick on ed3 all

block out quick on ed3 from 192.110.5.1 to any

pass out quick on ed3 all

Протоколы и порты

Правила можно применить и к определенным протоколам (proto), а также характерным портам (port). Например, заблокировать WWW-доступ (80 порт) по протоколу tcp к серверу с адресом 194.110.118.5 можно так:

block in quick on ed3 proto tcp from any to 194.110.118.5 port = 80

Далее в заключительной статье я собираюсь завершить обзор правил и затем привести пример настройки и администрирования простенького firewall'a для веб-сервера. В общем, не расслабляйтесь:)

Ссылки по теме:

http://www.obfuscation.org/ipf/ipf-howto.txt – путевый FAQ в виде учебника (ENG)

http://www.cert.org/security-improvement – рекомендации CERT. Есть раздел о firewall (ENG)

 

Copyright © Свет в Internet   Designed by Свет в Internet