Контакты
Подписка
МЕНЮ
Контакты
Подписка

Защита сетей в Linux

Защита сетей в Linux

В рубрику "Оборудование и технологии" | К списку рубрик  |  К списку авторов  |  К списку публикаций

Защита сетей в Linux

Рассмотрим возможности настройки безопасности сети, предполагая, что сервер, на котором установлена ОС Linux, является шлюзом с выходом в Интернет, то есть весь входящий и исходящий трафик проходит непосредственно через наш сервер.
Евгений Тычинин
директор компании "Рекурс"

Unix-подобные операционные системы с момента их появления были направлены не на домашнее использование на рабочих станциях, как системы Windows, а на решение задач, связанных с сетями, серверами и безопасностью.

Основным преимуществом межсетевого экрана iptables является бесплатность данного продукта. При этом системный администратор либо администратор безопасности получают необходимую функциональность для решения большинства поставленных задач.

Каждому пользователю операционных систем Linux скорее всего известно, что дистрибутивы данных систем поставляются уже со встроенным межсетевым экраном iptables. Причем, несмотря на простоту приложения, его функциональности достаточно для решения задач построения NAT, шлюза (например, выход в Интернет для корпоративной сети) и решения задач безопасности (открытие только необходимых портов, контроль трафика, блокировка определенных IP или диапазонов).

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

Предположим, что внутренняя сеть является обычной корпоративной сетью, то есть имеется почтовый сервер (а значит, и соответствующий трафик должен проходить минимум по двум портам – SMTP и POP3), http, https, ftp, dns. Следует заметить, что многие протоколы работают по зарезервированным портам. Подробный список портов и протоколов можно посмотреть здесь: http://en.wikipedia.org/wiki/List_of_T CP_and_UDP_port_numbers.

Принцип работы межсетевого экрана

Когда пакет приходит на сетевое устройство, то он перехватывается соответствующим драйвером и потом передается в ядро операционной системы. Затем пакет проходит ряд таблиц межсетевого экрана и либо передается приложению, либо перенаправляется на другой компьютер.

Логирование данных в журнале межсетевого экрана необходимо для определения атак, поиска проблем в правилах, а также для определения необычной активности в вашей сети. Чтобы активировать записи в log-файлы, вам необходимо включить соответствующие правила в конфигурацию вашего межсетевого экрана. Более того, эти правила должны быть заданы ранее всех применяемых завершающих правил (это правила с целью, которая определяет дальнейшую судьбу пакета, такие как ACCEPT, DROP или REJECT).

На примере iptables выделяются три вида таблиц:

  • Mangle – обычно эта цепочка используется для внесения изменений в заголовок пакета, например для изменения битов TOS и пр.;
  • Nat – эта цепочка используется для трансляции сетевых адресов (Destination Network Address Translation). Source Network Address Translation выполняется позднее, в другой цепочке. Любого рода фильтрация в этой цепочке может производиться только в исключительных случаях;
  • Filter – здесь производится фильтрация трафика. Помните, что все входящие пакеты, адресованные вам, проходят через эту цепочку независимо от того, с какого интерфейса они поступили.

Для фильтрации трафика используется третья таблица, имеющая встроенные цепочки:

  • INPUT – для входящих пакетов;
  • FORWARD – для проходящих пакетов через данную машину к другой;
  • OUTPUT – для исходящих пакетов.

Пакет, проходящий через эти цепочки, может быть пропущен (ACCEPT) или отброшен (DROP).

Настройка iptables осуществляется либо через терминал, либо прописыванием правил фильтрации пакетов в соответствующем файле настроек межсетевого экрана.

Что нам еще может помочь?

Есть большое количество программ, которые помогут вам полностью настроить брандмауэр без необходимости подробного изучения iptables. У тех, кто предпочитает графические оболочки, довольно популярно простое в использовании приложение Firestarter, а также fwbuilder – очень мощный инструмент настройки, который покажется знакомым администраторам, пользовавшимся коммерческими брандмауэрами. Для предпочитающих работу в командной строке и простые текстовые файлы настроек Shorewall – подходящее и мощное решение, которое поможет настроить межсетевой экран любой сложности для любой сети. Если же ваша сеть достаточно простая или у вас вообще нет локальной сети, утилита ipkungfu предоставит вам работающий "из коробки" (без необходимости настройки) брандмауэр, а также даст возможность легко настроить более сложный межсетевой экран с помощью редактирования простых и хорошо документированных файлов настроек. Еще одна интересная программа – fireflier, которая разработана как межсетевой экран для настольного ПК. Она состоит из сервера (fireflier-server) и графического клиента на ваш выбор (GTK или QT). Во время работы она ведет себя похоже на многие интерактивные брандмауэры для Windows.

Опубликовано: Журнал "Information Security/ Информационная безопасность" #6, 2011

Приобрести этот номер или подписаться

Статьи про теме