Организация безопасности сети предприятия с использованием операционной системы Linux


Вступление

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

Атаки можно разделить на несколько категорий:

Физические атаки - могут состояться в любой момент часа, когда кто-то получает физический доступ к машине. Физическая атака может заключаться, например, в том, что кто-то, сидя за файловым сервером, перезагружает машину, копирует ваших начальных кодов.

Атаки на службы - бывают разные от закидывания сетевых портов запросами на подключение к засорению почтовому серверу бесполезными сообщениями. В обоих случаях конечный результат заключается в потому, что законные обращения к службам не обрабатываются через те, что атака вызывает проблемы возле самой службы или «Зависает» весь сервер. Организаторов таких атак очень сложно выследить, поскольку для атаки системы используют, как правило, поддельны IP-адреса или украдены учетные записи.

Атака на права доступа - когда кто-нибудь пытается получить права доступа или добраться до специальных учетных записей пользователей в системе, которыми ему не разрешено пользоваться. Это может быть рассержено пользователь, который пытается получить права доступа пользователя root (Администратор), чтобы притворить неприятности, или же кто-то из внешней сети, которая делает попытки получить доступ к файлам. Количество атак можно уменьшить, но Администратор, который заботится о защите, виновной предотвращать появление очевидных дыр в защите.


Техническое задание

Есть газетная редакция «Интранатер Старра», который будет заниматься разработкой публикаций новостей, как в журналах и газетах, так и в Интернете с помощью своего веб сайта. На предприятии работатет около 70 человек. Из них двое будут следить за работоспособностью сети и компьютеров предприятия.

Цель проекта:

Создать проект компьютерной сети предприятия.

Обеспечить безопасность данным предприятия. В случае потери данных, сделать возможным их воссоздание.

Обеспечить организацию возможностью использования сети Интернет.

Рассчитать стоимость реализации проекта.

Выходные даны к проекту

Редакция расположатся в трех поверхностному дому. Дом после капитального ремонта, так же в доме была продумана проводка кабелей, зачет двойного пола. План дома приведен в дополнении “A}rdblquote

В доме не установлены компьютеры.

В каждый кабинет проведен сетевой кабель тип: «крученная пара».

Так же в дом будут размещаться помещения, в которых не будет установлено никакого вычислительного оборудования (например столовая).

Задание проекту

Спроектировать локальную сеть. Подобрать топологию и технологию компьютерной сети.

Выбрать оборудование, поддерживающее эту технологию. Распланировать сетевую адресацию.

Организовать доступ к сети Интернет.

Определить устанавливаемое программного обеспечения на рабочие станции и сервера

Сконфигурировать сервер безопасности под управлением ОС Linux. Продумать настройку безопасности для рабочих станций.

Протестировать созданную конфигурацию

Выполнить расчет стоимости реализации проекта

Общие требования к проекту.

В процессе проектирования сети здания необходимо выполнить следующие востребования:

Выдержать пропускную способность от компьютеров от 5 Мбіт/сек до 25 Мбит/сек. к серверам.

Продумать безопасность сети предприятия.

Продумать установку серверов.

Обеспечить доступ к сети Интернета.

Распределить Интернет между работниками, по уровню потребности.

Предусмотреть рост локальной сети.

Разместить в помещениях здания:

- на первом этаже 3 кабинета: гостиная, кабинет охраны, и кабинет секретарей.

- на 2 этаже кабинеты: текстовых редакторов, графических редакторов, информационного отдела, бухгалтерия.

- на третьем этаже 5 кабинетов: директора, главного бухгалтера, главного редактора, помещения для коммутационного оборудования, библиотека.


Анализ существующих решении

 

Обзор устройств защиты

Существуют несколько специализированных устройств защиты. Это могут быть специализированы карты, например, Firewall PCI и 3Com Firewall PC Card, которые инсталлируются в стандартные шины PCI или PC Card и используются вместо привычных сетевых адаптеров Fast Ethernet. Выполнение операций по обеспечению безопасности передается процессору платы брандмауэра, позволяя увеличить производительность системы. Платы-брандмауэры могут функционировать независимо от операционной системы, установленной на клиентском компьютере, и практически неуязвимые для атак из Интернета, действий конечного пользователя или злоумышленных программ.

Межсетевой экран "Цитадель МЕ", версия 2.0

Межсетевой экран "Цитадель МЕ", версия 2.0, является аппаратно-программным комплексом, основанным на платформе Intel Pentium II/III и управляемый специально разработанной операционной системой. В типичной конфигурации экран "Цитадель МЕ" имеет 4 интерфейса 10/100BaseTX Ethernet. Возможна поддержка до 16 интерфейсов Ethernet в одном устройстве. Опциональной возможностью является установка интерфейсного модуля WAN (V.35 или X.21), поддерживающего SLIP, PPP, HDLC и Frame Relay. На передней панели комплекса расположен LCD дисплей и диагностические индикаторы. С их помощью можно получить информацию о диагностике, версиях программного и аппаратного обеспечения, IP адреса, статус, конфигурацию, загрузка интерфейсов и т.д. Это облегчает диагностику возможных проблем, а также позволяет не техническому персоналу обеспечить администратора информацией в случае возникновения проблем. Комплекс "Цитадель МЕ" обеспечивает безопасное, надежное и экономическая взаимодействие сетей Internet и Intranet благодаря могучему и гибкому механизму IP-маршрутизации со встроенными функциями пакетной фильтрации, механизмом адресной трансляции (NAT) и прикладными шлюзами. Использование платформы Intel Pentium и модульной архитектуры на базе шины PCI защищает ваши инвестиции, обеспечивая переход к новым технологиям путем замены интерфейсных модулей и версии управляючої операционной системы.

Комплекс межсетевого экранирования «фпсу-ip»

Программно-аппаратный комплекс ФПСУ-IP есть одновременно и организатором VPNs (виртуальных частных сетей) для информационных систем использующих стек протоколов TCP/IP. Имеет высокие характеристики производительности (в том числе за счет эффективной реализации проходного сжатия данных), которые выдвинули данный комплекс в разряд самих передовых решений как по отношению к отечественным, так и импортным продуктам в области VPNs-организаторов.

Если для других средств организации VPNs, выполненных на основе типичных алгоритмов (например, протокол SKIP) характерное достаточно существенное снижение скорости IP-взаимодействий за счет введения избыточности в каждый передач пакет, то при употреблении комплекса «ФПСУ-IP» обеспечивается минимальная избыточность передаваемой информации, которая обеспечивает даже прирост скорости передачи IP-потоков.

Cisco Pix Firewall

Продукты серии Cisco PIX

Аппаратным решением проблемы обеспечения сетевой безопасности являются продукты серии Cisco PIX (Private Internet eXchange). Программное обеспечение Cisco PIX является собственной разработкой компании Cisco Systems и не основано на каких-либо клонах Unix, что позволило обойтись минимальными востребованиями к дисковой (в Cisco PIX вместо дисковых накопителей используется флэш-пам'ять) и оперативной памяти, а употребление уникального алгоритма ASA (Adaptive Security Algorithm) обеспечило производительность свыше 64000 одновременные сессии, какая недосягаемая на сегодняшний момент ни одним из брандмауэров на базе Unix или Windows NT.

Возможности:

защита на основе технологии контроля заключается защита сетевых соединений, позволяет ограничить неавторизованных пользователей от доступа к сетевым ресурсам

технология перехвата соединений на прикладном уровне позволяет обеспечить аутентификацию пользователей с использованием стандартных протоколов TACACS+ и RADIUS

поддерживает больше 16,000 одновременных соединений

удобный и простой менеджер межсетевых экранов обеспечивает легкое администрирование нескольких межсетевых экранов PIX

поддержка протокола Point-to-Point Tunneling Protocol (PPTP) компании микрософтвер для реализации виртуальных корпоративных сетей (VPN)

поддержка протокола Oracle SQL*Net для защиты дополнений клиент/сервер

командный интерфейс, свойственный CISCO IOS системе

высокая надежность благодаря возможности дублирования и горячего резерва

трансляция сетевых адреса (NAT) согласно RFC 1631

трансляция портов (PAT) позволяет расширить пул адреса компании - через одну IP адресу можно отображать 64000 адреса (16,384 одновременно)

псевдонимы сетевых адреса позволяют отобразить IP адреса, которые перекрываются, в одно адресное пространство

для зарегистрированных IP адреса можно отменить режим трансляции адреса, что позволяет пользователям использовать их настоящие адреса

прозрачная поддержка всех распространенных TCP/IP сервисов - WWW, FTP, Telnet и вторые

поддержка мультимедийных типов данных с использованием трансляции адреса и без нее, включая Progressive Networks' RealAudio, Xing Technologies' Streamworks, White Pines' CuSeeMe, Vocal Tec's Internet Phone, VDOnet's VDOLive, Microsoft's NetShow, VXtreme's Web Theater 2

поддержка дополнений для работы с видеоконференциями, совместимыми из H.323 спецификацией, включая Internet Video Phone (Intel) и NetMeeting

возможность фильтрации потенциально опасных Java апплетов

защищена система реального часа

поддержка нескольких уровней входа в систему

поддержка прерываний (trap) SNMP протокола

сбор аудита через syslog утилиту

поддержка Management Information Base (MIB) для syslog

аудит использования URL и обменов по FTP протоколе

поддержка удаленного вызова процедур (RPC)

программа контроля почтового траффика позволяет отказаться от размещения внешнего почтового серверу в демилитаризованной зоне (DMZ)

защита от SYN атак защищает хост от атак типа «отказ в обслуживании»

трансляция NETBIOS протокола обеспечивает поддержку взаимодействия клиентов и серверов

Криптомаршрутизатор

Криптомаршрутизатор (КМ.), является комплексом программно технических средств, который обеспечивает защищенную передачу IP-потоков данных в internet/intranet-мережах и предназначенный для защиты данных Пользователя, которые содержат закрытую информацию.

КМ. является узлом криптографической обработки данных в IP-сетях и обеспечивает прием данных, которые отправляются Пользователями, которые работают на одной из рабочих станций (РС) ЛВС, шифровки этих данных и их защищенную передачу через открытую IP-сеть на аналогичный КМ., который выполняет расшифрование принятых данных и их доставку Пользователю-получателю, который работает на РС ЛВС.

Передача данных осуществляется криптомаршрутизатором по выделенным или коммутированным телефонным каналам связи согласно протоколам PPP, SLIP или CSLIP, а также по каналам ЛВС (по протоколе TCP/IP) и каналах сетей пакетной коммутации данных в соответствии с Рекомендациями X.25 ITU-T.

Криптомаршрутизатор обеспечивает шифровку потоков проходячих через него данных в соответствии с протоколом IPSec v.4, что позволяет скрыть на участке открытой IP-сети информацию о настоящих субъектах обмена и прикладных протоколах Пользователя, которые используются ими.

Linux Firewall

IP Firewall (ядра 2.0)

Первое поколение IP firewall для Linux появилось в ядре 1.1. Это была версия BSD ipfw firewall для Linux (автор Alan Сох). Поддержка firewall другого поколения появилась в ядрах 2.0 (авторы Jos Vos, Pauline Middelink и другие) и с этого момента стало возможным реально работать из firewall в Linux.

IP Firewall Chains (ядра 2.2)

Большинство аспектов Linux развиваются, чтобы удовлетворить запить пользователей, которые увеличиваются. IP не firewall исключения. Традиционная версия IP firewall прекрасна для большинства прикладных программ, но может быть неэффективный, чтобы конфигурировать сложные среды. Чтобы решить эту проблему, был разработан новый метод конфигурации IP firewall и связанных свойств. Этот новый метод был назван "IP Firewall Chains" и был впервые выпущен для общего использования в ядре Linux 2.2. 0.

IP Firewall Chains разработан Paul Russell и Michael Neuling. Paul описав IP Firewall Chains в IPCHAINS-HOWTO.

IP Firewall Chains позволяет Вам разрабатывать классы правил firewall, к которым Вы можете потом добавлять и удалять компьютеры или сети. Такой подход может улучшать эффективность firewall в конфигурациях, у которых есть большое количество правил.

IP Firewall Chains поддерживается серией ядер 2.2 и доступный как патч для серии 2.0. * ядер. HOWTO описывает, где получить патч и дает большое количество полезных советов относительно того, как использовать утилиту конфигурации ipchains.

Netfilter и таблицы IP (ядра 2.4)

При разработке IP Firewall Chains, Paul Russell решил, что IP firewall виноват проще. Он, став совершенствовать код фильтра и создал пакет, который оказался много проще и более могуче. Это netfilter.

Так, что было неправильно из IP chains? Они значительно улучшили эффективность и управление правилами firewall. Али они все одно обрабатывали пакеты очень длинным путем, особенное в связке с другими возможностями firewall, например, IP masquerade и другими формами трансляции адреса. Часть этой проблемы существовала потому, что IP masquerade (маскировка IP) и Network Address Translation (сетевая трансляция адреса) были разработаны независимо от IP firewall и интегрированы у него позже.

Однако были другие проблемы. В частности, набор правил input описывал весь входной поток уровня IP как одно целое. Этот набор влиял как на пакеты, которые предназначены для этого компьютера, так и на те, которые будут переданы им дальше. Это было неправильно потому, что такой подход попутав функцию цепочки input с функцией цепочки forward, который применялся только к вытекающим пакетам. Возникали весьма замысловатые конфигурации для разной обработки входных и транслируемых пакетов.

Еще одной проблемой было те, что механизм фильтрации находился прямо в ядре системы, и изменить логику его работы было невозможно без коренной перебоязкі всего ядра. Так возник netfilter, который позволяет встраивать в ядро дополнительные модули с другой логикой фильтрации и имеет более простую схему настройки.

Ключевыми отличиями стало удаление из ядра кода для маскировки IP то изменение в логике работы наборов правил input и output. Появился новый расширяемый инструмент конфигурации iptables.

В IP chains набор правил input применяется ко всем пакетам, полученным компьютером, независимо от того, назначены ли они для локального компьютера или направлены на другой компьютер. В netfilter набор правил input применяется только к пакетам, предназначенным для локального компьютера. Цепочка forward теперь применяется исключительно к пакетам, предназначенным для передачи другому компьютеру. В IP Сhains набор правил output применяется ко всем пакетам, вытекающим из компьютера, независимо от того, сгенерировали ли они на локальном компьютере. В netfilter этот набор применяется только к пакетам, которые сгенерировали на этом компьютере, и не применяется к пакетам, проходячим транзитом. Это изменение резко упростило настройку.

Еще одной новостью стало вынесение компонентов работы с маскировкой IP в отдельные модули ядра. Они были переписаны как модули netfilter.

Рассмотрим случай конфигурации, в которой по умолчанию для input, forward и output задана стратегия deny. В IP chains для пропуска всех пакетов было бы нужно шесть правил.

В netfilter эта сложность исчезает полностью. Для сервисов, которые должны проходить через firewall, но не завершаются на локальном компьютере, нужные только два правила: в одиночку для прямого и обратного прохода в наборе правил forward.


Обоснование выбора программного обеспечения

Таблица № 2.1

Выбор программного обеспечения

Что запускаются ПО Выбрана ОС

GNOME

net filter

А patch Server

FTP Server

DHCP Server

Mysql Server

Dr web

Linux: Suse

GNOME

NFS,Firefox

Open Office(Write, Math

Calc, Draw...)

Gimp, Dr Web

C++

Base Date client

XPDF (PDF Viewer)

Samba.

Linux: Suse
3d Max 7,Adobe Photoshop, Corel Draw, AutoCAD,Macromedia Flash. Windows XP sp2 eng;

Для удобства компьютеры разделены по группам (группа создается по комплектущим компьютера) и о маркированных:

1) OPC (Office Personal Computer) Server / n

OPC WS(Work Station) /n

OPC GWS(Graphical Work Station) /n

n - это номер компьютера.

Вместе 3 группы OPC Server /n, OPC WS/n, OPC GWS/n

Для серверов и рабочих станций был выбран Linux: Suse.

SUSE был выбран потому что:

Linux является бесплатной ОС

Linux: Suse относительно новый дистрибутив. Fedora - это продолжение знаменитого Linux: RED HAT.

В дистрибутив входят такие программы как веб Сервер А patch 2, FTP сервер, Open office (аналог MS Office XP), Samba (помогает взаимодействовать Linux из Windows через локальную сеть), GIMP(аналог PhotoShop), а также другие полезные программы.

Устанавливая Linux, снижается процент заражения вирусом и потери данных, поскольку на сегодняшний день вирусы в основном пишутся для ОС Windows.

Али все таки одним линуксом не обойтись. Редакции нужны рабочие станций для работы с графикой. Для этих целей была выбрана операционная система MS Windows XP SP1.MS Windows XP SP1 добре себе зарекомендовал в работе. В нем совмещаются такие понятия как: стабильность, надежность, безопасность да и он может работать с коммерческой продукцией такой, как Photo Shop, 3d max, Corel Draw и другими программами.

 

Теоретические основы проектирования локальных сетей

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

Перед разработкой сети и установкой аппаратного обеспечения следует определить все источники данных и параметры, которые необходимо установить для них. Необходимо испытать дополнения, которые могут вызывать в сети проблемы, связанные с передачей данных. До заданий, которые могут привести к перегрузке сети, относятся:

- передача изображения и видеоинформации;

- доступ к центральной базе;

- загрузка программного обеспечения из удаленного серверу;

- доступ к Internet и другие.

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

Отметка и задание проектирования.

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

Основные этапы проектирования ЛС

Функции и размещения серверов.

Проектирование сети розбивается на две части.

Первая часть описывает физическое проектирование сети.

Вторая часть описывает программное проектирование сети.

Документирование физической и логической структуры сети.

Выбор топологии

Для того, чтобы соединить ПК нашей ЛС нам нужно выбрать топологию подключения компьютеров. Одно из наивысших положений в современной индустрии занимает звездообразная топология физического соединения. Эта топология обеспечивает простоту обслуживания и высокую надежность сети.

Термин «топология», или «топология сети», характеризует физическое расположение компьютеров, кабелей и других компонентов сети.

Топология сети обслуживает ее характеристики. В частности, выбор той или другой топологии влияет:

- на состав сетевого оборудования;

- характеристики сетевого оборудования;

- возможности расширения сети;

- способ управления сетью.

Чтобы совместно использовать ресурсы или выполнять другие сетевые задачи, компьютеры должны быть подключенные друг к другу. Для этой цели в большинстве используется кабель.

Однако просто подключить компьютер к кабелю, который соединяет другие компьютеры, не достаточно. Разные типы кабелей в сочетании с разной сетевой платой, сетевыми операционными системами и другими компонентами требуют и разного взаимного расположения компьютеров. Все сети строятся на базовых топологий: Шина, Кольцо, Звезда.

Функции серверов

От компьютерных сетей нужный, обеспечение взаимодействия ПК между собой, возможности доступа к ресурсам всех компьютеров, соединенных в сеть.

Для стабильной и качественной работы сети, нужно правильно подобрать, установить и настроить аппаратные и программные средства.

Одноранговые сети и сети на основе серверу объединяет общая отметка - разделение ресурсов.

Нам нужно определить, нужные нам сервера или можно без них построить нашу сеть.

Пример: для секретарей повиннен быть доступ к Интернету только для электронной почты, для бухгалтерии - доступ к подключению к удаленной базе данных, у директора полный быть доступ к Интернету. Для этого нужно установить сервер, который будет разделять права между пользователями ЛС. Серверы можно разделить на два класса

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

Сервер организации поддерживает всех пользователей сети, предоставляя им разные службы, такие как электронная почта или DNS.

Серверы организации должны размещаться в главной распределительной станции (ГРС). В этом случае потек данных будет идти только к ГРС, не проходя через остальных сегментов сети.

Для корректной работы нашего предприятия нужно 3 вида серверов: файловый, Интернет, сервер управления учетными записями. Али не значат, что нам нужно 3 компьютера, которые будут делать эти три функций. В зависимости от размеров сети нашего предприятия мы будем давать оценку, сколько компьютеров серверов нам понадобится для корректной работы ЛС. Чем больше сеть, тем более серверов нам может понадобиться для ее корректной работы. Но лишь грамотное деление заданий серверов между собой может гарантировать качественную работа способность сети.

Файловый сервер

Файловый сервер помогает беречь информацию предприятия нескольких ПК в одном месте. Что позволяет увеличить безпечу. Потому, что если информация будет разбросана по всему предприятию, тогда ее будет намного сложнее защитить от не нужных глаз Защитить 1 ПК (сервер) намного легче, чем 10-30 ПК предприятия.

Сервер доступа к Интернету

Сервер доступа к Интернету позволяет исполнителям предприятия получать доступ к сети Интернет. Он имеет связь с постановщиком услуг через модем, сетевую карточку или другие виды подключений. Он виноват следить за тем, чтобы пакеты с вредной информацией для нашей сети не попадали из Глобальной Сети «Интернет».

Сервер управления ЛС - этот вид серверу управляет учетными записями, адресами ПК сети и размещения серверов рабочей группы.

При создании структурированной кабельной системы выделяют следующие элементы:

- телекоммуникационные монтажные шкафы;

- магистральная кабельная система;

- помещение для оборудования;

- рабочие области и входные средства.

Кабельная система.

Кабельная система включает сетевую среду передачи данных, телекоммуникационную розетку или разъем, коммутационные шнуры в монтажном шкафу и механические неразъемные соединения.

Для горизонтальной кабельной системы чаще применяется не экранированная крученная пара (UTP, спецификация 10 Base T) категорий 5 или 5е, широко используется в ЛВС, поскольку она обеспечивает поддержку современных высокоскоростных технологий передачи данных. Максимальная долгота сегмента составляет 100 м (328 футов). Существует несколько спецификаций, которые регулируют количество витков на единицу длины, - в зависимости от назначения кабеля.

Не экранирована крученная пара определенная в особенном стандарте EIA/TIA 568 - на основе UTP со стандартами для разных случаев, гарантируя однообразие продукции. UTP 5 - это кабель, способный передавать данные со скоростью до 100 Мбит/с. состоит из четырех витых пар медного провода.

Для создания соединения UTP -5 виновный использоваться разъем гнезда типа RJ-45.

Для того, чтобы построить развитую кабельную систему и у той же время упростить роботу с ней поможет ряд очень полезных компонентов:

- распределительные стойки и полки - предназначенные для монтажа кабеля. Они позволяют, централизовано организовать множество соединений и при этом занимает достаточно мало места.

- коммутационные панели (patch panels).Існують разные типы панелей расширения. Они поддерживают до 96 портов та скорость передачи до 100 Мбит/с.

- соединители. Одинарные или двойные RJ-45 подключаются к панелям расширения или настенных розеток. Они обеспечивают скорость передачи до 100 Мбит/с.

- настенные розетки. К настенным розеткам можно подключить два (и более) соединителя.

Следует избегать растягивания, больших изгибов кабеля и огибания углов. Рекомендуется оставлять небольшой запас кабеля из обоих концов, для возможного увеличения расстояния, например, при перекомутації.

После установки кабелей необходимо оформить схему прокладки отрезков кабелей. На этой схеме также указываются номера помещений, куда проложены кабели. Стандарт EIA/TIA требует, чтобы кожному физическому соединению был присвоен уникальный идентификатор, который виноват быть указанный на кожном физическом краевом блоке или на прикрепленной к нему этикетке.

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

Для магистральной кабельной системы может использоваться коаксиальный кабель, экранированная и не экранированная крутінь пары, а также многомодовый оптоволоконный кабель. В основном чаще всех используют віту пару, поскольку она не дорога, поддерживает технологий Ethernet, Fast ethernet и Gygabite Ethernet, надежная в использовании. В случаи обрыва кабеля будет легко обнаружить поломку.

Инфраструктура локальной сети отвечает стандартам EIA/TIA и основывается на Ethernet коммутации, которая позволить перейти на высшие скорости без изменения физической схемы соединений.

Установка коммутационного оборудования

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

Помещения для коммутационного оборудования отвечают стандарту EIA/TIA - они достаточно большие, поскольку в будущем возможен рост локальной сети учебной залогу.

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

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

Коммутационные панели

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

Коммутационные панели могут устанавливаться или на стену, или в распределенные стойки, или в шкафы, оборудованные внутренними стойками. Наиболее часто для установки коммутационных панелей используются распределенные стойки, которые обеспечивают легкий доступ к оборудованию и из передней и задней панели. Стандартная ширина стоек 19”,а высоты может составлять 39” - 74”.

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

Технологии локальной сети

Самой популярной технологией локальных сетей является Ethernet. Эта технология использует для обмена данными между сетевыми устройствами метод доступа CSMA/CD и обеспечивает передачу данных со скоростью до 100 Мбит/с.

Существует несколько физических стандартов технологии Ethernet, самым популярным из их является 10 BASE-T. Сети стандарта 10 BASE-T имеют звездообразную топологию и используют в качестве физическая среда передачи данных кабель UTP-3-5 категорий.

Самым популярным стандартом физического уровня сетей Fast Ethernet, есть 100Base-тх, используя в качестве физическая среда передачи данных кабель UTP-5 категории, и 100Base-Fх, использующий многомодовое оптоволокно.

В сетях основанных на крученный пари можно использовать разные нестандартные проводники, которые позволяют получить новые характеристики и свойства сети. 1000 мегабітни сети - это последующий кабель эволюции сетей на крученный пари. В отличии от 10 - 100 мегабітних сетей, в которых используются только 4 проводника с 8, при гигабитном соединении задействованни все 8 проводників. С использованием соответсвующего встаткування сетевых карт и коммутатора с поддержкой гигабитного соединения. Скорость передачи данных составляет порядку 80-100 мегабайт в секунду что как правило значительно превышает потоки передачи данных жестких дисков (40-60 мегабайт/сек) установленных в домашние системы.

На эффективность работы локальных сетей Ethernet негативно влияют следующие факторы:

- широковещательный характер передачи кадров данных;

- увеличение задержки распространения кадров при использовании сетевых устройств;

- увеличение числа коллизий, а, следовательно, и уменьшение пропуской способности сети и ростом числа станций в сети;

- метод доступа CSMA/CD, который позволяет одновременно передавать данные лишь одной станции;

Теория сегментации сети

Назначение устройств 2-го уровня заключается в обеспечении управления потоком данных, в выявлении и коррекции ошибок и уменьшении перегрузок сети. На этом уровне работают такие устройства, как сетевые адаптеры, мосты и коммутаторы. Устройства этого уровня определяют размеры коллизионных доменов. Большой размер коллизионного домена негативно влияет на эффективность работы сети. Используя мосты и коммутаторов, можно сегментировать украшаю узором, уменьшив размер коллизионного домена.

Для определения размеров коллизионного домена необходимо знать, сколько хостов физически подключено к одному порту коммутатора. При микро сегментации размер коллизионного домена ровен двум (порт коммутатора и, например, порт рабочей станции). В случае использования концентраторов, несколько компьютеров подключаются к одному порту коммутатора, образуют коллизионный домен и делят между собой полосу пропускания.

Проектирование локальной сети

Выбор топологии. Для того, чтобы выбрать нужную топологию, я проанализировал 3 основные вида

такие как звезда, кольцо и шина(описание которых находится в разделе «Теоретическая часть проектирования ЛС > Выбор Топологии»). Я выбрал топологию звезда, поскольку она имеет больше плюсов над всеми другими топологиями. Например, возьмем топологию шина, в случаи выхода из строя одного фрагмента кабеля, из строя выйдет вся сеть предприятия. Но если сеть относительно большая, то обнаружить такой фрагмент будет достаточно трудно. К тому же шина использует коаксиальный кабель, который может передавать информацию со скоростью 10мб/с максимум (ethernet). При этом нельзя в сеть ставить больше 10 ПК, если ставить больше - скорость значительно упадет. В топологии звезда при выходе из строя одного фрагменту, с сетью ни чего не случится. Увеличивается скорость за счет того, что применяются более новые технологий, такие как Fast Ethernet, Gygabite Ethernet, которые на сегодняшний день стали доступны по цене и по качеству работы.

Технология компьютерной сети

Для нашей сети были избраны две технологии: Fast Ethernet и Gygabite Ethernet(1000 BASE-T). Они будут реализовываться на крученный паре категории 5Е.

Технология Ethernet уже давно используется в локальных сетях и зарекомендовала себя из красивой стороны. В случае, если будет нужно перейти из технологий Fast Ethernet на Gigabyte Ethernet, нужно только поменять коммутаторов Fast Ethernet на коммутаторов с поддержкой Gigabyte Ethernet и переобжати кабель для технологий 1000 BASE-T. Технология Fast Ethernet будет использоваться для соединения рабочих станций в большинстве кабинетов. А Gigabyte Ethernet будет использоваться для соединения серверов, и в кабинете графических редакторов. Позволят быстро пересылать объемные видео материалы с очень большой скоростью.

Размещение рабочих станций

I этаж.

В гостиной размещается 7 рабочих станций.

В кабинете охраны - 3 рабочих станций

Секретари - 6 рабочих станций.

Комната с коммутационным оборудованием.

II этаж

Кабинет графической редакции - 10 рабочих станций.

Кабинет текстовой редакций - 10 рабочих станций.

В информационный отдел - 5 рабочих станций.

Кабинет бухгалтерии - 5 рабочих станций.

Коммутационная комната

III этаж

Кабинет директора - 2 рабочих станций.

Библиотека - 15 рабочих станций.

Кабинет Главного редактора - 1 робочая станция.

Кабинет Главного бухгалтера - 1 рабочих станция.

ГРС

Все в здании установлено 65 рабочих станций.

Размещение серверов. Короткое описание

Файловый сервер, будет установлен в комутаційной комнате на третьему этажу.

Он будет беречь данные предприятия.

Интернет Сервер будет установлен в ГРС. На нем будет установленные и настроена программа маршрутизатор (Firewall), которая будут разделять сеть предприятия от сети Интернет, том самим, оберегая нашу сеть от вирусов из Интернета.

Домен, который также является маршрутизатором сети предприятия будет установлен в ПРС (второй этаж). Он будет управлять сетью предприятия, разбивая ее на под сети, записывать в журнал отчеты о труде предприятия. Так именно будет беречь учетные записи пользователей предприятия.

Все в здании установлено 3 сервера.

Создание структурированной кабельной системы

I этаж.

Гостевая комната - компьютеры соединены по топологию «звезда». От каждой рабочей станции идет кабель “витая пара” к switch 11.Switch 11 соединяет этот кабинет из switch S1, который соединяет этаж с сервером “Diplom”.

Кабинет охраны- рабочие станции соединяются с помощью Switch 13. Switch 13 соединенный с главным switch “S1”.

Рабочие станции секретарей соединены из switch 12 рабочих станций.

В комнате с коммутационным оборудованием №1 установлен switch S1, который объединяет первый этаж и соединяет из коммутационной комнатой №2, какая расположена на другом этаже.

II этаж

Кабинет графической редакции - рабочие станции присоединены к switch 24,25.Switch 24,25 не соединенные между собой. Для того, что бы увеличить скорость передачи данных Switch 24,25 подключается к Switch S3 отдельными кабелями. Switch 24 имеет соединение с Switch S3 и четырьмя рабочими станциями. Switch 25 имеет подключение с Switch S3 и шестью рабочими. станциями. Это позволить нам увеличить скорость между рабочимі станциями графического отділу и серверамі сети.

Кабинет текстовой редакций в нем установлено 2 хаба на 8 портов, которые помогают соединить все компьютеры в сетью и соединить их с сервером. Первый хаб называется switch 21, а второй switch 22.

В информационный отдел 5 рабочих станций подключаются к Switch 23.

Кабинет бухгалтерии - 5 рабочих станций подключаются к Switch 24

В комнате для коммутацоного обладнення установлено Switch S2,S1 Server “Diplom”. Switch S2 нужен, для того, чтобы соединять кабинет текстовой редакции, информационный отдел и бухгалтерию. Switch S2 нужен для подключения кабинета графической редакции и серверу.

III этаж.

Общее

В здание прокладка кабеля между кабинетами и серверами будет проходить по потолки. Внутри кабинетов кабель будет проходить между полом. Коммутационное оборудование кабинетов будет устанавливаться в специальных шкафах, чтобы к ним не было несанкционированного доступа.

Помещение для оборудования

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

Магистральная кабельная система

Все кабелю будут прохолить между полом и накладным полом. Позволят нам спрятать кабель от посторонних глаз, физических повреждений и т.д.

Между этажами кабель будет проходить через спецальный тоннель. Тоннель представляет из себя трубу Ш 10 см. Это нам позволит легко добавлять или замещать магистральные кабели.

Проектирование сетевой адресации

В таблице IP адреса указанны диапазоны адреса с ранетом расширения предприятия.

Таблица № 5.1

Разбиение на сети и адреса

Сеть Описание
20.34.34.0 Для соединения с провайдером
192. 168.1. 0 Для серверов предприятия(2)
192. 168.2. 0 Для рабочих станций предприятия
IP адресация
IP-Address Описание
10.42.32.12 Proxy Cash Server (Провайдер)

192.168.1.1

192.168.2.1

10.42.0.10

Сервер безопасности,Web server, Файловый сервер

OPC Serv/2

192. 168.1.2 Контролер домена, Файловой Сервер, Mysql Server
192.168.2.12-192.168.2.32 Секретари
192.168.2.33-192.168.2.53 Библиотека
192.168.2.54-192.168.2.64 Информационный отдел
192.168.2.65-192.168.2.75 Охрана
192.168.2.100-192.168.2.115 Администрация предприятия
192.168.2.116-192.168.2.136 Бухгалтера
192.168.2.137-192.168.2.200 Редакция

Для серверов были, зарезервировал первых 10 адресsd в каждой сети. В первых, у серверов должны быть статические IP адреса, для того что бы каждая рабочая станция использовала сервер для использования функций ЛС. К примеру, таких как доступ к Интернет или к базе данных. Во второе, было сделано для того, что бы эти адреса можно было спокойно назначать в случаи с расширением серверов.

Для каждой группы работников были выделены диапазоны адресов с учетом расширения сети. Например, для охраны выделено 10 адресов, хотя реально используется три адреса.

Но построение сети, это не только IP адреса. Нам так именно понадобится и оборудование, благодаря которому мы сможем реализовать нашу сеть

Документация на кабельные трассы

В этой таблице указаны магистральные соединения и соединения между рабочими помещениями и магистралью.

Switch n- маркировка коммутаторов, которые устанавливаются в рабочих помещениях.

S n - маркировка коммутаторов, которые используются в магистральных соединениях

Индефикатор кабеля в таблице указывается I - J -T:

I - это номер этажа.

J - это номер кабинета.

T - это номер, который используется, в том случаи, когда из одного кабинета идет два или больше соединений.

В соединениях между серверами указывается:

I - это номер этажа.

J - это уникальный номер или сокращено имя серверу или оборудование.

Таблица 5.2

МАРКИРОВКА КАБЕЛЯ

Соединение Идентификатор кабеля Кросс соединения Тип кабеля Заключается
Первый Этаж
Switch 11-S1 1-1-0 Горизонтальный кросс соединения 1.1/порт 1 UTP5e используется
Switch 12-S1 1-2-0 Горизонтальный кросс соединения 1.2/порт 2 UTP5e используется
Switch 13-S1 1-3-0 Горизонтальный кросс соединения 1.3. 3/порт 3 UTP5e Используется
Этаж 2
Switch 21 – Switch 22 2-1-0 Горизонтальный кросс соединения 2.1/порт 1 UTP5e используется
Switch 22 –S2 2-1-1 Горизонтальный кросс соединения 2.1/порт 1 UTP5e используется

Switch 23 -

Switch 24

2-2-3 Горизонтальный кросс соединения 6/порт 6 UTP5e используется

Системы защиты под управленнием ОС Linux

Установка и Настройка Firewall

Чтобы запустить Linux IP firewall, нужно построить ядро с поддержкой IP firewall и соответствующие конфигурационные утилиты. В ядрах к серии 2.2, нужно использовать утилиту ipfwadm. Ядра 2.2.x имеют третье поколение IP firewall для Linux, называемое IP Chains. IP chains использует программу ipchains. Ядра Linux 2.3.15 и старше поддерживают четвертое поколение Linux IP firewall: netfilter. Код пакета netfilter результат больших изменений потока обработки пакетов в Linux. netfilter обеспечивает обратную совместимость из ipfwadm и ipchains. Настраивается эта версия командой iptables. Настройка ядра для IP Firewall

Ядро Linux нужно настроить в поддержку IP firewall. Для этого нужно просто указать параметры при настройке ядра, например, командой make menuconfig. И выбрать следующих опций

Networking options -і->

[*] Network firewalls

[*] TCP/IP networking

[*] IP: firewalling

[*] IP: firewall packet logging

В ядрах серий 2.4.0 и старше нужно выбрать намного больше опций:

Networking options -і->

[*] Network packet filtering (replaces ipchains)

IP: Netfilter Configuration -і->

<M> Userspace queueing via NETLINK (EXPERIMENTAL)

<M> IP tables support (required for filtering/masq/NAT)

<M> limit match support

<M> MAC address match support

<M> netfilter MARK match support

<M> Multiple port match support

<M> TOS match support

<M> Connection state match support

<M> Unclean match support (EXPERIMENTAL)

<M> Owner match support (EXPERIMENTAL)

<M> Packet filtering

<M> REJECT target support

<M> MIRROR target support (EXPERIMENTAL)

<M> Packet mangling

<M> TOS target support

<M> MARK target support

<M> LOG target support

<M> ipchains (2.2-style) support

<M> ipfwadm (2.0-style) support

Утилита ipfwadm (IP Firewall Administration) нужна для управления правилами в ядрах к версии 2.2.0. Ее синтаксис очень сложен, но я приведу немного наиболее простых примеров.

Утилита ipfwadm есть во всех современных дистрибутивах Linux, алі, возможно, не относиться за умалчиванием. Может быть специальный сетевой пакет, которому нужно поставить отдельно. Найти исходный код можно на ftp.xos.nl в каталоге /pub/linux/ipfwadm.

Утилита ipchains

Аналогично ipfwadm, утилита ipchains может немного озадачивать, пока к ней не привыкнешь. Она обеспечивает всю гибкость ipfwadm с упрощенным синтаксисом и дополнительно обеспечивает механизм наборов или цепочек (“chaining”), что позволяет Вам управлять многими правилами и связывать их друг с другом. Формирование цепочки правил в отдельном разделе немного позже.

Команда ipchains появилась в дистрибутивах Linux на ядрах серии 2.2. Исходники можно взять на http://www.rustcorp.com/linux/ipchains. В этот пакет исходников входить скрипт ipfwadm-wrapper, что имитирует роботу ipfwadm, используя возможности ipchains. Это существенно упрощает к новой версии firewall.

Утилита iptables

Синтаксис iptables очень похож на синтаксис ipchains. Разница в поддержке модулей расширения и ряду нововведений в фильтрации пакетов. Понятно, я приведу пример и для iptables, так что Вы сможете уравнять эти две утилиты.

Утилита iptables входить в пакет netfilter, исходники которого можно скатить из http://www.samba.org/netfilter. Она также входить в дистрибутивы Linux на ядре 2.4. Правда, поскольку это ядро еще находится в стадии тестирования, я пока не встречал дистрибутивов на нем.

Способы фильтрации

Рассмотрим, как обрабатываются пакеты IP любой машиной, которая может заниматься их маршрутизацией:

(1) IP-пакет откуда-то пришел.

Входной пакет будет исследован, чтобы определить ли назначен он для процесса на этой машине.

(2) Если он для этой машины, то обработанный в местном масштабе.

(3) Если пакет не предназначен для этой машины, будет выполнен поиск по таблицы маршрутизации для соответствующего маршрута, и пакет будет посланий к соответствующему интерфейсу или пропущенный, если маршрут не может быть найден.

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

Исходный IP-пакет будет исследован, чтобы определить, есть или имеет силу маршрут для него, если нет, он будет пропущен.

(5) IP-пакет куда-то отправится.

В этой схеме потек 1-3-5 представляет нашу машину, направляющую данные между компьютером в нашей сети Ethernet на другой доступный компьютер через какую-то связь. Потоки 1-2 и 4-5 представляют введение данных и исходные потоки сетевой программы, которая работает на нашем локальном компьютере. Потек 4-3-2 представляет передачу данных по кольцевом внутреннем интерфейсе (loopback connection).

IP firewall ядра Linux способен к применению фильтрации на разных стадиях в этом процессе. То есть, Вы можете фильтровать IP-пакеты, которые приходят Вашей машине, те, которые ходят внутри ее и те, которые предназначены для отправления во внешний мир.

В ipfwadm и ipchains правило Input применяется к потоку 1, правило Forwarding к потоку 3 и правило Output к потоку 5. В netfilter, точки перехвата изменились так, чтобы правило Input применилось в потоке 2 и правило Output в потоке 4. Это имеет важное значение для того, как Вы структурируете свой набор правил.

Использование ipfwadm

Команда ipfwadm являет собой инструмент конфигурации для другого поколения Linux IP firewall. Возможно, самый простой способ описывать использование команды ipfwadm, это примеры.

Допустимо, что у нас есть сеть небольшой организации, которая использует Linux-машину из firewall для связи из Internet. Мы позволяем пользователям этой сети обращаться к web-серверам в Internet, но не позволяем какой-либо другой трафик.

Мы должны определить правила пересылка наружу пакетов с исходным адресом в нашей сети и портом назначения 80, а также пакетов с ответами.

Допустимо, что наша сеть имеет 24-бітну сетевую маску (класс C) и ее сетевая адреса 172.16.1.0. Правила будут такими:

# ipfwadm -F -f

# ipfwadm -F -p deny

# ipfwadm -F -я accept -P tcp -S 172.16.1.0/24 -D 0/0 80

# ipfwadm -F -я accept -P tcp -S 0/0 80 -D 172.16.1.0/24

Параметр -F инструктирует ipfwadm, что мы определяем правило пересылки пакетов (forwarding). Первая команда предлагает ipfwadm очистить все правила. Гарантируют, что мы работаем с известным состоянием, и после добавления правил не окажется, что остались еще какие-то неизвестны нам правила.

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

Третья команда позволяет нашим пакетам выходить из системы, а четвертое правило позволяет приходить ответам.

Параметры:

-F - определяет правило пересылки (Forwarding).

-а accept - добавляет правило со стратегией "accept", что позволяет принимать все пакеты, которые отвечают этому правилу.

-P tcp - правило применимое к TCP-пакетам (не трогает пакеты UDP или ICMP).

-S 172.16.1.0/24 - исходный адрес должен иметь маску подсети в 24 битая и адрес сети 172.16.1.0.

-D 0/0 80 - адрес назначения должен иметь нулевые биты (0.0.0.0). Это отвечает любому адресу. Число 80 определяет порт назначения, в этом случае WWW. Вы можете также использовать любую запись из файла /etc/services для определения порта н апример, -D 0/0 www.


Таблица 5.1

Распространены значения бит сетевой маски
Сетевая маска  Биты
255.0. 0.0 8
255. 255.0. 0 16
255. 255. 255.0 24
255. 255. 255.128 25
255. 255. 255.192 26
255. 255. 255.224 27
255. 255. 255.240 28
255. 255. 255.248 29
255. 255. 255.252 30

Обзор параметров ipfwadm

Команда ipfwadm имеет много параметров. В общем виде синтаксис таков:

ipfwadm category command parameters [options]

Категории (Categories)

Категории задают тип правил, которые настраивают, потому категория в команде допустима только одна:

-I - Правило введение (Input)

-O - Правило выводу (Output)

-F - Правила пересылка (Forwarding)

Команды

Применяются только к правилам в заданной категории. Команда сообщает Firewall, какое действие стоит выполнить.

-а [policy]

Прибавить правило

Вставить правило

-d [policy]

Удалить правило

-p policy

Установить заданную за умалчиванием стратегию

-l Показать все существующие правила

-f Стереть все существующие правила

Стратегии являют собой следующее:

accept

Пропускать все пакеты для приема, передачи или транзитные (forward)

deny

Блокировать все пакеты для приема, передачи или транзитные (forward)

reject

Блокировать все пакеты для приема, передачи или транзитные (forward) и послать компьютеру, что послав пакет ICMP-сообщения об ошибке

Использование ipchains

Есть два способа использования ipchains

использовать скрипт ipfwadm-wrapper, что является заменой ipfwadm. Имеет такой же синтаксис, как и ipfwadm.

использовать ipchains и использовать новый синтаксис.

Синтаксис команды ipchains

Синтаксис команды ipchains простой. В общем виде он выглядит так:

ipchains command rule-specification options

Команды

С помощью команд можно управлять правилами и наборами правил для ipchains. Рассмотрим их обстоятельно:

-A chain

Добавляет одно или большее количество правил до конца назначенной цепочки. Если имя машины задано для источника или адресата, и оно отвечает нескольким IP-адресам, правило будет прибавлено для каждого адреса.

-I chain rulenum

Добавляет одно или большее количество правил в кочан назначенной цепочки. Если имя машины задано для источника или адресата, и оно отвечает нескольким IP-адресам, правило будет прибавлено для каждого адреса.

-D chain

Удаляет одно или несколько правил из определенной цепочки, которая отвечает заданной спецификации правил.

-D chain rulenum

Удаляет правило, которое находится в позиции rulenum определенной цепочки. Первое правило в цепочке занимает первую позицию (не нулевую!).

-R chain rulenum

Замещает правило, которое находится в позиции rulenum определенной цепочки.

-C chain

Проверяет пакет спецификацией правила по заданной цепочке. Эта команда повернет сообщение, которое описывает, как пакет обработан цепочкой. Это очень удобно для тестирования Вашей конфигурации firewall, и ми рассмотрим это обстоятельно немного позже.

-L [chain]

Перечисляет правила определенной цепочки или всех цепочек, если никакая конкретная цепочка не заданий.

-F [chain]

Удаляет правила определенной цепочки или всех цепочек, если никакая конкретная цепочка не заданий.

-Z [chain]

Обнуляет пакеты и счетчики для определенной цепочки или всех цепочек, если никакая конкретная цепочка не заданий.

-N chain

Создает новую цепочку с заданным именем. Таким способом создаются задают пользователем цепочки.

-X [chain]

Удаляет определенную користувальницький цепочку или все цепочки, если никакая конкретная цепочка не заданий. На удаляет цепочку, что, не повинное быть ссылок из других цепочек, иначе она не будет изъята.

-P chain policy

Задает стратегию за умалчиванием для отмеченной цепочки. Допустимые стратегии: ACCEPT, DENY, REJECT, REDIR или RETURN. ACCEPT, DENY и REJECT имеют те же значения, как для традиционной реализации IP firewall. REDIR определяет, что пакет виноват быть переназначенный к порту на машине из firewall. RETURN вынуждает IP firewall вернуться к цепочке, правило которой вызывало эту ситуацию, и предлагает продлить ее обработку из следующего правила.

Параметры определения правил

Параметры ipchains создают правила, определяя, какие типы пакетов отвечают критериям. Если каждой йз этих параметров опущений из спецификации правила, он предусматривается за умалчиванием.

-p [!]protocol

Указывает протокол, который отвечает правилу. Допустимо имена протоколов tcp, udp, icmp или all. Можно задать номер протокола для протоколов, которые здесь не определены. Например, 4 для протокола ipip. Если задан префикс!, правило превращается в негативное, и принимаются все пакеты, которые не отвечают этому протоколу. Значение за умалчиванием: all.

-s [!]address[/mask] [!] [port] Указывает исходная адреса и порт, из которого пришел пакет. Адреса может задавать имя машины, имя сети или IP-адреса. Опция mask задает сетевую маску. Она может быть задана в обычной форме (например, /255.255.255.0) или в новой (например, /24). Опция port задает порт TCP или UDP, или тип пакетов ICMP. Вы можете задать спецификацию порта только, если задали параметр -p с одним из протоколов tcp, udp или icmp. Порты могут быть определены как диапазон, определяя верхние и нижние границі йз двоеточием как разделитель. Например, 20:25 определяет порты с 20 по 25 включительно. Символ! превращает правило в полную его противоположность.

-d [!]address[/mask] [!] [port]

Задает адреса и порт назначения. Во всем другому аналогичный параметру -s.

-j target Указывает, что делать при срабатывании правила. Допустимые действия: ACCEPT, DENY, REJECT, REDIR и RETURN. Раньше я уже описав значение каждого действия. Вы можете также задать имя обусловленной пользователем цепочки, в которой продлится обработка. Если этот параметр опущений, будут только изменены данные пакетов и счетчиков, но ничего йз этим пакетом сделано не будет.

-и [!]interface-name

Задает интерфейс, из которого пришел пакет, или через какой пакет будет передан. Символ! переворачивает результат сравнения. Если имя интерфейса кончается на +, ему будут отвечать все интерфейсы, имена которых начинаются на заданий строка. Например, -ые ppp+ совпадает со всеми PPP-интерфейсами, а -ые! eth+ отвечает всем интерфейсам, кроме Ethernet.

[!] –f Указывает, что это правило применяется к первому фрагменту фрагментированного пакета.

Опции

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

-b Генерирует сразу два правила. Первое точно отвечает заданным параметрам, вторую делает теми же именно, но прямо противоположными параметрами.

-v Предлагает ipchains выдавать подробную информацию.

-n Предлагает ipchains использовать IP-адреса и порты, не пытаясь превратить их в имена.-l

Включает протокол ядра о соответствии пакетов. Любой пакет, который отвечает правилу, будет запротоколирован ядром, используя его функцию printk(), что обрабатывается программой sysklogd. Это удобно для выявления необычных пакетов.

-о[maxsize] Вынуждает IP chains копировать все подходящим правилам пакеты в устройство “netlink”. Параметр maxsize ограничивает число байтов из кожного пакета, которые будут переданы на устройство netlink. Эта опция имеет большое значение для розроблювачів, но может эксплуатироваться пакетами користувальницьких программ в будущем.

-m markvalue

Все пакеты, которые удовлетворяют правилам, повинны быть обозначенные. Метка есть 32-бітним чмслом без знака. Пока эта опция ничего не делает, но в будущем она может определять, как пакет будет обработан другим программным обеспечением типа кода маршрутизации. Если метка начинается из + или -, ее значение буедт прибавлено или відняте из существующие.

-t andmask xormask

Позволяет управление битами TOS (“type of service”) в заглавии IP любого пакета, который удовлетворяет правилам. Биты типа сервиса используются интеллектуальными маршрутизаторами для расположения пакетов перед отправлением в соответствии с их приоритетом. andmask и xormask задают разрядные маски, которые будут использованы в логических операциях AND и OR с битами типа сервиса. Это продвинуто свойство, которое более обстоятельно описано в IPCHAINS-HOWTO.

-x Любые числа у вывода ipchains будут точными (округление не используется).

-в Задает правило, которое будет отвечать любому пакету TCP с установленным битому SYN и неустановленными битами ACK и FIN. Это используется, чтобы фильтровать TCP-запросы.

Пример: Опять допустим, что ми имеем сеть в нашей организации, и используем Linux firewall для предоставления доступу к нашим серверам WWW из Internet, но при этом хотим блокировать любой другой трафик.

ipchains:

# ipchains -F forward

# ipchains -P forward DENY

# ipchains -A forward -s 0/0 80 -d 172.16.1.0/24 -p tcp -у -j DENY

# ipchains -A forward -s 172.16.1.0/24 -d 0/0 80 -p tcp -b -j ACCEPT

Если ми теперь хотим прибавить правила, какие предоставят только пассивный режим доступа к FTP-серверу снаружи сети, ми прибавим правила:

# ipchains -A forward -s 0/0 20 -d 172.16.1.0/24 -p tcp -у -j DENY

# ipchains -A forward -s 172.16.1.0/24 -d 0/0 20 -p tcp -b -j ACCEPT

# ipchains -A forward -s 0/0 21 -d 172.16.1.0/24 -p tcp -у -j DENY

# ipchains -A forward -s 172.16.1.0/24 -d 0/0 21 -p tcp -b -j ACCEPT

Чтобы перечислить наши правила в команде ipchains, используется параметр -L argument. Точно как из ipfwadm, там могут быть заданы аргументы, которые позволять детализировать вывод. В самом простом случае ipchains выведет что-то вроде бы:

# ipchains -L -n

Chain input (policy ACCEPT):

Chain forward (policy DENY):

target prot opt source destination ports
DENY TCP -y---- 0.0. 0.0/0 172.16. 1.0/24 80 -> *
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 80 -> *
ACCEPT TCP ------ 172.16. 1.0/24 0.0. 0.0/0 * -> 20
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 20 -> *
ACCEPT TCP ------ 172.16. 1.0/24 0.0. 0.0/0 * -> 21
ACCEPT TCP ------ 0.0. 0.0/0 172.16. 1.0/24 21 -> *

Если Вы не указали имя цепочки, ipchains выведет все правила йз всех цепочек. В нашем примере параметр -n сообщает ipchains, чтобы той не превратил бу-яку адресу или порт во имя.

Netfilter Обратная совместимость из ipfwadm и ipchains

Прекрасная гибкость Linux netfilter иллюстрируется способностью наследовать интерфейсов ipfwadm и ipchains. Эмуляция делает переход к новому поколению программного обеспечения firewall немного проще.

Два модуля ядра из netfilter с именами ipfwadm.o и ipchains.o обеспечивают обратную совместимость из ipfwadm и ipchains. Можно загрузить одновременно только один из этих модулей и использовать его только при условии, что модуль ip_tables.o не загруженный. Когда соответствующий модуль загружен, netfilter работает аналогично заданной реализации firewall.

Чтобы netfilter копировал интерфейс ipchains скомандуйте:

# rmmod ip_tables

# modprobe ipchains

# ipchains

Использование iptables

Утилита iptables используется для настройки правил netfilter. Синтаксис заимствован в ipchains, но имеет важное отличие: он расширился. Значат, что функциональные возможности могут быть расширены без перекомпиляции пакета. Для этого используются поділювані библиотеки. Есть стандартные расширения, ряд которых ми в настоящий момент выучим.

Перед использованием команды iptables Вы должны загрузить модуль ядра netfilter, что позволяет ей работать. Проще всего сделать это командой modprobe: # modprobe ip_tables

Команда iptables используется для настройки IP filter и Network Address Translation. Для этого используются две таблицы: filter и nat. Если не задана опция -t, используется таблица filter. Доступные пять убудованих цепочек (наборов правил): INPUT и FORWARD для таблицы filter, PREROUTING и POSTROUTING для таблицы nat и OUTPUT для всех таблиц.

Как и раньше, ми допускаем, что есть сеть какой-то организации, на Linux-машине запущен firewall. Все внутренние пользователи имеют доступ к WWW-серверам в Internet, но и только.

Если сеть использует сетевую маску у 24 бита (класс C) и имеет адресу сети 172.16.1.0, нужно использовать правила iptables:

# modprobe ip_tables

# iptables -F FORWARD

# iptables -P FORWARD DROP

# iptables -A FORWARD -m tcp -p tcp -s 0/0 -іsport 80 -d 172.16.1.0/24 / -іsyn -j DROP

# iptables -A FORWARD -m tcp -p tcp -s 172.16.1.0/24 -іsport / 80 -d 0/0 -j ACCEPT

# iptables -A FORWARD -m tcp -p tcp -d 172.16.1.0/24 -іdport 80 -s 0/0 -j / ACCEPT

В этом примере iptables работает точно как команда ipchains. Вся разница в том, что нужно предварительно загрузить модуль ip_tables.o. Обратите внимание, что iptables не поддерживает опцию -b, так что ми должны отдельно задать правило для кожного направления.

Типы пакетов ICMP

Каждая из команд конфигурации firewall позволяет определять типы пакетов ICMP. В отличие от портов TCP и UDP, нет никакого удобного файла конфигурации, которая перечисляет типы пакетов и их значения. Типы пакетов ICMP определены в RFC-1700 (Assigned Numbers RFC). Они также перечислены в одном из стандартных библиотечных файлов C. Файл /usr/include/netinet/ip_icmp.h, что принадлежит обычной библиотеке GNU и используется C-программистами при написании сетевого программного обеспечения, которое работает йз протоколом ICMP, также определяет типы пакетов ICMP. Для удобства я они отображены в таблице 9-2. Интерфейс команды iptables позволяет определять типы ICMP по их именам, так что я укажу и эти имена. Позже они придадуться.

Таблица №5.4

Типы пакетов ICMP

Номер типа Позначення iptables Опис
0 echo-reply Echo Reply  
3 destination-unreachable Destination Unreachable
4 source-quench Source Quench
5 redirect Redirect
8 echo-request Echo Request
11 time-exceeded Time Exceeded
12 parameter-problem Parameter Problem
13 timestamp-request Timestamp Request
14 timestamp-reply Timestamp Reply
15 none Information Request
16 none Information Reply
17 address-mask-request Address Mask Request
18 address-mask-reply Address Mask Reply

Управление битами TOS

Биты типа обслуживания (Type Of Service, TOS) являют собой набор из четырехбитных флагов в заглавии IP-пакета. Когда каждой йз этих флажков установок, маршрутизаторы могут обрабатывать пакет иначе, чем пакет без TOS-набора битов. Каждый из четырех битов имеет разную цель, и только один из TOS-битов может быть установлен в один момент часа, так что комбинации не позволяются. Флаги названы типом обслуживания потому, что они дают возможность прикладной программе, которая передает данные, сообщить сети тип необходимого мережного обслуживания.

Доступные классы обслуживания сети:

Minimum delay

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

Maximum throughput

Используется, когда объем данных в любом периоде часа важен. Есть много типов сетевых прикладных программ, для которых час ожидания не очень важно, но сетевая производительность критическая. Для таких пакетов рекомендуются каналы с красивой пропускной способностью, например, спутниковые.

Maximum reliability

Используется, когда важно иметь некоторую уверенность, что данные достичь адресата без повторной передачи. IP-протокол может быть передан по большому количеству основных сред передачи. У той час как SLIP и PPP красивые для передачи обычные протоколы, они не настолько надежные, как X.25 network. Для таких пакетов выбираются сами надежные каналы связи.

Minimum cost

Используется, когда важно минимизировать стоимость передачи данных. Аренда спутникового канала передачи вообще менее дорога, чем аренда оптоволоконного кабеля, так что провайдер может иметь разные каналы и направлять трафик по канале более подешево.

Задание TOS-битов с помощью ipfwadm или ipchains

Команды ipfwadm и ipchains имеют справа с TOS-битами. В обоих случаях определяется правило, которое отвечает пакетам с конкретным TOS-битом, и используете параметр -t, чтобы определить изменение, что желаем сделать.

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

Разрядные маски определяются, используя восьмиразрядные шестнадцатеричные значения. ipfwadm и ipchains используют одинаковый синтаксис:

-t andmask xormask Наиболее полезные приложения для масок приведены вместе с их значениями в таблице 5.3.

Таблица 5.3

Использование TOS-битов

TOS ANDmask XORmask  Использование, которое рекомендует
Minimum  Delay 0x01 0x10   ftp, telnet, ssh
Maximum  Throughput 0x01 0x08 ftp-данные, www
Maximum Reliability 0x01 0x04 snmp, dns
Minimum Cost 0x01 0x02 nntp, smtp

Установка TOS-битов с помощью iptables

Команда iptables позволяет определять правила для сбора данных с заданными TOS-битами, используя параметр -m tos и устанавливать биты с помощью параметра -j TOS. Можно устанавливать TOS-битые только на правилах цепочек FORWARD и OUTPUT. Соответствие и установка происходит совсем независимо. Мы можем конфигурировать много интересных правил. Например, конфигурировать правило для отклонения пакетов с задаными TOS-битами или для установки TOS-битов в пакетах из какого-то конкретного компьютера. В отличие от ipfwadm и ipchains, iptables использует больше простой подход, явно определяя почему TOS-битые должны отвечать, или какие TOS-битые должны быть установленные. Для битов заданы имена, что куда лучшее запоминание их числовых масок

Синтаксис для задания соответствию TOS-битов в правилах:

-m tos -іtos mnemonic [other-args] -j target

Синтаксис для установки TOS-битов в правилах:

[other-args] -j TOS -іset mnemonic

Проверка конфигурации Firewall

Общая процедура теста следующая:

Выберите тип firewall для использования: ipfwadm, ipchains или iptables.

Разработайте ряд тестов, которые определят, работает ли ваш firewall так, как нужно. Для этих тестов возможно использовать любой источник или адресов отправителя, так что выберите комбинации адрес, которые должны быть принятые и другие, которые должны быть отброшенные. Если принимать или отбрасывать только некоторые диапазоны адрес, красивой идеей будет проверить адреса по обе стороны границі диапазона: по одному внутри границі и внешне. Будет гарантировать, что имеем правильные границі, потому что иногда просто определить неправильную маску подсети в конфигурации. Если фильтровать в соответствии с протоколом и номером порта, тесте должны также проверить все важны комбинации этих параметров. Например, если допускаете принимать только TCP-пакеты, проверьте, что UDP-пакеты отклоняются.

Разработайте правила для ipfwadm, ipchains или iptables, чтобы выполнить каждый тест. Вероятно, стоит записать все правила в скрипт, так что Вы можете проверять и перепроверять усе без проблем по мере исправления ошибок или изменений проекта. Тесте используют почти той же синтаксис, поскольку определяют правила, но как параметры берут немного другие значения. Например, исходный параметр адреса в спецификации правила определяет исходная адреса, из которого виновный прийти пакет, который будет отвечать этому правилу. Исходный параметр адреса в синтаксисе теста, напротив определяет исходная адреса тестового пакета, который будет сгенерирован. Для ipfwadm должны использовать опцию -c, чтобы определить, что эта команда является тестом, у той час как для ipchains и iptables должны использовать опцию -C. Во всех случаях мы должны всегда определять исходную адресу, адреса получателя, протокол и интерфейс, которые нужно использовать для теста. Другие параметры, типа номера порта или битов TOS, являются факультативными.

Выполните каждую команду теста и обратите внимание на вывод. Вывод кожного теста будет одним словом, что указывает конечного адресата пакета после его прохождения через firewall. Для ipchains и iptables определенные пользователем цепочки будут проверены в добавление к убудованого.

Уравняете вывод кожного теста с желаемым результатом. Если есть разногласия, Вы будете должны анализировать набор правил, чтобы определить, где вы сделали ошибку. Если Вы записали команды теста в файл скрипта, Вы сможете легко повторно выполнить тест после исправления ошибок в конфигурации firewall. Гарантируют, что активная конфигурация, что Вы проверяете фактически, отбивает набор команд в скрипте конфигурации. внешние TCP-соединения с нашими web-серверами. Ничего больше не должно работать прямо. Начнем с передачи, которая точно виновата работать (из нашей локальной сети):

# ipchains -C forward -p tcp -s 172.16.1.0 1025 -d 44.136.8.2 80 -ые eth0 accepted

Заметьте, что в параметрах нужно передать и путь для описания пакета. Вывод команды указывает на те, что пакет был принят для пересылки, которая есть именно том, на что ми надеялись.

Теперь попробуйте другой тест, в этот раз с исходным адресом, который не принадлежит нашей сети. Этот виноват быть отклоненный:


# ipchains -C forward -p tcp -s 172.16.2.0 1025 -d 44.136.8.2 80 -ые eth0 denied

Попробуйте немного больше тестов, в этот раз с теми же деталями, что и в первом тесте, но с разными протоколами. они должны быть отклоненные:

# ipchains -C forward -p udp -s 172.16.1.0 1025 -d 44.136.8.2 80 -ые eth0 denied

# ipchains -C forward -p icmp -s 172.16.1.0 1025 -d 44.136.8.2 80 -ые eth0 denied

Попробуйте другой порт адресата, опять ожидая, что этот пакет виноват быть отклоненный:

# ipchains -C forward -p tcp -s 172.16.1.0 1025 -d 44.136.8.2 23 -ые eth0 denied

Полная проверка справа тяжелая и длинное, часом настолько же тяжелое, как и разработка правильной конфигурации firewall, но заті защита будет действительно надежной!

Для iptables включили использование набора правил FORWARD через расхождение в реализации набора правил INPUT в netfilter. Это имеет значение: такое отличие значит, что ни одно йз правил не защищает firewall главный компьютер непосредственно. Точно подражать приклада из ipchains, ми скопировали каждое из наших правил в INPUT. Для ясности, ми пропустили все входные пакеты (datagrams), полученные из нашего внешнего интерфейса.

#!/bin/bash

############################################################

# IPTABLES VERSION

# This sample configuration is for а single host firewall configuration

# with no services supported by the firewall machine itself.

############################################################

# USER CONFIGURABLE SECTION

# The name and location of the ipchains utility.

IPTABLES=iptables

# The path to the ipchains executable.

PATH="/sbin"

# Our internal network address space and its supporting network device.

OURNET="172.29.16.0/24"

OURBCAST="172.29.16.255"

OURDEV="eth0"

# The outside address and the network device that supports it.

ANYADDR="0/0"

ANYDEV="eth1"

# The TCP services we wish to allow to pass - "" empty means all ports

# note: comma separated

TCPIN="smtp,www"

TCPOUT="smtp,www,ftp,ftp-data,irc"

# The UDP services we wish to allow to pass - "" empty means all ports

# note: comma separated

UDPIN="domain"

UDPOUT="domain"

# The ICMP services we wish to allow to pass - "" empty means all types

# ref: /usr/include/netinet/ip_icmp.h for type numbers

# note: comma separated

ICMPIN="0,3,11"

ICMPOUT="8,3,11"

# Logging; uncomment the following line to enable logging of datagrams

# that are blocked by the firewall.

# LOGGING=1

# END USER CONFIGURABLE SECTION

############################################################

# Flush the Input table rules

$IPTABLES -F FORWARD

# We want to deny incoming access by default.

$IPTABLES -P FORWARD deny

# Drop all datagrams destined for this host received from outside.

$IPTABLES -A INPUT -ые $ANYDEV -j DROP

# SPOOFING

# We should not accept any datagrams with а source address matching ours

# from the outside, so we deny them.

$IPTABLES -A FORWARD -s $OURNET -ые $ANYDEV -j DROP

# SMURF

# Disallow ICMP to our broadcast address to prevent "Smurf" style attack.

$IPTABLES -A FORWARD -m multiport -p icmp -ые $ANYDEV -d $OURNET -j DENY

# We should accept fragments, in iptables we must do this explicitly.

$IPTABLES -A FORWARD -f -j ACCEPT

# TCP

# We will accept all TCP datagrams belonging to an existing connection

# (i.e. having the ACK bit set) for the TCP ports we're allowing through.

# This should catch more than 95 % of all valid TCP packets.

$IPTABLES -A FORWARD -m multiport -p tcp -d $OURNET -іdports $TCPIN /

! -іtcp-flags SYN,ACK ACK -j ACCEPT

$IPTABLES -A FORWARD -m multiport -p tcp -s $OURNET -іsports $TCPIN /

! -іtcp-flags SYN,ACK ACK -j ACCEPT

# TCP - INCOMING CONNECTIONS

# We will accept connection requests from the outside only on the

# allowed TCP ports.

$IPTABLES -A FORWARD -m multiport -p tcp -ые $ANYDEV -d $OURNET $TCPIN /

-іsyn -j ACCEPT

# TCP - OUTGOING CONNECTIONS

# We will accept all outgoing tcp connection requests on the allowed /

TCP ports.

$IPTABLES -A FORWARD -m multiport -p tcp -ые $OURDEV -d $ANYADDR /

-іdports $TCPOUT -іsyn -j ACCEPT

# UDP - INCOMING

# We will allow UDP datagrams in on the allowed ports and back.

$IPTABLES -A FORWARD -m multiport -p udp -ые $ANYDEV -d $OURNET /

-іdports $UDPIN -j ACCEPT

$IPTABLES -A FORWARD -m multiport -p udp -ые $ANYDEV -s $OURNET /

-іsports $UDPIN -j ACCEPT

# UDP - OUTGOING

# We will allow UDP datagrams out to the allowed ports and back.

$IPTABLES -A FORWARD -m multiport -p udp -ые $OURDEV -d $ANYADDR /

-іdports $UDPOUT -j ACCEPT

$IPTABLES -A FORWARD -m multiport -p udp -ые $OURDEV -s $ANYADDR /

-іsports $UDPOUT -j ACCEPT

# ICMP - INCOMING

# We will allow ICMP datagrams in of the allowed types.

$IPTABLES -A FORWARD -m multiport -p icmp -ые $ANYDEV -d $OURNET /

-іdports $ICMPIN -j ACCEPT

# ICMP - OUTGOING

# We will allow ICMP datagrams out of the allowed types.

$IPTABLES -A FORWARD -m multiport -p icmp -ые $OURDEV -d $ANYADDR /

-іdports $ICMPOUT -j ACCEPT

# DEFAULT and LOGGING

# All remaining datagrams fall through to the default

# rule and are dropped. They will be logged if you've

# configured the LOGGING variable above.

#

if [ "$LOGGING" ] then

# Log barred TCP

$IPTABLES -A FORWARD -m tcp -p tcp -j LOG

# Log barred UDP

$IPTABLES -A FORWARD -m udp -p udp -j LOG

# Log barred ICMP

$IPTABLES -A FORWARD -m udp -p icmp -j LOG

fi

#

# end.

Во многих простых случаях все, что нужно сделать для конкретного применения этого приклада, это поправить на кочану файла блок, обозначенный “USER CONFIGURABLE section” для указания, какие протоколы и пакеты нужно пропускать. Для больше сложных конфигураций нужно поправить этот раздел целиком.

Настройка IP Accounting Поскольку IP accounting очень тесно связан из IP firewall, для их настройки используется одна программа. В зависимости от реализации это ipfwadm, ipchains или iptables. Синтаксис команды очень похож на используемый при задании правил firewall.

Общий синтаксис для IP accounting из ipfwadm:

# ipfwadm -A [direction] [command] [parameters]

Появился новый параметр direction. Он принимает значение in, out или both. Все значения считаются с точками зрения linux-машины, так что in задает входной трафик, out задает выходной трафик, а both оба типа сразу.

Общий синтаксис для ipchains и iptables:

# ipchains -A chain rule-specification

# iptables -A chain rule-specification

Команды ipchains и iptables позволяют Вам определять направление в стиле, больше похожем на определение правил. IP Firewall Chains не позволяет настроить правила для обоих направлений сразу, но позволяет настроить правила в наборе forward, чего старая реализация не умела.

Команды очень похожи на свои аналоги для правил firewall за исключением того, что стратегии здесь не применяются. Ми можем добавлять, вставлять, удалять и пересматривать список правил учета. В случае ipchains и iptables, все имеющие силу правила считаются правилами для учета, и бу-яка команда, которая не определяет опцию -j, выполняет только учет.

Параметры спецификации правила для учета IP такие же, как и для IP firewall.

Учет по адресам

Давайте на примере покажем, как бы мы использовали учет IP.

Допустимо, у нас есть Linux-роутер, что обслуживает два департамента Virtual Brewery. Он имеет два устройства Ethernet, eth0 и eth1, по одному на департамент, и одно устройство PPP, ppp0, для связи через быстродействующую последовательную связь с университетским местечком Groucho Marx University.

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

Для ответа на вопрос, сколько данных каждый отдел передает по PPP, мы могли бы использовать правило, что напоминает:

# ipfwadm -A both -я -W ppp0 -S 172.16.3.0/24 -b

# ipfwadm -A both -я -W ppp0 -S 172.16.4.0/24 -b

или:

# ipchains -A input -ые ppp0 -d 172.16.3.0/24

# ipchains -A output -ые ppp0 -s 172.16.3.0/24

# ipchains -A input -ые ppp0 -d 172.16.4.0/24

# ipchains -A output -ые ppp0 -s 172.16.4.0/24

или из iptables:

# iptables -A FORWARD -ые ppp0 -d 172.16.3.0/24

# iptables -A FORWARD -o ppp0 -s 172.16.3.0/24

# iptables -A FORWARD -ые ppp0 -d 172.16.4.0/24

# iptables -A FORWARD -o ppp0 -s 172.16.4.0/24

Первая половина кожного набора правил задает подсчет всех данных, переданных по интерфейсе ppp0 с исходным адресом или адресом назначения 172.16.3.0/24. Здесь полезная опция -b в ipfwadm и iptables. Вторая половина кожного набора правил задает то же, но для второй сети Ethernet.

Для ответа на вопрос, сколько трафика проходить между департаментами, нужно правило, которое выглядит таким способом:

# ipfwadm -A both -я -S 172.16.3.0/24 -D 172.16.4.0/24 -b

или:

# ipchains -A forward -s 172.16.3.0/24 -d 172.16.4.0/24 -b

или:

# iptables -A FORWARD -s 172.16.3.0/24 -d 172.16.4.0/24

Эти правила будут уважать все пакеты с исходными адресами сети одному департаменту и адресом назначения в сети другого.

Учет по портам сервисов

Допустимо, мы хотим также знати, какой именно трафик преобладает на связи через PPP. Например, нужно выяснить, сколько данных проходить по протоколам FTP, smtp и World Wide Web.

Для сбора этой информации пригоден такой скрипт с правилами:

#!/bin/sh

# Collect FTP, smtp and www volume statistics for data carried on our

# PPP link using ipfwadm

#

ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 ftp ftp-data

ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 smtp

ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 www

или:

#!/bin/sh

# Collect ftp, smtp and www volume statistics for data carried on our

# PPP link using ipchains

#

ipchains -A input -ые ppp0 -p tcp -s 0/0 ftp-data:ftp

ipchains -A output -ые ppp0 -p tcp -d 0/0 ftp-data:ftp

ipchains -A input -ые ppp0 -p tcp -s 0/0 smtp

ipchains -A output -ые ppp0 -p tcp -d 0/0 smtp

ipchains -A input -ые ppp0 -p tcp -s 0/0 www

ipchains -A output -ые ppp0 -p tcp -d 0/0 www

или:

#!/bin/sh

# Collect ftp, smtp and www volume statistics for data carried on our

# PPP link using iptables.

#

iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport ftp-data:ftp

iptables -A FORWARD -o ppp0 -m tcp -p tcp -іdport ftp-data:ftp

iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport smtp

iptables -A FORWARD -o ppp0 -m tcp -p tcp -іdport smtp

iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport www

iptables -A FORWARD -o ppp0 -m tcp -p tcp -іdport www

Здесь есть пару интересных свойств. Во-первых, мы определили протокол. Когда мы определяем порты в наших правилах, мы должны также определить протокол потому, что TCP и UDP имеют отдельные наборы портов. Потому что все эти услуги основаны на TCP, мы определяем именно этот протокол. По-другу, мы определили два сервиса, ftp и ftp-data в одной команде ipfwadm позволяет определять одиночные порты, диапазоны портов или произвольные списки портов. Команда ipchains позволяет определять любой одиночный порт или диапазон портов. Запись "ftp-data:ftp" означает "порты из ftp-data (20) по ftp (21)", так можно кодировать порты в ipchains и iptables. Когда вы имеете список портов в правиле учета, значат, что любые данные для кожного из портов в списке будут прибавлены к общему количеству для этой записи. Поскольку FTP использует два порта, команды и данные, ми прибавили их вместе к общему трафику FTP. Наконец, мы определили исходную адресу как 0/0, что отвечает всем адресам и нужно ipfwadm и ipchains для определения портов.

Теперь нас интересует соотношение полезного трафика по FTP, SMTP и World Wide Web к трафику по другим протоколам. Для этого зададим такие правила:

# ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 ftp ftp-data smtp www

# ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 1:19 22:24 26:79 81:32767

Если вы уже исследовали ваш файл /etc/services, вы увидите, что вторую правило покрывает все порты за исключением (ftp, ftp-data, smtp и www).

Как сделать это с командами ipchains или iptables, ведь они позволяют только один параметр в спецификации порта? Мы можем эксплуатировать обусловленные пользователями цепочки в учете так именно легко, как в правилах firewall. Рассмотрим следующий подход:

# ipchains -N a-essent

# ipchains -N a-noness

# ipchains -A a-essent -j ACCEPT

# ipchains -A a-noness -j ACCEPT

# ipchains -A forward -ые ppp0 -p tcp -s 0/0 ftp-data:ftp -j a-essent

# ipchains -A forward -ые ppp0 -p tcp -s 0/0 smtp -j a-essent

# ipchains -A forward -ые ppp0 -p tcp -s 0/0 www -j a-essent

# ipchains -A forward -j a-noness

Здесь мы создаем два обусловленных пользователей цепочки: a-essent, где мы фиксируем данные для полезного трафика и a-noness, где мы собираем данные для всего другого. Потом прибавим правила к цепочке forward, которые отвечают полезным сервисам и задают переход в цепочку a-essent, что только считает трафик. Последнее правило в нашей цепочке forward задает переход к цепочке a-noness, где тоже есть только одно правило, которое считает трафик. Правило, что переходить к цепочке a-noness, не будет достигнуто бути^-яким пакетом из полезных сервисов, поскольку они будут приняты в их собственной цепочке. Наши счетчики для полезных и других услуг будут доступны только в правилах внутри тихнув цепочек. Это только один подход, что вы могли бы обрати. Реализация того же подхода для iptables:

# iptables -N a-essent

# iptables -N a-noness

# iptables -A a-essent -j ACCEPT

# iptables -A a-noness -j ACCEPT

# iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport ftp-data:ftp -j a-essent

# iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport smtp -j a-essent

# iptables -A FORWARD -ые ppp0 -m tcp -p tcp -іsport www -j a-essent

# iptables -A FORWARD -j a-noness


Это выглядит достаточно простительно. К сожалению, маленькая, но неминуемая проблема при попытке делать учет сервисным типом. Мы обсуждали в одном из предыдущих глав роли MTU в работе с сетями TCP/IP. MTU определяет наибольший пакет, который будет передан на сетевое устройство. Когда пакет получен маршрутизатором, и этот пакет больше, чем MTU интерфейса, который виноват его передать, маршрутизатор выполняет фрагментацию (fragmentation). Маршрутизатор разбивает большой пакет на маленькие части не больше, чем MTU интерфейса, и потом передает эти части. Маршрутизатор формирует новые заглавия для пакетов, которые вышли, по которых получатель сможет возобновить исходный пакет. К сожалению, в течение фрагментации значение порта будет затеряно для всего, кроме первого фрагмента. Значат, что учет IP не может правильно считать фрагментированные пакеты, а только первые фрагменты или нефрагментированные пакеты. Есть маленькая хитрость ipfwadm, что позволяет считать пакеты, даже не зная порт другого и следующего фрагментов. Первая версия программного обеспечения Linux accounting назначала фрагментам поддельный номер порта 0xFFFF, что мы могли перехватывать для учета. Мы фиксируем вторые и следующие фрагменты, используя правило:

# ipfwadm -A both -я -W ppp0 -P tcp -S 0/0 0xFFFF

Реализация IP chains имеет немного больше сложные решения, но результат той же. При использовании команды ipchains нужно использовать правило: # ipchains -A forward -ые ppp0 -p tcp -f

Для iptables подойдет правило: # iptables -A FORWARD -ые ppp0 -m tcp -p tcp -f

Это правило не будет сообщать нам, какой первобытный порт для этих данных, но по крайней мере ми способные видеть, сколько из наших данных является фрагментами.

В ядрах 2.2 вы можете выбирать при настройке ядра опцию, которая разрешает эту проблему, если ваша Linux-машина действует как одиночная точка доступа к сети. Если вы включили при построении ядра опцию IP: always defragment, все пакеты будут повторно собраны маршрутизатором Linux перед маршрутизацией и передачей. Эта операция выполняется перед firewall, и учетный блок видит пакеты. Таким образом, фрагментов просто не будет. В ядрах 2.4 откомпилируйте и загрузите netfilter с модулем forward-fragment.

Учет по пакетам ICMP

Протокол ICMP не использует сервисные номера портов, так что сбор статистики по нему труднее. ICMP использует ряд разных типов пакетов. Многие из их безобидные и нормальные, у той час, как другие появляются только при специальных обстоятельствах. Иногда пытаются обвалити систему, посылая огромное число пакетов ICMP. Эта атака называется ping flooding. Против такой атаки красивый IP firewall, а IP accounting позволить узнать, кто это сделал.

ICMP не использует порты в отличие от TCP и UDP. Вместо их используются типы сообщений ICMP. Ми можем создать правила, чтобы учитывать каждый тип сообщений ICMP. Для этого нужно определить тип сообщения ICMP вместо номера порта в команде ipfwadm. Типы сообщений перечисленные в разделе "Типы пакетов ICMP" главы 9.

Для сбора данных о передаче пакетов ICMP по всем типам сообщений используйте правило:

# ipfwadm -A both -я -P icmp -S 0/0 8

# ipfwadm -A both -я -P icmp -S 0/0 0

# ipfwadm -A both -я -P icmp -S 0/0 0xff

# ipchains -A forward -p icmp -s 0/0 8

# ipchains -A forward -p icmp -s 0/0 0

# ipchains -A forward -p icmp -s 0/0 -f


или в iptables:

# iptables -A FORWARD -m icmp -p icmp -іsports echo-request

# iptables -A FORWARD -m icmp -p icmp -іsports echo-reply

# iptables -A FORWARD -m icmp -p icmp -f

Первое правило собирает информацию относительно пакетов ICMP Echo Request (ping requests), вторую правило собирает информацию относительно пакетов ICMP Echo Reply (ping replies). Третье правило собирает информацию относительно фрагментированных пакетов ICMP. Этот прием подобен описанному для фрагментированных пакетов TCP и UDP.

Если определяем источники й/або адресата в ваших правилах, возможно следить, откуда приходят пакеты, изнутри сети или внешне.

Учет по протоколам

Допустимо, нам интересно, какие протоколы используются нашим трафиком: TCP, UDP или ICMP. Здесь нам поможет правило:

# ipfwadm -A both -я -W ppp0 -P tcp -D 0/0

# ipfwadm -A both -я -W ppp0 -P udp -D 0/0

# ipfwadm -A both -я -W ppp0 -P icmp -D 0/0

или:

# ipchains -A forward -ые ppp0 -p tcp -d 0/0

# ipchains -A forward -ые ppp0 -p udp -d 0/0

# ipchains -A forward -ые ppp0 -p icmp -d 0/0

или:


# iptables -A FORWARD -ые ppp0 -m tcp -p tcp

# iptables -A FORWARD -o ppp0 -m tcp -p tcp

# iptables -A FORWARD -ые ppp0 -m udp -p udp

# iptables -A FORWARD -o ppp0 -m udp -p udp

# iptables -A FORWARD -o ppp0 -m icmp -p icmp

С этими правилами трафик через интерфейс ppp0 будет проанализирован, чтобы определить тип протокола: TCP, UDP или IMCP, и соответствующие счетчики будут модифицированы для кожного пакета.

Использование результатов IP Accounting

Чтобы пересматривать собранные данные о трафике и конфигурированные правила, ми используем команды настройки firewall. Пакеты и счетчики байтов для кожного из наших правил будут перечисленный в выводе.

Команды ipfwadm, ipchains и iptables отличаются по тому, как обрабатываются собирают данные, что, так что ми рассмотрим их независимо.

Пересмотр данных с помощью ipfwadm

Команда ipfwadm позволяет смотреть собранные данные о трафике таким способом:

# ipfwadm -A -l

IP accounting rules

pkts bytes dir prot sourcedestination ports

9833 2345K i/o all 172.16.3.0/24 anywheren/a

56527 33M i/o all 172.16.4.0/24 anywheren/a

Это сообщает нам число пакетов направление, которое представляет каждое. Если ми используем расширенный исходный формат с опцией -ое (не показаний здесь, потому что вывод слишком широкий для страницы), ми также одержимый список опций и имена интерфейсов. Большинство полей в выводе понятные, так что я объясню только некоторые:

dir Направление, в котором применяется правило. Ожидаемые здесь значения: in, out или i/o (оба направлению).

prot Протокол, для которого применяются правила.opt. Кодируется форма параметров, использованных при вызове ipfwadm.

ifname Имя интерфейса, к которому применяется правило.

ifaddress

Адреса интерфейса, к которому применяется правило.

За умалчиванием ipfwadm отображает счетчики пакетов и байтов в сокращенной форме, округленной к ближайшей тысяче (K) или миллиону (M). Можно задать вывод точных чисел без округления:

# ipfwadm -A -l -ое –х Пересмотр данных с помощью ipchains

Команда ipchains не будет отображать данные учета (счетчики пакетов и байтов), если не заданий параметр -v:

# ipchains -L –v очно как из ipfwadm мы можем отображать счетчики пакетов и байтов точно, используя опцию -х:

# ipchains -L -v –х Пересмотр данных с помощью iptables

Команда iptables вести себя очень похоже на ipchains. Опять мы должны использовать -v для пересмотра результатов учета трафика:

# iptables -L –v Как и с командой ipchains можно использовать -х для показа точных данных.

Перезапуск счетчиков

Счетчики для IP accounting могут переполниться. Если они переполняються, Вы будете иметь трудности с определением их реальных значений. Чтобы не было этой проблемы, Вы должны периодически протоколировать их показания и потом сбрасывать счетчики в нуль, чтобы начать собирать информацию для следующего интервала учета.

Команды ipfwadm и ipchains позволяют сделать это просто:


# ipfwadm -A –z или: # ipchains –Z или: # iptables -Z

Вы можете даже совмещать вывод списка и обнуление, чтобы гарантировать что никакие данные учета не затеряны между этими действиями:

# ipfwadm -A -l –z или: # ipchains -L –Z или: # iptables -L -Z -v

Эти команды сначала отобразят все данные из счетчиков, потом немедленно обнулят счетчики и начнут учет сначала. Если Вы регулярно собираете статистику, имеет смысл написать скрипт с соответствующими командами и вызывать его через cron.

Инструкции администратору

Для групп компьютеров создать 3 вида образов дисков:

для группы компьютеров серверов serv/n (n – номер компьютера)

для группы компьютеров рабочих станций WS/n

для группы компьютеров работы с графикой GWS/n

Позволят быстрее возобновлять систему в случаи выхода из строя

Данные каждого работника хранятся на сервере ОРС serv/1 и периодически синхронизируются на OPC serv/2

На каждом сервере создать RAID 0 (в дальнейшем планируется переход на RAID 5.

На сервере OPC serv/2 установить DHCP сервер, который раздает автоматически IP-адреса для пользователей сети.

Сервер OPC serv/2 сделать колером домену.

Сервер OPC serv/2 сделать маршрутизатором, WEB и FTP сервером.

Рекомендации что к возобновлению рабочих станций в будущем при сбоях в их работе:

Установить OS Linux Suse

На файловом сервере (192.168.1.2) есть *.IMG файл диска

Запустите программу True Image и возобновить раздел на диске

Загрузить Linux

Зайти в меню Setup (Командой setup) там выбрать раздел сеть и выбрать настройку интерфейса eth0.

Для возобновления Ос Linux нужно возобновить 2 раздела HDA1 и HDA3

HDA4 лучше не трогать на нем берегутся данные пользователей.

5)IP-address указать автоматически (опция dhcp), dns:192.168.1.1

6)Настроить авторизацию через домен (имя домена stareditor)

На каждой рабочей станций из линукс HDD разбитый таким образом

HDA1 = 1Gb filesystem=EXT3 “/boot”HDA3 = 26 Gb EXT3 “/”

HDA2 = 400 mb “SWAP” HDA4 = 60 Gb EXT3 “/usr”

II)OS Windows XP Professional SP1

загрузить True image

Зайти на файловый сервер (192.168.1. 2), запустить IMG файл диска. К серверу можно подключится тремя способами первый через FTP, второй через сеть ms windows и третий через nfs. Зайти в каталог //secure/recovery/img/windows/win.img

Дальше зайти в Windows и настроить подключение к домену

На каждой рабочей станций из Windows HDD разбитый таким образом

HDA1 = 1Gb filesystem=NTFS “Loader” HDA3 = 50 Gb NTFS “TEMP”

HDA2 = 50gb filesystem=NTFS“Win&APPS” HDA4 = 60 Gb EXT3 “/usr”

Рекомендации что к возобновлению серверу

Его можно возобновить через Образ как привычные WS.

В случаи если конфигураций серверу не будут работать можно настроить его заново в ручную

Установка те Настройки Серверу

Для установки серверу нам будет нужно дистрибутив Linux FC4.

Компьютер OPC serv/2 или OPC serv/1.

Перед установкой Linux нужно убедится, что вы устанавливаете на первый диск.

При учреждении Linux нужно создать такие разделы:


Информация о работе «Организация безопасности сети предприятия с использованием операционной системы Linux»
Раздел: Информатика, программирование
Количество знаков с пробелами: 120458
Количество таблиц: 12
Количество изображений: 1

Похожие работы

Скачать
145783
2
7

... работы за компьютером, а также методы и средства, позволяющие свести к минимуму риск облучения при работе за компьютером. Заключение В данной работе был выполнен обзор средств безопасности, которыми располагает операционная система Linux для безопасного функционирования как в качестве пользовательской системы, так и в качестве сервера. В работе были рассмотрены следующие темы: ·     Обзор ...

Скачать
112646
5
10

... работы пользователя в различной сетевой среде и обеспечивать студентов знаниями в области сетевых технологий. - самостоятельная работа студентов с литературой и в компьютерных классах. Программа курса "Администрирование в информационных системах и администрирование виртуальных машин" определяет подготовку студентов специальности "Информационные системы и технологии" в использовании сетевых ...

Скачать
59639
0
0

... тем не менее к середине 90-х годов компьютеров, не оснащенных Windows 3.1, в мире осталось не так уж много...   Windows NT Одновременно с линией «домашних» ОС Microsoft разрабатывала и другие операционные системы, рассчитанные на корпоративных пользователей, на работу в локальных компьютерных сетях. Первоначаль­ным кандидатом на занятие этой ниши была OS/2, но, как известно, в скором времени ...

Скачать
160219
2
22

... информации: в штатном режиме; изменения в штатном режиме работы; нештатный режим (аварийные ситуации). Глава 2. Обоснование способов защиты операционной системы от программных закладок типа троянский конь 2.1 Общие сведения о троянских программах   Подсоединение локальных компьютерных сетей организаций к сети Internet приводит к необходимости уделять достаточно серьезное внимание ...

0 комментариев


Наверх