лекция№14 (1088448), страница 2
Текст из файла (страница 2)
- Настраиваемые отчеты и учет использования URL-адресов позволяют просматривать, насколько активно пользователи проводят свои транзакции через PIX. Система фильтрации URL-адресов позволяет контролировать, какие Web-сайты наиболее часто посещают пользователи и ведет учетный журнал транзакций.
Фильтрация Java-апплетов по каждому клиенту и IP-адресу позволяет останавливать выполнение потенциально опасных Java-приложений.
- Утилита Mail Guard предотвращает задержки внешней почты на периметре сети и противодействует атакам типа "отказ в обслуживании".
- Firewall Manager - утилита управления, с помощью которой сетевой администратор может легко конфигурировать брандмауэр PIX и управлять им. По отдельным вкладкам открывается доступ к конфигурационным данным, общим для всех управляемых брандмауэров PIX, а также к встроенным отчетам, где по каждому пользователю регистрируются посещенные Web-сайты и объем переданных файлов. ение PIX Firewall Manager автоматически в режиме реального времени отправляет администратору по электронной почте или на пейджер предупреждающие сообщения о попытках проникновения через межсетевой экран. Firewall Manager помогает анализировать работу Cisco PIX и вести учет его активности: дату и время подключения, общего времени соединения, общего объема переданных и принятых байтов, пропускной способности, типа использованных приложений и других важных данных.
LINUX-брандмауэр IPTABLES
Брандмауэр IPTABLES объединяет в себе:
-таблицы;
-правила и критерии;
-механизм определения состояния (трассировки соединений);
-действия и переходы.
Таблица Mangle - предназначена для управлениея внесения изменений в заголовки пакетов. Эта таблица допускает выполнять действия: TOS, TTL, MARK.
Действие TOS выполняет установку битов поля Type of Service в пакете. Это поле используется для назначения сетевой политики обслуживания пакета, т.е. задает желаемый вариант маршрутизации. Однако, не следует изменять состояние этого поля для пакетов, уходящих в Интернет, потому что на роутерах, которые обслуживают это поле, может быть принято неправильное решение при выборе маршрута.
Действие TTL используется для установки значения поля TTL (Time To Live) пакета - можно присваивать определенное значение этому полю, чтобы скрыть брандмауэр от провайдеров (Internet Service Providers).
Действие MARK устанавливает специальную метку на пакет, которая затем может быть проверена другими правилами в iptables или другими программами, например iproute2. С помощью "меток" можно управлять маршрутизацией пакетов, ограничивать траффик и т.п.
Таблица Nat - используется для управления преобразованием сетевых адресов NAT (Network Address Translation). Для этой таблицы характерны действия: DNAT, SNAT, MASQUERADE
Действие DNAT (Destination Network Address Translation) производит преобразование адресов назначения в заголовках пакетов. Другими словами, этим действием производится перенаправление пакетов на другие адреса, отличные от указанных в заголовках пакетов.
SNAT (Source Network Address Translation) используется для изменения исходных адресов пакетов. С помощью этого действия можно скрыть структуру локальной сети, а заодно и разделить единственный внешний IP адрес между компьютерами локальной сети для выхода в Интернет. В этом случае брандмауэр, с помощью SNAT, автоматически производит прямое и обратное преобразование адресов, тем самым давая возможность выполнять подключение к серверам в Интернете с компьютеров в локальной сети.
Маскировка (MASQUERADE) применяется в тех же целях, что и SNAT, но в отличие от последней, MASQUERADE каждый раз, когда требуется выполнение этого действия - производится запрос IP адреса для указанного в действии сетевого интерфейса, в то время как для SNAT IP адрес указывается непосредственно. Однако, благодаря такому отличию, MASQUERADE может работать в случаях с динамическим IP адресом.
Таблица Filter - содержит наборы правил для выполнения фильтрации пакетов. Пакеты могут пропускаться далее, либо отвергаться (действия ACCEPT и DROP соответственно), в зависимости от их содержимого.
Механизм определения состояния (state machine) является отдельной частью iptables и фактически является механизмом трассировки соединений. Трассировщик соединений создан для того, чтобы netfilter мог постоянно иметь информацию о состоянии каждого конкретного соединения. Наличие трассировщика позволяет создавать более надежные наборы правил по сравнению с брандмауэрами, которые не имеют поддержки такого механизма.
В пределах iptables, соединение может иметь одно из 4-х базовых состояний: NEW, ESTABLISHED, RELATED и INVALID. Для управления прохождением пакетов, основываясь на их состоянии, используется критерий --state.
Трассировка соединений производится в цепочке PREROUTING либо в цепочке OUTPUT. Когда локальный процесс на брандмауэре отправляет первый пакет из потока, то в цепочке OUTPUT ему присваивается состояние NEW, а когда возвращается пакет ответа, то состояние соединения в цепочке PREROUTING изменяется на ESTABLISHED. Если же соединение устанавливается извне, то состояние NEW присваивается первому пакету из потока в цепочке PREROUTING. Таким образом, определение состояния пакетов производится в пределах цепочек PREROUTING и OUTPUT таблицы nat. В табл. 15 рассматриваются каждое из возможных состояний.
Таблица15
Описание состояний соединений Iptables
Состояние | Описание |
NEW | Признак NEW сообщает о том, что пакет является первым для данного соединения. Это означает, что это первый пакет в данном соединении, который увидел модуль трассировщика. Например, если получен SYN пакет являющийся первым пакетом для данного соединения, то он получит статус NEW. Однако, пакет может и не быть SYN пакетом и тем не менее получить статус NEW. Это может породить определенные проблемы в отдельных случаях, но может оказаться и весьма полезным, например, когда желательно "подхватить" соединения, "потерянные" другими брандмауэрами или в случаях, когда таймаут соединения уже истек, но само соединение не было закрыто. |
ESTABLISHED | Признак ESTABLISHED говорит о том, что это не первый пакет в соединении. Для перехода в состояние ESTABLISHED необходимо чтобы узел сети передал пакет и получил на него ответ от другого узла (хоста). После получения ответа признак соединения NEW будет заменен на ESTABLISHED. |
RELATED | Соединение получает статус RELATED, если оно связано с другим соединением, имеющим признак ESTABLISHED. Это означает, что соединение получает признак RELATED тогда, когда оно инициировано из уже установленного соединения, имеющего признак ESTABLISHED. |
INVALID | Признак INVALID говорит о том, что пакет не может быть идентифицирован и поэтому не может иметь определенного статуса. Это может происходить по разным причинам, например при нехватке памяти или при получении ICMP-сообщения об ошибке, которое не соответствует какому-либо известному соединению. Наверное, наилучшим вариантом было бы применение действия DROP к таким пакетам. |
Механизм определения состояния позволяет строить чрезвычайно мощную и эффективную защиту. Раньше приходилось открывать все порты выше 1024, чтобы пропустить обратный трафик в локальную сеть, теперь же, при наличии механизма определения состояния, необходимость в этом отпала, поскольку появилась возможность "открывать" доступ только для обратного (ответного) трафика, пресекая попытки установления соединений извне.
TCP соединение всегда устанавливается передачей трех пакетов, которые инициализируют и устанавливают соединение, через которое в дальнейшем будут передаваться данные. Сессия начинается с передачи SYN-пакета, в ответ на который передается SYN/ACK-пакет и подтверждает установление соединения ACK-пакет. После этого соединение считается установленным и готовым к передаче данных. Как только трассировщик "увидел" первый SYN-пакет, он присваивает ему статус NEW, а после прохождения второго пакета (SYN/ACK) соединению присваивается статус ESTABLISHED (рис. 52).
Рис. 52. Схема установки соединения
Процесс отработки закрытия соединения отражен на рис. 53.
Правила определяют действия и переходы – команды, которые необходимо выполнить, если пакет соотвествует заданному критерию.
Описание переходов и действий в правилах выглядит как указание название цепочки правил, на которую выполняется переход.
Рис. 53. Процесс отработки закрытия соединения
Так, встретив пакет протокола tcp, iptables произведет переход на цепочку tcp_packets и продолжит движение пакета по этой цепочке. Если пакет достиг конца цепочки то он будет возвращен в вызывающую цепочку (цепочка INPUT) и движение пакета продолжится с правила, следующего за правилом, вызвавшем переход. Если к пакету во вложенной цепочке будет применено действие ACCEPT, то автоматически пакет будет считаться принятым и в вызывающей цепочке и уже не будет продолжать движение по вызывающим цепочкам. Однако пакет пойдет по другим цепочкам в других таблицах. Дополнительную информацию о порядке прохождения цепочек и таблиц вы сможете получить в главе Порядок прохождения таблиц и цепочек.
Основные действия:
- DNAT (Destination Network Address Translation) используется для преобразования адреса места назначения в IP заголовке пакета. Если пакет подпадает под критерий правила, выполняющего DNAT, то этот пакет, и все последующие пакеты из этого же потока, будут подвергнуты преобразованию адреса назначения и переданы на требуемое устройство, хост или сеть. Данное действие может, к примеру, успешно использоваться для предоставления доступа к вашему web-серверу, находящемуся в локальной сети, и не имеющему реального IP адреса.
- DROP - "сбрасывает" пакет и iptables "забывает" о его существовании. "Сброшенные" пакеты прекращают свое движение полностью, т.е. они не передаются в другие таблицы, как это происходит в случае с действием ACCEPT.
- LOG -- действие, которое служит для журналирования отдельных пакетов и событий. В журнал могут заноситься заголовки IP пакетов и другая интересующая вас информация.
- MARK - используется для установки меток для определенных пакетов. Это действие может выполняться только в пределах таблицы mangle. Установка меток обычно используется для нужд маршрутизации пакетов по различным маршрутам, для ограничения трафика и т.п.
- MASQUERADE в основе своей представляет то же самое, что и SNAT только не имеет ключа --to-source. Причиной тому то, что маскарадинг может работать, например, с dialup подключением или DHCP, т.е. в тех случаях, когда IP адрес присваивается устройству динамически.
- REDIRECT - выполняет перенаправление пакетов и потоков на другой порт той же самой машины. К примеру, можно пакеты, поступающие на HTTP порт перенаправить на порт HTTP proxy. Действие REDIRECT очень удобно для выполнения "прозрачного" проксирования (transparent proxying), когда машины в локальной сети даже не подозревают о существовании прокси.
- RETURN - прекращает движение пакета по текущей цепочке правил и производит возврат в вызывающую цепочку, если текущая цепочка была вложенной, или, если текущая цепочка лежит на самом верхнем уровне (например INPUT), то к пакету будет применена политика по-умолчанию. Обычно, в качестве политики по-умолчанию назначают действия ACCEPT или DROP.
- SNAT используется для преобразования сетевых адресов (Source Network Address Translation), т.е. изменение исходящего IP адреса в IP заголовке пакета. Например, это действие можно использовать для предоставления выхода в Интернет другим компьютерам из локальной сети, имея лишь один уникальный IP адрес.
2-й учебный вопрос Средства организации виртуальных частных сетей - ? мин
Средства организации виртуальных сетей (Virtual Private Network (VPN)) позволяют объединить несколько локальных сетей, подключенных к INTERNET в одну виртуальную сеть. VPN позволяют организовать прозрачное для пользователей соединение локальных сетей, сохраняя секретность и целостность передаваемой информации с помощью шифрования.
Виртуальные частные сети можно разделить на 3 основные группы:
Access VPN - позволяет мобильным пользователям получать доступ к корпоративной сети своей организации через модем или канал ISDN.
Intranet VPN - позволяет заказчику устанавливать связь между своими офисами, используя IP сеть оператора или сеть Internet. Эта технология использует методы IP-туннелирования такие как GRE, L2TP (Layer 2 Tunneling Protocol) или IPSec (IP Security). Эти туннели устанавливаются между офисными маршрутизаторами для создания между офисами виртуальных соединений. Для повышения безопасности, данные в виртуальном канале могут шифроваться.
Extranet VPN - позволяет разным компаниям связываться между собой и расширяет возможности компаний в электронной коммерции.
Технология VPN предусматривает комплексную защиту передаваемых данных: при создании VPN-канала проверяется аутентичность двух сторон, создающих канал, а затем каждый пакет переносит цифровую подпись отправителя, удостоверяющую аутентичность и целостность пакета. Для защиты от несанкционированного доступа пакеты могут шифроваться, причем для сокрытия адресной информации, раскрывающей внутреннюю структуру сети, пакеты могут шифроваться вместе с заголовком и инкапсулироваться во внешний пакет, несущий только адрес внешнего интерфейса VPN-шлюза.
В настоящее время основой для организации защищенных VPN-каналов стал комплекс стандартов Internet IPSec. Стандартам IPSec свойственна гибкость: в них оговорены обязательные для аутентификации и шифрования протоколы и алгоритмы, что обеспечивает базовую совместимость IPSec-продуктов, и в то же время разработчику продукта не запрещается дополнять этот список другими протоколами и алгоритмами, что делает возможным постоянное развитие системы безопасности. Для аутентификации сторон и генерации сессионных ключей в IPSec предусмотрена возможность использования цифровых сертификатов.