Файрвол

Материал из Bryansk Linux Users Group.

Перейти к: навигация, поиск

Содержание

Зачем нужен файрвол

Межсетевой экран или брандмауэр (жарг. файрвол или файервол) — комплекс аппаратных и/или программных средств, осуществляющий контроль и фильтрацию проходящих через него сетевых пакетов на различных уровнях модели OSI в соответствии с заданными правилами. Основной задачей сетевого экрана является защита компьютерных сетей или отдельных узлов от несанкционированного доступа. Также, сетевые экраны часто называют фильтрами, т.к. их основная задача — не пропускать (фильтровать) пакеты не подходящие под критерии, определенные в конфигурации.

Некоторые сетевые экраны (в их число входит и линуксовый iptables), также позволяют делать трансляцию адресов — динамическую замену адресов назначения (редиректы) или источника (мапинг (biNAT), NAT).

Политики по умолчанию

Существует два типа политики разрешения/запрещения:

  • разрешать все, что не запрещено,
  • запрещать все что не разрешено.

Второй тип более предпочтителен.

Способы управления правилами файрвола

Существует довольно большое количество программ и скриптов для генерации iptables-правил. Но наибольшую гибкость предоставляют самодельные init-скрипты, но они и нуждаются в повышенном внимании и понимании производимых действий.

Типовой файрвол

Рассмотрим банальный фарвол. В его функции входит фильтрация доступа извне к портам хоста, защита от пинг-флуда. Управлять файрволом будем через самодельный init-скрипт, который установит нужные правила при загрузке системы

В нашем случае разрешенными портами для доступа извне (например из сети Интернет) являются 22 tcp порт (SSH), 80 tcp порт (HTTP-сервер). Также добавим правило для разрешения доступа к PostgreSQL-серверу из локальной сети (192.168.0.0/24)

Создадим файл firewall.sh в директории /etc/init.d со следующим содержимым:

sh: highlight: not found

You need to specify a language like this: <source lang="html">...</source>

Supported languages for syntax highlighting:

(error loading support language list)

Делаем файл исполняемым:

# chmod +x firewall.sh

После этого выполняем комманду:

# update-rc.d firewall.sh defaults

Которая пропишет скрипт в стартовых скриптах

Запускаем файрвол:

# invoke-rc.d firewall.sh -v start

Смотрим вывод отладочной информации, если все в порядке - пользуемся :)

Посмотреть состояние правил файрвола можно коммандой

# iptables -L

Ссылки

Iptables Tutorial на русском языке

Iptables Tutorial на русском языке

Более новая версия Iptables Tutorial на английском языке

Настраивая у себя iptables наткнулся на это, простое и понятное, руководство

13:46, 11 июля 2007 (MSD)

Личные инструменты