Мы работаем  БЕЗ ВЫХОДНЫХ и выезжаем по всему ставропольскому краю.

СКАЧАТЬ БЕСПЛАТНО ПОПУЛЯРНЫЕ ПРОГРАММЫ:
(8652) 90-40-50

ВЫ    НАХОДИТЕСЬ   НА  САЙТЕ КОМПЬЮТЕРНОЙ  ПОМОЩИ В СТАВРОПОЛЕ!
Всегда можно получить качественную консультацию у нашего специалиста по  вопросам, связанным с ремонтом компьютеров, ремонтом ноутбуков, настройкой сетей, всем видам компьютерной помощи, позвонив по нашему телефону в городе Ставрополе
90-40-50
Компьютерная помощь и ремонт компьютеров у нас – всегда лучшее решение!
Copyright   © 2009 - 2013

  
  
  
      

  


Любое цитирование и перепечатка информации разрешается и приветствуется при указании активной ссылки на сайт komp26.ru
Невозможное - возможно: недорого, недолго, нестрашно

Брандмауэры: фильтрация IP-пакетов

TCP-обертки можно использовать для того, чтобы разрешить доступ к определенным сервисам на машине определенной группе хостов, но часто желательно организовать более тонкий контроль над пакетами, поступающими в данную систему (или посылаемыми из нее). Нужно также учесть, что TCP-обертки действуют только в отношении сервисов, настроенных на работу с inetd или xinetd, тогда как некоторые сервисы (например, sshd в некоторых системах) являются «автономными» и обладают собственными функциями управления доступом.

Есть и другие сервисы, в которых не реализовано никакого контроля доступа, поэтому необходим другой уровень защиты, если мы хотим управлять соединениями с этими сервисами. В настоящее время для пользователей Интернета стало обычным делом защищать себя от сетевых атак с помощью технологии, называемой 1Р-фильтрацией. При IP-фильтрации ядро изучает каждый передаваемый или принимаемый пакет и, прежде чем пропустить его, решает, разрешить ли его прохождение, отбросить или каким-то образом модифицировать.

IP-фильтрацию часто называют брандмауэром (firewalling), поскольку путем тщательной фильтрации пакетов, приходящих в систему или покидающих ее, создается некая «стена» между машиной и остальной частью Интернета. IP-фильтрация не защитит вас от вирусов или троянских коней, как и от дефектов в программах, но она создает защиту против многих видов сетевых атак, например некоторых видов DoS-атак и фальсификации IP-адресов (таких как «спуфинг» - пометка пакетов как пришедших не от той системы, которая их в действительности отправила).

IP-фильтрация также предоставляет дополнительный уровень контроля, предотвращающий доступ нежелательных пользователей к системе. Чтобы заставить систему IP-фильтрации действовать, нужно знать, каким пакетам разрешать прохождение, а какие отвергать. Обычно решение о фильтрации пакета принимается на основании его заголовка, в котором содержатся такие данные, как IP-адреса отправителя и получателя, тип протокола (TCP, UDP и т. д.) и номера портов отправителя и получателя (указывающие конкретный сервис, для которого предназначен пакет). Различные сетевые сервисы используют различные протоколы и номера портов.

Например, большинство веб-серверов принимают запросы TCP на порт 80. Если мы хотим отфильтровать весь входящий трафик HTTP от нашей системы, нужно организовать IP-фильтр, который отклоняет все пакеты TCP, адресованные порту 80. Для решения некоторых задач фильтрации недостаточно изучить только заголовок пакета, а требуется проанализировать фактические данные, которые несет пакет. Эту технологию иногда называют проверкой пакетов с учетом состояния протокола (statef ul inspection), поскольку пакет рассматривается не изолированно, а в контексте текущего сетевого соединения.

Пусть, например, нужно разрешить пользователям нашей локальной сети работать с FTP-серверами, находящимися за ее пределами. FTP - сложный протокол, который использует одно соединение TCP для отправки серверу команд, а другое - для передачи фактических данных. К сожалению, в спецификации FTP не определен конкретный номер порта для передачи данных, поэтому клиент и сервер должны договориться о номерах портов с помощью ряда команд. Если не пользоваться технологией statef ul inspection, то для осуществления передачи данных по FTP потребуется разрешить подключения TCP к произвольным портам. Statef ul inspection решает эту проблему путем анализа переговоров между клиентом и сервером относительно номеров портов и разрешения прохождения пакетов TCP через выбранный ими порт. IP-фильтры реализованы в ядре Linux, в котором есть программный код, проверяющий каждый принимаемый и передаваемый пакет и применяющий правила фильтрации, которые решают судьбу этого пакета.

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

Второе поколение IP-фильтров, под названием IP-цепочек (IP chains), было значительно эффективнее ipfw и до сих пор широко используется. Последнее поколение фильтров называется netfilter/iptables. net-filter - это компонент ядра, a iptables - утилита настройки, выполняемая в пространстве пользователя. Оба названия часто используют взаимозаменяемым образом, net filter не только обладает большей гибкостью в настройке, но и допускает расширение. В следующих разделах мы опишем netfilter и приведем примеры некоторых простых конфигураций.