Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Игорь Чубин
Трафик, проходящий через шлюз, не должен быть бесконтрольным. Абсолютно естественно, когда хочется:
n Выполнять фильтрацию трафика, то есть пропускать только то, что можно, фиксировать то, что нужно, и уничтожать все остальное.
n Выполнять трансляцию адресов, для того чтобы скрыть несколько хостов одним, когда нужно дать доступ к Интернету целой сети, а есть только один IP-адрес; или перенаправить различные входящие соединения на различные компьютеры, скрытые за брандмауэром.
n Выполнять регулировку трафика, то есть ограничивать трафик одного вида, чтобы трафик другого вида чувствовал себя свободнее.
n Выполнять учет трафика, дабы знать, каков объем тех или иных данных, прошедших через шлюз за определенный промежуток времени.
ОС FreeBSD предлагает хороший инструментарий для решения названных вопросов. Центральным элементом этого инструментария является подсистема ядра IPFW, предназначенная для пакетной фильтрации и других родственных задач; и одноименная утилита ipfw, которая нужна для настройки этой подсистемы.
Здесь рассматривается, как пользоваться утилитой ipfw для настройки фильтрации/учета/регулировки трафика; конфигурировать демон natd для выполнения трансляции адресов, а также указывается, с какими опциями должно быть собрано ядро системы, для того чтобы все это работало. В завершение рассказывается, как IPFW и natd автоматически настраивать при загрузке системы.
Фильтрация пакетов
Что это такое, и для чего нужна фильтрация пакетов
Внутренняя дружественная сеть и потенциально опасный Интернет должны быть разделены. Внутренние компьютеры должны быть ограничены от пагубного внешнего воздействия, но при этом, с одной стороны, они должны обеспечивать другие компьютеры внутренней сети необходимыми сервисами; с другой стороны, должны иметь полноценный доступ к компьютерам Интернета. Эта задача обычно решается при помощи брандмауэра.
Брандмауэр представляет собой программно-аппаратный комплекс, выполняющий разграничение сетей и ограничивающий доступ из одной сети в другую. Термин брандмауэр (firewall) берет свое начало в строительной отрасли, где он означает сооружение, препятствующее распространению огня при пожаре из одной части здания в другую. Аналогичным образом в компьютерных сетях брандмауэр ограничивает распространение вредного сетевого воздействия.
Брандмауэры обычно устанавливаются в том месте, где внутренняя сеть соединяется с Интернетом. Весь трафик, входящий из Интернета или исходящий из внутренней сети, проходит через брандмауэр. При этом брандмауэр может проанализировать трафик и выяснить, является ли он допустимым с точки зрения политики безопасности.
Брандмауэры обычно строятся на базе двух элементов, которые занимаются фильтрацией и контролем трафика, но делают это по-разному:
n Фильтры пакетов выполняют анализ содержимого проходящих через него сетевых пакетов и пропускают только некоторые из них. Таким образом, нежелательные соединения отсекаются. Такой брандмауэр работает на сетевом и транспортном уровнях и абсолютно прозрачен (незаметен) для протоколов более высокого уровня. Проблема фильтрации пакетов обычно ложится на плечи ядра системы: в Linux этим занимается NetFilter, в OpenBSD – PF, а в FreeBSD – IPFW или IPF. Кстати, очень мощный функциональный фильтр пакетов PF из OpenBSD в скором времени может быть полностью портирован и в FreeBSD.
n Брандмауэр уровня приложений также известен как прокси-сервер (сервер-посредник). Запросы на ресурсы по ту сторону сети направляются ему, а он уже самостоятельно получает доступ к этому ресурсу и передает полученную информацию запросившему ее клиенту. Брандмауэр работает на уровне приложений. Это значит, что не существует прозрачных соединений более низкого уровня, проходящих через него. Ярким примером такого рода брандмауэра может служить кэширующий прокси-сервер, который обрабатывает клиентские HTTP-запросы. Клиенты не могут соединиться напрямую с веб-сервером и отправляют запрос прокси-серверу, который, в свою очередь, обращается уже к веб-серверу.
Здесь рассматривается только первый из этих элементов – пакетный фильтр, а точнее, его реализация IPFW в FreeBSD.