Построение корпоративной сети предприятия
Введение
В последнее время всё чаще документооборот и передача корпоративной
информации совершается в электронном виде тем или иным способом. Для этого уже
существует множество протоколов и методов передачи данных. Так, например,
электронный документооборот предприятия производится средствами платформы 1С,
имеющей множество различных конфигураций под любые нужды бизнеса; пересылка
документов по электронной почте с использованием почтовых протоколов POP, IMAP, SMTP; передача больших объемов информации
с помощью FTP протокола; организация
корпоративного сайта, используя веб-технологии.
Информационные технологии 21 века предоставляют большие возможности по
совершенствованию работы предприятий, заменяя человеческий труд машинным,
повышая рост производительности труда и снижая затраты на персонал. Создаются
новые и модернизируются действующие предприятия, территориально
рассредоточенные в пределах населенного пункта, города или даже страны, так как
теперь средства связи гораздо доступнее и дешевле.
Всё это стало возможным, благодаря компьютеризации и использованию
сетевых технологий на предприятии. Но есть вещи, о которых нельзя забывать:
сложность внедрения, безопасность, производительность, защищенность, надежность
системы. Главными проблемами на сегодняшний день стали безопасность и
жизнеспособность компьютерных систем.
Корпоративная информация, передаваемая через открытую сеть Интернет,
легко может быть перехвачена при помощи специальных программ-снифферов -
злоумышленниками и использоваться в корыстных целях. Сюда относятся важнейшая
информация, содержащаяся в конфиденциальных документах. Помимо этого могут быть
перехвачены логины и пароли от корпоративной почты или иных сервисов.
Конфиденциальность передаваемой информации выходит на первый план при создании корпоративной
сети.
Защита информации, передаваемой по каналам связи, используя паролирование
документов или их шифрование, не предоставляет нужного уровня безопасности, так
как любой пароль может быть взломан и это лишь вопрос времени (всё зависит от
его сложности), а с помощью криптоанализа, можно выявить и шифрующий ключ.
Конечно, можно использовать большие и сложные пароли, современные большие ключи
шифрования, но всё это понизит производительность, превратив простой механизм
операции отправки в весьма затратный по временным параметрам. Время будет
затрачено на то, чтобы защитить несколько файлов. А если это надо делать
постоянно и в больших количествах?
Как раз для разрешения указанных противоречий в корпоративных сетях
используются различные протоколы Virtual Private
Network. С их помощью создаются виртуальные
каналы связи поверх сети Интернет. Они дают возможность соединять локальные
сети различных технологий и их сегменты в одну корпоративную сеть. Но самое
главное достоинство, собственно ради чего они и нужны, это шифрование всего
трафика, проходящего по туннелю на канальном уровне модели OSI. Шифрование обеспечивает защиту от
доступа к передаваемой информации, а инкапсуляция не позволяет злоумышленнику
выяснить адресат передаваемой информации.
Всё это дает большие возможности для построения защищенной сети. Но если
что-то выходит из строя, программа или оборудование серверов, то и защищенный
канал перестает работать. За состоянием компьютерного парка постоянно требуется
вести мониторинг, чтобы время простоя в случае падения одного участка сети был
минимальным. Имея множество серверов и сервисов, не так просто узнать, где и
что случилось. Средствами мониторинга можно следить за этим, не обходя каждый
сервер по одному. С помощью удобных таблиц и почтовых уведомлений это не
составит большого труда, и администратор всегда будет в курсе состояния сети,
сервисов и серверов, входящих в эту корпоративную сеть.
Указанные проблемы при построении корпоративных сетей для конкретных
предприятий показывают, что процесс их создания не является тривиальным.
Поэтому в рамках работы ставятся и решаются задачи выбора и реализации
протоколов VPN, оценки производительности
полученных каналов и способы мониторинга за состоянием корпоративной сети в
режиме реального времени конкретного предприятия.
Глава 1.
Предметная область и постановка задачи
.1
Основные сведения о корпоративных сетях
1.1.1
Организация связи
Прежде чем говорить о корпоративной (частной) сети, нужно определить, что
эти слова означают. В последнее время это словосочетание стало настолько
распространенным и модным, что начало терять смысл. В нашем понимании
корпоративная сеть - система, обеспечивающая передачу информации между
различными приложениями, используемыми в системе корпорации. Исходя из этого
вполне абстрактного определения, рассмотрим различные подходы к созданию таких
систем и постараемся наполнить понятие корпоративной сети конкретным
содержанием. При этом будем считать, что сеть должна быть максимально
универсальной, то есть допускать интеграцию уже существующих и будущих
приложений с минимально возможными затратами и ограничениями.
Корпоративная сеть, как правило, является территориально распределенной,
т.е. объединяющей офисы, подразделения и другие структуры, находящиеся на
значительном удалении друг от друга. Часто узлы корпоративной сети оказываются
расположенными в различных городах, а иногда и странах. Принципы, по которым
строится такая сеть, достаточно сильно отличаются от тех, что используются при
создании локальной сети, даже охватывающей несколько зданий. Основное отличие
состоит в том, что территориально распределенные сети используют достаточно
медленные арендованные линии связи. Если при создании локальной сети основные
затраты приходятся на закупку оборудования и прокладку кабеля, то в
территориально-распределенных сетях наиболее существенным элементом стоимости
оказывается арендная плата за использование каналов, которая быстро растет с
увеличением качества и скорости передачи данных. Это ограничение является
принципиальным, и при проектировании корпоративной сети следует предпринимать
все меры для минимизации объемов передаваемых данных. В остальном же
корпоративная сеть не должна вносить ограничений на то, какие именно приложения
и каким образом обрабатывают переносимую по ней информацию.
Под приложениями здесь следует понимать системное программное обеспечение
- системы управления базами данных, почтовые системы, вычислительные ресурсы,
файловый сервис и прочee, так и средства, с которыми работает конечный
пользователь. Основными задачами корпоративной сети оказываются взаимодействие
системных приложений, расположенных в различных узлах, и доступ к ним удаленных
пользователей.
Первая проблема, которую приходится решать при создании корпоративной
сети - организация каналов связи. Если в пределах одного города можно
рассчитывать на аренду выделенных линий, в том числе высокоскоростных, то при
переходе к географически удаленным узлам стоимость аренды каналов становится
просто астрономической, а качество и надежность их часто оказывается весьма
невысокими. Естественным решением этой проблемы является использование уже
существующих глобальных сетей. В этом случае достаточно обеспечить каналы от
офисов до ближайших узлов сети. Задачу доставки информации между узлами
глобальная сеть при этом возьмет на себя. Даже при создании небольшой сети в
пределах одного города следует иметь в виду возможность дальнейшего расширения
и использовать технологии, совместимые с существующими глобальными сетями.
Часто первой, а то и единственной такой сетью, мысль о которой приходит в
голову, оказывается Интернет. При использовании сети Интернет в качестве основы
для корпоративной сети передачи данных выясняется очень интересная вещь.
Оказывается, Интернет сетью-то как раз и не является. Это именно Интернет - междусетие.
Если заглянуть внутрь Интернета, можно увидеть, что информация проходит через
множество абсолютно независимых и по большей части некоммерческих узлов,
связанных через самые разнородные каналы и сети передачи данных.
Еще одна проблема Интернет, широко обсуждаемая в последнее время -
безопасность. Если говорить о частной сети, вполне естественным представляется
защитить передаваемую информацию от чужого взгляда. Непредсказуемость путей
информации между множеством независимых узлов Интернет не только повышает риск
того, что какой-либо не в меру любопытный оператор сети может сложить ваши
данные себе на диск (технически это не так сложно), но и делает невозможным
определение места утечки информации. Существует средства шифрования
передаваемой информации, что позволяет частично решить эту проблему. Другой
аспект проблемы безопасности опять же связан с децентрализованностью Интернет -
нет никого, кто мог бы ограничить доступ к ресурсам вашей частной сети.
Поскольку это открытая система, где все видят всех, то любой желающий может
попробовать попасть в вашу офисную сеть и получить доступ к данным или
программам. Есть, конечно, средства защиты (для них принято название Firewall -
по-русски, точнее по-немецки "брандмауэр" - противопожарная стена).
Однако считать их панацеей не стоит. Любую защиту можно сломать, лишь бы это
окупало стоимость взлома. Необходимо также отметить, что сделать подключенную к
Интернету систему неработоспособной можно и, не вторгаясь в вашу сеть. Известны
случаи несанкционированного доступа к управлению узлами сети, или просто
использования особенностей архитектуры Интернета для нарушения доступа к тому
или иному серверу. Таким образом, рекомендовать Интернет как основу для систем,
в которых требуется надежность и закрытость, никак нельзя. Подключение к
Интернету в рамках корпоративной сети имеет смысл, если вам нужен доступ к тому
громадному информационному пространству, которое собственно и называют Сетью.
1.1.2
Понятие «Корпоративная сеть»
Корпоративная сеть - это сложная система, включающая тысячи самых
разнообразных компонентов: компьютеры разных типов, начиная с настольных и
кончая целыми серверными стойками, системное и прикладное программное
обеспечение, сетевые адаптеры, коммутаторы и маршрутизаторы, кабельную систему.
Успешная деятельность промышленной, финансовой или иной организации во
многом определяется наличием единого информационного пространства. Развитая
информационная система позволяет эффективно справляться с обработкой потоков
информации, циркулирующих между сотрудниками предприятия и принимать им
своевременные и рациональные решения, обеспечивающие выживание предприятия в
жесткой конкурентной борьбе.
Корпоративная сеть - это сложная система, обеспечивающая передачу данных
широкого спектра между различными приложениями, используемыми в единой
информационной системе организации.
Корпоративная сеть позволяет создать единую для всех подразделений базу
данных, вести электронный документооборот, организовать селекторные совещания и
проводить видеоконференции с отдаленными подразделениями, обеспечить все
потребности организации в высококачественной телефонной и факсимильной местной,
международной и междугородной связи, доступе в Интернет и другие интерактивные
сети. Все это уменьшает время реакции на изменения, происходящие в компании, и
обеспечивает оптимальное управление всеми процессами в реальном масштабе
времени. При этом, снижается зависимость организации от операторов
фиксированной и мобильной связи. Частичный отказ от услуг этих операторов
позволяет существенно сократит расходы организации. Появляется возможность
передавать любую конфиденциальную информацию производственного и финансового
характера с уверенностью, что никто, кроме уполномоченных сотрудников компании,
не имеет к ней доступа. Обобщенная схема корпоративной сети представлена на
Рис. 1.1.2.1.
Рис.1.1.2.1 Общая схема корпоративной сети
Основная задача системных интеграторов и администраторов состоит в том,
чтобы эта громоздкая и весьма дорогостоящая система как можно лучше справлялась
с обработкой потоков информации, циркулирующих между сотрудниками предприятия и
позволяла принимать им своевременные и рациональные решения, обеспечивающие
выживание предприятия в жесткой конкурентной борьбе. А так как жизнь не стоит на
месте, то и содержание корпоративной информации, интенсивность ее потоков и
способы ее обработки постоянно меняются. Транспорт Интернет - недорогой и
доступный практически всем предприятиям - существенно облегчил задачу
построения территориальной корпоративной сети, одновременно выдвинув на первый
план задачу защиты корпоративных данных при передаче их через, в высшей степени
общедоступную, публичную сеть с многомиллионным "населением".
1.1.3
Структура корпоративной сети
На Рис. 1.1.3.1 представлена возможная схема структуры корпоративной
сети.
Рис.1.1.3.1 Пример структуры корпоративной сети
Выделим основные устройства:
. Компьютер. Под ним подразумевается стандартное рабочее место, чаще
всего подключенное к локальной сети через кабель типа витая пара. На компьютере
установлено ПО необходимое для работы персонала (офисные приложения, 1С,
почтовые агенты и т.п.), а также средства для удаленного администрирования
данного компьютера.
. Переносное устройство. Это может быть ноутбук, планшет, мобильное
устройство. Чаще всего подключение таких устройств к сети производится с
помощью беспроводной связи. Несет те же функции, что и компьютер, но имеет
главное отличие от стационарного компьютера - мобильность.
. Сетевое МФУ. МФУ - многофункциональное устройство, выполняющее функции
принтера, сканера, копира. Подключение к сети осуществляется путем сетевого
кабеля. Если МФУ не имеет сетевого порта, то оно подключается к компьютеру и с
помощью средств операционной системы открывается на доступ по сети другим
пользователям.
. Wi-fi точка доступа. Устройство, с помощью которого создаются
беспроводные сети. Используется для подключения ноутбуков и других портативных
устройств, имеющих модуль wi-fi. Преимущество перед кабельной
системой заключается в мобильности и ненужности протягивать кабель и портить
интерьер. Скорость доступа в зависимости от используемого стандарта может быть
от 50 до 125 мбит/сек. Для защиты доступа к сети есть несколько стандартов
обеспечения безопасности: WEP, WPA, WPA2 и т.д.
. Ip-телефония. Система связи, обеспечивающая передачу речевого сигнала
по сети Интернет или по любым другим IP-сетям. Сигнал по каналу связи
передаётся в цифровом виде и, как правило, перед передачей преобразовывается
(сжимается) с тем, чтобы удалить избыточность.
. Коммутатор. Устройство, предназначенное для соединения нескольких узлов
компьютерной сети в пределах одного или нескольких сегментов сети. Коммутатор
передаёт данные только непосредственно получателю, исключение составляет
широковещательный трафик (на MAC-адрес FF:FF:FF:FF:FF:FF) всем узлам сети. Это
повышает производительность и безопасность сети, избавляя остальные сегменты
сети от необходимости (и возможности) обрабатывать данные, которые им не
предназначались.
. Маршрутизатор. Сетевое устройство, на основании информации о топологии
сети и определённых правил принимающее решения о пересылке пакетов сетевого
уровня (уровень 3 модели OSI) между различными сегментами сети. Проще говоря,
это устройство, которое связывает 2 и более разные сети (в нашем случае это
локальная сеть офиса и Интернет).
Маршрутизатор может быть типа hardware и software. Hardware маршрутизатор - это готовое устройство, в программную оболочку
которого вшиты базовые функции маршрутизатора. Software маршрутизатор - это
отдельный сервер, обычно с linux/unix операционной системой, на базе
которой с помощью средств firewall’а настраивается маршрутизация и правила обмена трафиком. При выборе того
или иного типа маршрутизатора обычно руководствуются количеством конечных
пользователей, сложностью правил и требуемой надежностью.
. Терминальный сервер (сервер терминалов). Сервер, предоставляющий
клиентам вычислительные ресурсы (процессорное время, память, дисковое
пространство) для решения задач. Технически терминальный сервер представляет
собой очень мощный компьютер (либо кластер), соединенный по сети с
терминальными клиентами, которые, как правило, представляют собой маломощные
или устаревшие рабочие станции или специализированные решения для доступа к
терминальному серверу. Терминал сервер служит для удалённого обслуживания
пользователя с предоставлением рабочего стола.
Преимущества терминального сервера
· Снижение временных расходов на администрирование;
· Повышение безопасности - снижение риска взломов;
· Снижение затрат на программное и аппаратное обеспечение;
Чаще всего в роли операционной системы выступает Microsoft Windows Server.
. Файловый сервер. Это выделенный сервер, оптимизированный для выполнения
файловых операций ввода-вывода. Предназначен для хранения файлов любого типа.
Как правило, обладает большим объемом дискового пространства, и, как правило,
файл-сервер оборудован RAID контроллером для обеспечения быстрой записи
и чтения данных.
. Web-сервер. Это сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров,
и выдающий им HTTP-ответы, обычно вместе с HTML-страницей, изображением,
файлом, медиа-потоком или другими данными. На нем может быть расположен
корпоративный сайт или любой другой веб-сервис.
Чаще всего используется операционная система семейства linux/unix, так как они по сравнению с другими более надежны и
более производительны. В роли самого веб-сервера выступает специальное
программное обеспечение, например Apache или nginx.
. Сервер приложений. Это программная платформа, предназначенная для
эффективного исполнения процедур (программ, механических операций, скриптов)
которые поддерживают построение приложений. Сервер приложений действует как
набор компонент доступных разработчику программного обеспечения через API
(Интерфейс прикладного программирования) определенный самой платформой.
На предприятии, очень часто используется приложение 1С. У этой
программы есть несколько вариантов работы с базой данных: файловый режим - вся
база находится в одном файле ( имеет смысл, когда работающих с базой клиентов
не больше 10-15 человек), клиент-серверный режим - база данных находится на sql сервере. В клиент-серверном режиме
пользователи не напрямую работают с базой данных, а через 1С сервер, который
обрабатывает запросы в понимаемую форму для sql сервера.
Этот режим повышает производительность, надежность, и улучшает процессы
администрирования базы данных.
Как раз для таких целей и существует сервер приложений.
. Сервер БД. Сервер БД обслуживает базу данных и отвечает за целостность
и сохранность данных, а также обеспечивает операции ввода-вывода при доступе
клиента к информации. Большинство СУБД используют язык SQL (Structured
Query Language - язык структурированных запросов), так как он удобен для
описания логических подмножеств БД.
Назначение SQL:
создание БД и таблицы с полным описанием их структуры;
выполнение основных операций манипулирования данными (такие как вставка,
модификация и удаление данных из таблиц);
выполнение простых и сложных запросов.
Одна из ключевых особенностей языка SQL заключается в том, что с его
помощью формируются запросы, описывающие какую информацию из базы данных
необходимо получить, а пути решения этой задачи программа определяет сама.
1.2
Виртуальные частные сети
1.2.1
Организация VPN
В современных условиях развития информационных технологий, преимущества
создания виртуальных частных сетей неоспоримы. Прежде чем перечислить наиболее
очевидные и полезные способы организации виртуальных частных сетей, необходимо
привести само понятие.
Виртуальная частная сеть или просто VPN (Virtual Private Network)
- это технология, при которой происходит обмен информацией с удаленной
локальной сетью по виртуальному каналу через сеть общего пользования с
имитацией частного подключения «точка-точка». Под сетью общего пользования
можно подразумевать как Интернет, так и другую интрасеть.
Виртуальные частные сети позволяют удаленному пользователю, прошедшему
аутентификацию, воспользоваться корпоративной сетью наравне с клиентами
центральной корпоративной сети.
Центральная сеть любой организации может аутентифицировать пользователей
несмотря на то, что они получают доступ через публичную сеть.
Удачно спроектированная VPN
может принести организации немало выгод. Ее внедрение позволяет:
· расширить географию доступа сотрудников к инфраструктуре организации;
· повысить безопасность передачи информации;
· уменьшить эксплуатационные затраты по сравнению с
традиционными глобальными сетями;
· сократить время передачи информации и снизить командировочные
расходы;
· повысить производительность труда;
· упростить топологию сети;
· увеличить мобильность пользователей и дать им более гибкий
график работы.
Основные свойства VPN:
· безопасность;
· надежность;
· масштабируемость;
· управляемость.
Рассмотрим вариант организации сети учреждения с филиалами с использованием
виртуальных частных сетей (рис. 1.2.1.1).
Рисунок 1.2.1.1 Организация сети учреждения с филиалами с использованием VPN
Особенности такой организации:
· Cкорость передачи данных. Провайдеры могут обеспечить
достаточно высокоскоростной доступ в Интернет, однако с локальной, проверенной
временем 100 Мбит сетью он все равно не сравнится. Но так ли важно каждый день
перекачивать сотни мегабайт информации через организованную сеть? Для доступа к
локальному сайту предприятия, пересылки электронного письма с документом вполне
достаточно скорости, которой могут обеспечить Интернет-провайдеры;
· Безопасность передаваемых данных. При организации VPN передаваемая
информация попадает во внешнюю сеть, поэтому об организации безопасности
придется позаботиться заранее. Но уже сегодня существуют достаточно стойкие к
атакам алгоритмы шифрования информации, которые позволяют владельцам
передаваемых данных не беспокоиться за безопасность;
· За организованную сеть никому не надо платить. Плата за использование
Интернета в наши дни сама по себе достаточно демократичная, а гибкие тарифы
позволяю выбрать каждому оптимальный пакет;
· Масштабируемость системы. При открытии нового филиала или
добавления сотрудника, которому позволено пользоваться удаленным доступом не
нужно никаких дополнительных затрат на коммуникации.
· Гибкость системы. Для VPN не важно, откуда вы осуществляете
доступ. Отдельно взятый сотрудник может работать из дома, а может во время
чтения почты из корпоративного почтового ящика фирмы пребывать в командировке в
абсолютно другом государстве.
Способы реализации VPN:
1. В виде специального программно-аппаратного обеспечения
Реализация VPN сети осуществляется при помощи специального комплекса
программно-аппаратных средств. Такая реализация обеспечивает высокую
производительность и, как правило, высокую степень защищённости.
2. В виде программного решения
Используют персональный компьютер со специальным программным
обеспечением, обеспечивающим функциональность VPN.
3. Интегрированное решение
Функциональность VPN обеспечивает комплекс, решающий также задачи
фильтрации сетевого трафика, организации сетевого экрана и обеспечения качества
обслуживания.
Способы организации VPN:
В VPN наиболее целесообразно выделить следующие три основных способа:
1. Удаленный доступ отдельно взятых сотрудников к корпоративной сети
организации через модем либо общедоступную сеть
Организация такой модели виртуальной частной сети предполагает наличие
VPN-сервера в центральном офисе, к которому подключаются удаленные клиенты.
Удаленные клиенты могут работать на дому, либо, используя переносной компьютер,
из любого места планеты, где есть доступ к всемирной паутине.
Данный способ организации виртуальной частной сети целесообразно
применять в случае географически не привязанного доступа сотрудников к
корпоративной сети организации.
2. Связь в одну общую сеть территориально распределенных филиалов фирмы.
Этот способ называется Intranet VPN.
При организации такой схемы подключения требуется наличие VPN серверов
равное количеству связываемых офисов.
Данный способ целесообразно использовать как для обыкновенных филиалов,
так и для мобильных офисов, которые будут иметь доступ к ресурсам головного
офиса, а также без проблем обмениваться данными между собой.
3. Так называемый Extranet VPN, когда через безопасные каналы доступа
предоставляется доступ для клиентов организации. Набирает широкое
распространение в связи с популярностью электронной коммерции. В этом случае
для удаленных клиентов будут очень урезаны возможности по использованию
корпоративной сети, фактически они будут ограничены доступом к тем ресурсам
компании, которые необходимы при работе со своими клиентами, например, сайта с
коммерческими предложениями, а VPN используется в этом случае для безопасной
пересылки конфиденциальных данных. Средства защиты информации - протоколы
шифрования.
4. Client/Server VPN. Он обеспечивает защиту передаваемых данных
между двумя узлами (не сетями) корпоративной сети. Особенность данного варианта
в том, что VPN строится между узлами, находящимися, как правило, в одном
сегменте сети, например, между рабочей станцией и сервером. Такая необходимость
очень часто возникает в тех случаях, когда в одной физической сети необходимо
создать несколько логических сетей. Например, когда надо разделить трафик между
финансовым департаментом и отделом кадров, обращающихся к серверам, находящимся
в одном физическом сегменте. Этот вариант похож на технологию VLAN, но
вместо разделения трафика, используется его шифрование.
1.2.2 OpenVPN
Поскольку данные в виртуальных частных сетях передаются через
общедоступную сеть, следовательно, они должны быть надежно защищены от
посторонних глаз.
Для реализации защиты передаваемой информации существует множество
протоколов, которые защищают VPN, но все они подразделяются на два вида и
работают в паре:
· протоколы, инкапсулирующие данные и формирующие VPN соединение;
· протоколы, шифрующие данные внутри созданного туннеля.
Первый тип протоколов устанавливает туннелированное соединение, а второй
тип отвечает непосредственно за шифрование данных. Сравним две реализации
создания VPN на основе стандарта IPsec и OpenVpn.
Для объединения в сеть нескольких филиалов сегодня наиболее часто
используется стандарт IPSec.
Слабые места IPSec общеизвестны. Сложная структура с
довольно непростой при определенных обстоятельствах конфигурацией, разные (в
зависимости от производителя) реализации и «бреши» в системе безопасности,
проблемы с firewall’ом - вот лишь немногие недостатки,
постоянно подстегивающие разработку современных технологий виртуальных частных
сетей (Virtual Private Network, VPN).
Результатом стало появление проекта открытого программного обеспечения OpenVPN. Последняя его версия - 2.0 -
предлагает гораздо более широкий спектр возможностей, во многом превосходящих
функциональность классических VPN.
Технология OpenVPN превратилась в серьезную альтернативу IPSec.
Организации, где не требуется в обязательном порядке применять IPSec, могут
благодаря OpenVPN без больших затрат получить многочисленные преимущества,
ранее недоступные. Опции повсеместной защиты ноутбуков посредством центрального
корпоративного firewall’а,
туннелирования firewall’ов и
посредников WWW, а также ретрансляции широковещательного трафика заметно
превышают функциональный охват IPSec, причем используемые технологии (SSL,
устройства Tap/Tun) представляют собой испытанные и проверенные стандарты.
OpenVPN стала самой современной и надежной технологией VPN из доступных, при
этом бесплатной и очень простой в конфигурировании.
Остановимся на технологии OpenVPN,
чтобы познакомиться с ней поближе.
Созданный в 2002 году, OpenVPN
- это инструмент с открытым исходным кодом, используемый для построения site-to-site VPN сетей с использованием SSL/TLS протокола или с разделяемыми ключами. Он исполняет
роль безопасного туннеля для передачи данных через один TCP/UDP порт в небезопасной сети как Интернет.
Преимущество OpenVPN
заключается в легкости инсталляции и настройки, что является редким случаем для
таких инструментов.
OpenVPN
может быть установлен практически на любую платформу включая: Linux, Windows 2000/XP/Vista, OpenBSD, FreeBSD,
NetBSD, Mac OS X и Solaris.
Linux
системы должны работать на ядре 2.4 или выше. Принципы конфигурирования
одинаковы для всех платформ.
OpenVPN
использует клиент/сервер архитектуру. Он должен быть установлен на все узлы VPN сети, где один узел должен быть
сервером, а остальные клиентами.
OpenVPN создает TCP
или UDP туннель, при этом данные проходящие
через этот туннель шифруются. Стандартный порт для OpenVPN - UDP 1194, но можно
использовать любой другой TCP
или UDP порт. С версии 2.0 один и тот же
порт можно использовать для нескольких туннелей на OpenVPN сервере.
Можно создать Ethernet (Мост)
или IP (Маршрутизация) VPN сеть используя соответствующие
сетевые драйвера TAP или TUN. TAP/TUN
доступны на всех платформах и включены в ядро Linux начиная с версии 2.4.
Опции подробно описаны в страницах справочного руководства (man pages).
При использовании статических ключей, VPN шлюзы используют один и тот же ключ для шифрования и
дешифрования данных. В этом случае настройка будет довольно простой, но при
этом возникает проблема передачи и безопасности ключа. Если кто-то завладеет
этим ключом, то он может дешифровать данные.
Для того чтобы избежать этой проблемы, необходимо использовать
Инфраструктуру Открытых Ключей (PKI). При этом каждый узел владеет двумя ключами: открытый ключ,
известный всем и закрытый ключ, доступный только его владельцу. Такую структуру
использует OpenSSL, интегрированный в OpenVPN, для аутентификации VPN узлов перед тем как начать
передавать зашифрованные данные. Этот режим считается более предпочтительным.
Обратим внимание на структуру сети и концепцию безопасных ключей для
лучшего понимания OpenVPN.
В течении многих лет IPSec был единственным протоколом который мог
обеспечить шифрование данных в site-to-site и клиент/сервер VPN сетях. К
счастью ситуация изменилась с появлением SSL протокола. Предназначенный для
обеспечения безопасности таких протоколов как HTTP, SSL позволяет сейчас
обеспечить безопасность для любого приложения и шифровать TCP или UDP туннели в
site-to-site и клиент/сервер VPN сетях.
SSL (Secure Sockets Layers) был создан Netscape в 90-х. Было
выпущено две версии v2 (1994) и v3 (1995). В 2001 IETF купила и обновила
патент. В это же время SSL был переименован в TLS (Transport Layer
Security). выполняет две основные задачи:
Аутентификация сервера и клиента по средством Инфраструктуры Открытых
Ключей (PKI).
Создает шифрованное соединение между клиентом и сервером для обмена сообщениями.
Стандартная модель OSI состоит из семи уровней, в то время как четырех
уровневая модель наиболее подходит для TCP/IP (уровень приложений,
транспортный, сетевой, канальный, физический), который используется огромным
количеством приложений.разположен между транспортным уровнем и уровнем
приложения и будет шифровать уровень приложения.
Работа SSL проходит в 4 этапа:
1. SSL Handshake: Определяется метод шифрования для передачи данных;
2. SSL Change Cipher Spec:
Создание и передача ключа между клиентом и сервером на эту сессию;
. SSL Alert: Доставка сообщений SSL об ошибках между клиентом и сервером;
. SSL Record: Передача данных.
Для шифрования и аутентификации OpenVPN использует OpenSSL, который
является бесплатным и распространяется с открытым исходным кодом.
Выделим основные плюсы и минусы этой технологии:
+ Зрелые криптографические алгоритмы (SSL/TLS);
+ SSL/TLS являются отраслевыми стандартами и входят в сферу
ответственности IETF (Internet
Engineering Task Force);
+ Простая технология, простая инсталляция, простое конфигурирование;
+ TCP/UDP, для множества внешних сотрудников нужен лишь один порт;
+ Индивидуальная конфигурация для клиентов;
+ Гибкость вследствие использования устройств Tun/Tap;
+ Никаких проблем с технологией NAT;
+ Быстрое повторное подключение, прозрачность для DynDNS, сеансы
сохраняются;
+ Сжатие;
+ Высокая совместимость с firewall’ми и посредниками WWW;
+ Производительность (достаточно маломощных процессоров) ;
+ Модульная расширяемая архитектура;
+ Выполнение в пользовательском пространстве - в Linux не нужны
привилегии администратора;
+ Высокая производительность даже на старых машинах;
+ Формирование трафика уже включено;
Нет специализированных устройств;
Дефицит обученного персонала;
Отсутствие интерфейсов Web или интерфейсов для администрирования.
1.2.3 SSH
Еще один протокол, с помощью которого можно создавать VPN - это SSH.
SSH (Secure SHell - «безопасная оболочка») - сетевой протокол
сеансового уровня, позволяющий производить удалённое управление операционной
системой и туннелирование TCP-соединений
(например, для передачи файлов). Схож по функциональности с протоколами Telnet, но, в отличие от него, шифрует весь
трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных
систем.
SSH
позволяет безопасно передавать в незащищенной среде практически любой другой
сетевой протокол. Таким образом, можно не только удаленно работать на
компьютере через командную оболочку, но и передавать по шифрованному каналу
звуковой поток или видео (например, с веб-камеры). Также SSH может использовать сжатие
передаваемых данных для последующего их шифрования.
Поддержка SSH реализована во всех UNIX‑ïîäîáíûõ
ñèñòåìàõ, è
íà
áîëüøèíñòâå
èç íèõ â ÷èñëå
ñòàíäàðòíûõ
óòèëèò
ïðèñóòñòâóþò
êëèåíò è
ñåðâåð ssh.
Ñóùåñòâóåò
ìíîæåñòâî
ðåàëèçàöèé
SSH-êëèåíòîâ è
äëÿ íå-UNIX ÎÑ.-
ýòî ïðîòîêîë
ñåàíñîâîãî
óðîâíÿ.
SSH-ñåðâåð
îáû÷íî ïðîñëóøèâàåò
ñîåäèíåíèÿ
íà TCP-ïîðòó 22. Äëÿ
àóòåíòèôèêàöèè
ñåðâåðà â SSH
èñïîëüçóåòñÿ
ïðîòîêîë
àóòåíòèôèêàöèè
ñòîðîí íà
îñíîâå
àëãîðèòìîâ
ýëåêòðîííî-öèôðîâîé
ïîäïèñè RSA или DSA. Для аутентификации клиента также
может использоваться ЭЦП RSA или DSA, но допускается также аутентификация при
помощи пароля и даже ip-адреса хоста. Аутентификация по паролю наиболее
распространена; она безопасна, так как пароль передается по зашифрованному
виртуальному каналу. Аутентификация по ip-адресу небезопасна, эту возможность
чаще всего отключают. Для создания общего секрета (сеансового ключа) используется
алгоритм Диффи - Хеллмана (DH). Для шифрования передаваемых данных
используется симметричное шифрование, алгоритмы AES, Blowfish или
3DES. Целостность переданных данных проверяется с помощью HMAC-SHA1/HMAC-MD5.
Для сжатия шифруемых данных может использоваться алгоритм LempelZiv
(LZ77), который обеспечивает такой же уровень сжатия, что и архиватор ZIP.
Сжатие SSH включается опционально.
Для создания VPN сетей
используется так называемая технология ssh туннелирования. SSH-туннель - это туннель,
создаваемый посредством SSH-соединения и используемый для шифрования
туннелированных данных. Используется для того, чтобы обезопасить передачу
данных в Интернете. Особенность состоит в том, что незашифрованный трафик
какого-либо протокола шифруется на одном конце SSH-соединения и
расшифровывается на другом.
Практическая реализация может выполняться несколькими способами:
· Использованием приложений, умеющих работать через SSH-туннель;
· Созданием VPN-туннеля, подходит практически для любых
приложений;
· Если приложение работает с одним определённым сервером, можно
настроить SSH-клиент таким образом, чтобы он пропускал через SSH-туннель
TCP-соединения, приходящие на определённый TCP-порт машины, на которой запущен
SSH-клиент. Например, клиенты терминального сервера подключаются по умолчанию
на порт 3389. Тогда, чтобы настроить подключение к серверу через SSH-туннель,
SSH-клиент настраивается на перенаправление подключений с любого порта
локальной машины (например порт 5000) на удалённый сервер (например, server.com и порт 3389). В данном случае
клиент настраивается на подключение к серверу localhost (если ssh-клиент
запущен на той же машине что и терминальный клиент) и порт 5000.
Плюсы этой технологии создания vpn сетей в том, что для реализации не нужно устанавливать и настраивать
дополнительный софт. Серверная и клиентская часть обычно ставятся вместе с unix/linux системой по умолчанию. Так же стоит отметить, что
настройка проходит гораздо легче, чем у любой другой технологии. Эта
технология, хотя немного и уступает по производительности, но для создания
защищенных сетей подходит больше чем протокол IPsec, так как по масштабируемости и легкости настраивания
каналов он в разы превосходит его.
1.3 Ìîíèòîðèíã
êîðïîðàòèâíûõ
ñåòåé
Äëÿ ïîâûøåíèÿ
íàäåæíîñòè ðàáîòû
êîðïîðàòèâíîé
ñåòè, íåîáõîäèìî
ðåøèòü âîïðîñû
å¸ ìîíèòîðèíãà.
Òåðìèíîì ìîíèòîðèíã
ñåòè íàçûâàþò
ðàáîòó ñèñòåìû,
êîòîðàÿ âûïîëíÿåò
ïîñòîÿííîå íàáëþäåíèå
çà êîìïüþòåðíîé
ñåòüþ â ïîèñêàõ
ìåäëåííûõ èëè
íåèñïðàâíûõ
ñèñòåì è êîòîðàÿ
ïðè îáíàðóæåíèè
ñáîåâ ñîîáùàåò
î íèõ ñåòåâîìó
àäìèíèñòðàòîðó
ñ ïîìîùüþ ïî÷òû,
ïåéäæåðà èëè äðóãèõ
ñðåäñòâ îïîâåùåíèÿ.
Ýòè çàäà÷è ÿâëÿþòñÿ
ïîäìíîæåñòâîì
çàäà÷ óïðàâëåíèÿ
ñåòüþ.
 òî âðåìÿ êàê
ñèñòåìà îáíàðóæåíèÿ
âòîðæåíèé ñëåäèò
çà ïîÿâëåíèåì
óãðîç èçâíå, ñèñòåìà
ìîíèòîðèíãà
ñåòè âûïîëíÿåò
íàáëþäåíèå çà
ñåòüþ â ïîèñêàõ
ïðîáëåì, âûçâàííûõ
ïåðåãðóæåííûìè
è/èëè îòêàçàâøèìè
ñåðâåðàìè, äðóãèìè
óñòðîéñòâàìè
èëè ñåòåâûìè
ñîåäèíåíèÿìè.
Íàïðèìåð, äëÿ
òîãî, ÷òîáû îïðåäåëèòü
ñîñòîÿíèå âåá-ñåðâåðà,
ïðîãðàììà, âûïîëíÿþùàÿ
ìîíèòîðèíã, ìîæåò
ïåðèîäè÷åñêè
îòïðàâëÿòü çàïðîñ
HTTP íà ïîëó÷åíèå
ñòðàíèöû; äëÿ ïî÷òîâûõ
ñåðâåðîâ ìîæíî
îòïðàâèòü òåñòîâîå
ñîîáùåíèå ïî
SMTP è ïîëó÷èòü ïî
IMAP èëè POP3.
Íåóäàâøèåñÿ
çàïðîñû (íàïðèìåð,
â òîì ñëó÷àå, êîãäà
ñîåäèíåíèå íå
ìîæåò áûòü óñòàíîâëåíî,
îíî çàâåðøàåòñÿ
ïî òàéì-àóòó,
èëè êîãäà ñîîáùåíèå
íå áûëî äîñòàâëåíî)
îáû÷íî âûçûâàþò
ðåàêöèþ ñî ñòîðîíû
ñèñòåìû ìîíèòîðèíãà.
 êà÷åñòâå ðåàêöèè
ìîæåò áûòü:
· îòïðàâëåí ñèãíàë
òðåâîãè ñèñòåìíîìó
àäìèíèñòðàòîðó;
· àâòîìàòè÷åñêè
àêòèâèðîâàíà
ñèñòåìà çàùèòû
îò ñáîåâ, êîòîðàÿ
âðåìåííî âûâåäåò
ïðîáëåìíûé ñåðâåð
èç ýêñïëóàòàöèè,
çàìåíèâ åãî ðåçåðâíûì,
äî òåõ ïîð, ïîêà
ïðîáëåìà íå áóäåò
ðåøåíà.
Êðîìå îòêàçîâ
ñèñòåì, ïðîöåññîâ,
îáîðóäîâàíèÿ,
òàêæå ñëåäÿò
è çà èõ ñîñòîÿíèåì
â öåëîì.
Çíàÿ, êàêîé ïîòîê
èíôîðìàöèè ïðîõîäèò
÷åðåç ñåòåâîé
èíòåðôåéñ, ìîæíî
áóäåò âûáðàòü
îïòèìàëüíûé
ïàêåò Èíòåðíåòà
ó ïîñòàâùèêà,
ñýêîíîìèâ ïðè
ýòîì íå ìàëûå
äåíüãè. Ñåé÷àñ
ýòî äîâîëüíî àêòóàëüíàÿ
ïðîáëåìà, òàê
êàê ÷àñòî â áèçíåñ
öåíòðàõ ñóùåñòâóåò
äîãîâîðåííîñòü
ñ ïðîâàéäåðîì
î òîì, ÷òî òîëüêî
îíè èìåþò ïðàâî
äàâàòü äîñòóï
â Èíòåðíåò. Ñëåäîâàòåëüíî,
è öåíîâàÿ ïîëèòèêà
ïîëíîñòüþ óñòàíàâëèâàåòñÿ
ïðîâàéäåðîì. Öåíû
ñîâåðøåííî íåñîïîñòàâèìû
ñ òåìè, ÷òî óñòàíàâëèâàþòñÿ
â ïðîöåññå æåñòêîé
êîíêóðåíöèè.
Ïî ãðàôèêàì
íàãðóçêè íà ïðîöåññîð,
îáúåìó çàíèìàåìîé
îïåðàòèâíîé
ïàìÿòè, ìîæíî
ñóäèòü î äîñòàòî÷íîñòè
ðåñóðñîâ ñåðâåðà
äëÿ çàäà÷, èñïîëíÿåìûõ
íà íåì. Ýòî äàåò
îáîñíîâàíèå
äëÿ îáíîâëåíèÿ
ñåðâåðà.
Ïðàêòè÷åñêè
âî âñåõ ôèðìàõ
åñòü áîëüøèå
îáúåìû èíôîðìàöèè,
êîòîðûå âêëþ÷àþò
â ñåáÿ âàæíûå
äîêóìåíòû, áàçû
äàííûõ, àðõèâû
è ò.ä. Ïîòåðÿ ýòèõ
äîêóìåíòîâ ïðèíåñåò
ôèðìå áîëüøèå
óáûòêè. Äëÿ òîãî
÷òîáû âñåãäà
èìåòü ðåçåðâíóþ
êîïèþ ýòèõ ôàéëîâ,
íàñòðàèâàþòñÿ
ïëàíû ðåçåðâíîãî
êîïèðîâàíèÿ äàííûõ.
Ñîçäàþòñÿ îáðàçû
äàííûõ è ñêëàäûâàþòñÿ
íà ôàéë-ñåðâåðå.
Çà ñâîáîäíûì
ìåñòîì íà ôàéë-ñåðâåðå
è çà ñîçäàíèåì
îáðàçîâ òîæå
íåîáõîäèìî íàñòðàèâàòü
ñëåæåíèå.
Ñëåæåíèå ÷àùå
âñåãî ïðîèçâîäèòñÿ
çà ñîñòîÿíèåì
ñåðâåðîâ, ìàðøðóòèçàòîðîâ
è äðóãîãî ñåòåâîãî
îáîðóäîâàíèÿ.
Ãðàìîòíî íàñòðîåííàÿ
ñèñòåìà ìîíèòîðèíãà
ìîæåò ñíèçèòü
êîë-âî îòêàçîâ
ñåòè è óâåëè÷èòü
å¸ îòêàçîóñòîé÷èâîñòü.
 òî æå âðåìÿ, àäìèíèñòðàòîðû
ñåòè áóäóò áûñòðî
è âîâðåìÿ îïîâåùåíû
î íåïîëàäêàõ.
Åäèíñòâåííûì
íåäîñòàòêîì
òàêèõ ñèñòåì
ÿâëÿåòñÿ ñëîæíîñòü
ñîçäàíèÿ è íàñòðîéêè.
Ñóùåñòâóåò ìíîæåñòâî
ãîòîâûõ êîìïëåêñíûõ
ðåøåíèé, íî íå
âñåãäà ïî òåì
èëè èíûì ïðè÷èíàì
îíè ïîäõîäÿò ïîä
óæå íàñòðîåííóþ
è îòëàæåííóþ
êîðïîðàòèâíóþ
ñåòü. Ïîýòîìó
ïðèõîäèòüñÿ âûáèðàòü
è êîìáèíèðîâàòü
ýòè ñèñòåìû
äëÿ äîñòèæåíèÿ
æåëàåìîãî ðåçóëüòàòà
1.4 Ïîñòàíîâêà
çàäà÷è
Îäíî èç îñíîâíûõ
òðåáîâàíèé, ïðåäúÿâëÿåìûõ
ê ïîñòàíîâêå
è ðåàëèçàöèè
çàäà÷ äèïëîìíîãî
ïðîåêòèðîâàíèÿ,
ñîñòîèò â òîì,
÷òî âñå ðåçóëüòàòû
è íà èõ îñíîâå
âûâîäû äîëæíû
áûòü ïîëó÷åíû
â ðåàëüíûõ óñëîâèÿõ
íà ðåàëüíîì ïðåäïðèÿòèè.
Ýòî äàåò âîçìîæíîñòü
ïðèäàòü ðåçóëüòàòàì
äèïëîìíîé ðàáîòû
ïðàêòè÷åñêóþ
çíà÷èìîñòü. Ïðîâåäÿ
ðàáîòó â ðåàëüíûõ
óñëîâèÿõ, ìîæíî
ðåàëüíî îöåíèòü
ýôôåêòèâíîñòü
èñïîëüçóåìûõ
ñåòåâûõ òåõíîëîãèé
íà îñíîâå êîëè÷åñòâåííîé
îöåíêè ïðîèçâîäèòåëüíîñòè
ñåòåâûõ êàíàëîâ.
Êðàòêî îïèøåì
ïðåäìåòíóþ îáëàñòü.
Ôèðìà çàíèìàåòñÿ
ïðîäàæåé ñàóí,
áàíü è ñîïóòñòâóþùèõ
ýòîìó ìàòåðèàëîâ.
Ñîñòîèò èç îôèñà,
ñêëàäà è ìàãàçèíîâ,
òåððèòîðèàëüíî
ðàçíåñåííûõ
ïî âñåìó ãîðîäó.
Âñå ñåðâåðà ðàñïîëîæåíû
ó ïðîâàéäåðà (êîëëîêàöèÿ),
à èìåííî: ñåðâåðà
òåðìèíàëîâ, ñåðâåð
ïëàòôîðìû 1Ñ,
ñåðâåð áàçû äàííûõ
MS SQL è ìàðøðóòèçàòîð
ïîä óïðàâëåíèåì
îïåðàöèîííîé
ñèñòåìû CentOs 5.5 ñ öåïî÷êàìè
NAT â ïðàâèëàõ
iPtables.
 îñíîâíîì ðàáîòà
ïåðñîíàëà ïðîèñõîäèò
íà ñåðâåðàõ òåðìèíàëîâ,
÷òî îáåñïå÷èâàåò
íåêîòîðóþ öåíòðàëèçîâàííîñòü,
ïðîñòîòó àäìèíèñòðèðîâàíèÿ
(âñåãäà ëåã÷å
àäìèíèñòðèðîâàòü
3 ñåðâåðà, ÷åì 50 êîìïüþòåðîâ)
è, çà ñ÷åò íàñòðîåê
iPtables íà ìàðøðóòèçàòîðå,
áåçîïàñíîñòü.
Ïîäêëþ÷åíèå èäåò
ïî ïðîòîêîëó RDP (Remote Desctop Protokol). Òàê æå äëÿ
ðàáîòû ïîñòîÿííî
òðåáóåòñÿ îáìåí
èíôîðìàöèåé
ìåæäó îôèñàìè.
Ïðåäïðèÿòèå ðàáîòàåò
ñ êîíôèäåíöèàëüíîé
èíôîðìàöèåé,
ïîýòîìó âàæíà
áåçîïàñíîñòü
ïåðåäà÷è äàííûõ.
Ìàãàçèíû ðàáîòàþ
òîëüêî ñ ñåðâåðàìè,
íàõîäÿùèìèñÿ
ó ïðîâàéäåðà.
 îôèñå è íà ñêëàäå
â êà÷åñòâå ìàðøðóòèçàòîðîâ
âûñòóïàåò ñåðâåð
ïîä îïåðàöèîííîé
ñèñòåìîé Centos 5.5 ñ íàñòðîåííûìè
öåïî÷êàìè nat â iptables.  ìàãàçèíàõ
ñòîÿò îáû÷íûå
hardware ìàðøðóòèçàòîðû.
Íà ñåðâåðà òåðìèíàëîâ,
1Ñ ñåðâåð, ñåðâåð
MS SQL 2008 óñòàíîâëåíà
îïåðàöèîííàÿ
ñèñòåìà MS Windows 2003 R2.
Äëÿ ïîñòðîåíèÿ
ñèñòåìû, îáëàäàþùåé
òðåáóåìûìè ïîòðåáèòåëüñêèìè
ñâîéñòâàìè è
ôóíêöèîíèðóþùåé
â óñëîâèÿõ ðåàëüíûõ
îãðàíè÷åíèé
íåîáõîäèìî ðåøèòü
ñëåäóùèå çàäà÷è:
1. Ñîçäàòü çàùèùåííóþ
êîðïîðàòèâíóþ
ñåòü äëÿ ïðåäïðèÿòèÿ;
2. Ïîäêëþ÷èòü
ïî çàùèùåííûì
êàíàëàì ìàãàçèíû
ê ñåðâåðàì;
. Îöåíèòü ïðîèçâîäèòåëüíîñòü
ñîçäàííûõ êàíàëîâ;
. Ñîçäàòü ñèñòåìó
ìîíèòîðèíãà
è îïîâåùåíèÿ
î ïðîáëåìàõ ñ
îáîðóäîâàíèåì
êîðïîðàòèâíîé
ñåòè.
Ïðåäñòàâèì ñòðóêòóðó
ïðîåêòèðóåìîé
êîðïîðàòèâíîé
ñåòè ïðåäïðèÿòèÿ
â âèäå, êàê ýòî
ïîêàçàíî íà ðèñ.
1.4.1.
Ðèñ. 1.4.1 Ïðîåêòèðóåìàÿ
êîðïîðàòèâíàÿ
ñåòü
Ãëàâà
2. Âíåäðåíèå òåõíîëîãèé
vpn â êîðïîðàòèâíóþ
ñåòü è èõ ñðàâíèòåëüíàÿ
îöåíêà
.1 Ðåàëèçàöèÿ
íà îñíîâå òåõíîëîãèè
OpenVPN
Ñíà÷àëà îáúåäèíèì
â îäíó êîðïîðàòèâíóþ
ñåòü îôèñ, ñêëàä
è íàøè ñåðâåðà
ó ïðîâàéäåðà. Äëÿ
ýòîãî íàì íóæíî
ïîñòðîèòü çàùèùåííûå
êàíàëû - òóííåëè
òîëüêî ìåæäó ìàðøðóòèçàòîðàìè,
òàê êàê íåò íåîáõîäèìîñòè
ïîäêëþ÷àòü êàæäûé
êîìïüþòåð â îòäåëüíîñòè.
Èòàê: åñòü 3 ìàðøðóòèçàòîðà
ïîä óïðàâëåíèåì
ÎÑ CentOs. Ïåðåáðîñ
ïàêåòîâ èç Èíòåðíåòà
â ñåòü è îáðàòíî
ïðîèçâîäèòñÿ
ñ ïîìîùüþ òåõíîëîãèè
NAT è ïðàâèë
iptables. êîðïîðàòèâíûé
ñåòü ìîíèòîðèíã
ñåðâåð
Äàäèì äëÿ óäîáñòâà
ìàðøðóòèçàòîðàì
èìåíà:
· Â îôèñå: Office;
· Íà ñêëàäå: Sklad;
· Êîëîêàöèÿ
(ñåðâåðà ó ïðîâàéäåðà):
Colo;
· Ìàãàçèí ¹1:
mag1
· Ìàãàçèí ¹2:
mag2
Ñåòåâûå íàñòðîéêè ìàðøðóòèçàòîðîâ:
Office:
Ñåòü
|
Èíòåðôåéñ
|
Ip àäðåñ
|
Ìàñêà
|
Øëþç
|
Èíòåðíåò
|
eth2
|
213.182.175.230
|
255.255.255.252
|
213.182.175.229
|
Ëîêàëüíàÿ
|
eth1
|
192.168.53.250
|
255.255.255.0
|
-
|
:
Ñåòü
|
Èíòåðôåéñ
|
Ip àäðåñ
|
Ìàñêà
|
Øëþç
|
Èíòåðíåò
|
eth2
|
79.142.87.206
|
255.255.255.252
|
79.142.87.211
|
Ëîêàëüíàÿ
|
eth1
|
192.168.0.1
|
255.255.255.0
|
-
|
Colo:
Ñåòü
|
Èíòåðôåéñ
|
Ip àäðåñ
|
Ìàñêà
|
Øëþç
|
Èíòåðíåò
|
eth2
|
195.2.240.68
|
255.255.255.252
|
195.2.240.60
|
Ëîêàëüíàÿ
|
eth1
|
172.16.100.8
|
255.255.255.0
|
-
|
Íàñòðîéêè hardware ìàðøðóòèçàòîðîâ
â ìàãàçèíàõ
íå èãðàþò ðîëè,
ïîýòîìó èõ ïðîïóñòèì.
Ïðèñòóïèì ê
óñòàíîâêå è íàñòðîéêå.
CentOS (Community ENTerprise Operating System) - äèñòðèáóòèâ
Linux, îñíîâàííûé
íà êîììåð÷åñêîì
Red Hat Enterprise Linux êîìïàíèè Red Hat è ñîâìåñòèìûé
ñ íèì. CentOS èñïîëüçóåò
ïðîãðàììó yum äëÿ ñêà÷èâàíèÿ
è óñòàíîâêè îáíîâëåíèé
ñ ðåïîçèòîðèåâ.
Âñÿ ðàáîòà ïî
íàñòðîéêå è óñòàíîâêå
ïðîèçâîäèòñÿ
óäàëåííî, èñïîëüçóÿ
OpenSSH ñåðâåð
íà ìàðøðóòèçàòîðàõ
è êëèåíò putty.
Íàñòðîèì ïåðâûì
ìàðøðóòèçàòîð
Colo. Ýòîò ìàðøðóòèçàòîð
áóäåò âûñòóïàòü
â ðîëè OpenVPN ñåðâåðà.
Ïàêåò OpenVPN íå äîñòóïåí
â ñòàíäàðòíîì
ðåïîçèòîðèè, ïîýòîìó
ïîäêëþ÷àåì äîïîëíèòåëüíûé
ðåïîçèòîðèé rpmforge:
colo> rpm -Uhv
#"656226.files/image005.gif">
Ðèñ.2.2.2.1 Èñïîëüçîâàíèå
ssh-òóííåëåé
Ðåàëèçàöèÿ, êàê
ãîâîðèëîñü ðàíüøå,
î÷åíü ïðîñòà,
òîëüêî ó OpenSSH åñòü íåäîñòàòîê:
ïðè áîëüøîì ïðîñòîå
êàíàëà îí ðâåòñÿ.
Íî è äëÿ ýòîé ïðîáëåìû
åñòü ïðîñòîå ðåøåíèå.
Ïàêåò autoSSH, ïî äîïîëíèòåëüíîìó
ïîðòó ïðè ïðîñòîå
øëåò heartbeat ïàêåò
è êàíàë íå ïàäàåò.
Ñîçäàäèì 2 êàíàëà
äî äâóõ òåðìèíàëüíûõ
ñåðâåðîâ:
colo>
export AUTOSSH_DEBUG=1
colo> export AUTOSSH_GATETIME=0> export
AUTOSSH_PORT=20037> autossh -f -N -g -l root -L 1002:172.16.100.33:3389
195.2.240.68> export AUTOSSH_PORT=20040> autossh -f -N -g -l root -L
1002:172.16.100.34:3389 195.2.240.68
Ðàññìîòðèì êîìàíäû ïîäðîáíåå:> autossh -f -N -g -c
aes256 -l root -L 1002:172.6.100.33:3389 195.2.240.68
Ïàðàìåòðû:
· -f: Ðàáîòàòü
â ôîíîâîì ðåæèìå,
à íå ïîäêëþ÷àòüñÿ
íà õîñò;
· -N: Íå
èñïîëíÿòü óäàëåííûå
êîìàíäû;
· -g: Ðàçðåøàåò
ïîäêëþ÷åíèå óäàëåííûì
õîñòàì;
· -c: Âêëþ÷àåì
øèôðàöèþ;
· -l: Èìÿ
ïîëüçîâàòåëÿ,
îò êîòîðîãî ïîäêëþ÷àåìñÿ
ê ñåðâåðó;
· -L Ïðîïèñûâàåì,
êàêîé ëîêàëüíûé
ïîðò èñïîëüçóåì
äëÿ ïîäêëþ÷åíèÿ
è íà êàêîé ñåðâåð
è ïîðò ïîäêëþ÷àåìñÿ.
Íà ýòîì íàñòðîéêà
øèôðîâàííîãî
òóííåëÿ çàêîí÷åíà
è ìîæíî ðàáîòàòü!
Åñëè íàì íóæíî
äîáàâèòü åùå
îäèí òóííåëü,
òî ñ ïîìîùüþ êîìàíäû
export AUTOSSH_PORT=20050
äîáàâëÿåì åùå
îäèí ïîðò äëÿ ïîñûëêè
heartbeat ïàêåòîâ
è ïðîïèñûâàåì
òó æå êîìàíäó
ïîäíÿòèÿ ssh òóííåëÿ,
íî óæå ñ äðóãèì
ïîðòîì.
2.2.2 SSH VPN
Ðåàëèçóåì òó
æå ñõåìó êîðïîðàòèâíîé
ñåòè, êîòîðóþ
ñîçäàâàëè ïðè
ïîìîùè ïàêåòà
OpenVPN, íî óæå
ñ ïîìîùüþ âñòðîåííîãî
â linux ñèñòåìû
ïàêåòà OpenSSH. Íàì õâàòèò
ðàññìîòðåòü ñîåäèíåíèå
2-õ ñåòåé, òàê êàê
äëÿ ïîäêëþ÷åíèÿ
åùå îäíîé ñåòè
íóæíî áóäåò ïðîâåñòè
òå æå ñàìûå äåéñòâèÿ.
Ñ âåðñèè 4.3, OpenSSH ïîääåðæèâàåò
óñòðîéñòâà tun/tap,
ïîçâîëÿþùèå ñîçäàâàòü
øèôðîâàííûé
òóííåëü. Ýòî î÷åíü
ïîõîæå íà OpenVPN, îñíîâàííûé
íà TLS.
Øèôðîâàííûé
òóííåëü ñîçäàåòñÿ
íà îñíîâå îäíîãî
TCP ñîåäèíåíèÿ, ÷òî
âåñüìà óäîáíî,
äëÿ áûñòðîãî ïîäíÿòèÿ
ïðîñòîãî VPN, íà
IP.
Ñíà÷àëà íóæíî
äîïèñàòü â êîíôèãóðàöèîííûé
ôàéë OpenSSH ñòðîêè,
÷òî îí èìååò ïðàâî
ñîçäàâàòü óñòðîéñòâà
tun/tap è çàõîäèòü
ñ ïðàâàìè root. Â êîíôèãóðàöèîííîì
ôàéëå /etc/ssh/sshd_config, äîëæíû ñòîÿòü
ñëåäóþùèå îïöèè:yesyes
Ó íàñ åñòü äâå
ñåòè, ñåòü office ñ àäðåñîì
192.168.53.0/24 è ñåòü colo ñ àäðåñîì
172.16.100.0/24. Äëÿ ñîçäàíèÿ
çàùèùåííîé VPN ñåòè íóæíî
ïðîäåëàòü ñëåäóþùèå
äåéñòâèÿ:
1. Ïîäêëþ÷èòñÿ
ñ îäíîãî ìàðøðóòèçàòîðà
÷åðåç SSH íà äðóãîé
ñ îïöèåé -w;
2. Íàñòðîéêà
IP àäðåñà SSH òóííåëÿ
äåëàåòñÿ åäèíîæäû
íà ñåðâåðå è íà
êëèåíòå.
. Äîáàâèòü ìàðøðóò
äëÿ îáåèõ ñåòåé.
. Åñëè íóæíî,
âêëþ÷èòü NAT íà âíóòðåííåì
èíòåðôåéñå øëþçà.
Áóäåì ïîäêëþ÷àòüñÿ
èç ñåòè office ê ñåòè colo. Ñîåäèíåíèå
íà÷èíàåòñÿ ñ
ìàðøðóòèçàòîðà
office, à êîìàíäû âûïîëíÿþòñÿ
íà ìàðøðóòèçàòîðå
ñåòè colo, òî åñòü,
íàñòðàèâàåì
ìàðøðóòèçàòîð
colo:
#Ñ ïîìîùüþ îïöèè
w c ïàðàìåòðàìè
0:0 ãîâîðèì, ÷òî
ïðè ïîäêëþ÷åíèè
ñîçäàòü íà êëèåíòå
è ñåðâåðå âèðòóàëüíûå
óñòðîéñòâà tun0. Ïàðàìåòð
-c âêëþ÷àåò
øèôðàöèþ, ïàðàìåòð
-C ñæàòèå
òðàôèêà.
office> ssh -c aes256 -C -w0:0 root@195.2.240.68
#Ñëåäóþùèå
êîìàíäû óæå âûïîëíÿþòñÿ
íà ìàðøðóòèçàòîðå
ñåòè colo. Çàäàåì ip àäðåñ
è ìàñêó ïîäñåòè
colo> ifconfig tun0 10.0.1.1 netmask 255.255.255.252
#
Äîáàâëÿåì ìàðøðóò
äî ñåòè office
colo> route add -net 192.168.53.0 netmask
255.255.255.0 dev tun0
# Âêëþ÷àåì NAT, åñëè íå âêëþ÷åí> echo 1 >
/proc/sys/net/ipv4/ip_forward
#
Ïðîïèñûâàåì ïðàâèëî
ñ ïîìîùüþ ñðåäñòâ
iptables äëÿ
ïåðåáðîñà ïàêåòîâ
èç VPN ñåòè
â ðåàëüíóþ
colo> iptables -t nat -A POSTROUTING -o eth1 -j
MASQUERADE
Òåïåðü íàñòðîèì ìàøðóòèçàòîð office:> ifconfig tun0 10.0.1.2 netmask
255.255.255.252> route add -net 172.16.100.0 netmask 255.255.255.0 dev
tun0> echo 1 > /proc/sys/net/ipv4/ip_forward> iptables -t nat -A
POSTROUTING -o eth1 -j
Íà
ýòîì íàñòðîéêà
çàêîí÷åíà, VPN ñåòü
ïîñòðîåíà. Äëÿ
ïîäêëþ÷åíèÿ îòäåëüíûõ
êîìïüþòåðîâ ñ
îïåðàöèîííîé
ñèñòåìîé Windows XP (ìàãàçèíû),
èñïîëüçóåòñÿ
êëèåíò SSH Putty.
.3 Îöåíêà
ïðîèçâîäèòåëüíîñòè
êàíàëîâ êîðïîðàòèâíîé
ñåòè
 ðàçäåëàõ 2.1 è
2.2 ðàññìîòðåíû
äâå òåõíîëîãèè
(OpenVPN, SSH) ñîçäàíèÿ
çàùèùåííûõ êîðïîðàòèâíûõ
ñåòåé, èñïîëüçóÿ
VPN. Íà ñåãîäíÿøíèé
äåíü òåõíîëîãèÿ
OpenVPN ëèäèðóåò
íà ðûíêå ïîñòðîåíèÿ
çàùèùåííûõ ñåòåé,
â òî âðåìÿ êàê
òóííåëèðîâàíèå
ïðè ïîìîùè SSH òîëüêî
íà÷èíàåò âõîäèòü
â ïîâñåäíåâíîñòü.
Äëÿ òîãî ÷òîáû
ïîíÿòü êàêóþ
òåõíîëîãèþ íåîáõîäèìî
ïðèìåíèòü â ðåàëüíûõ
óñëîâèÿõ ïðè êîíêðåòíûõ
òðåáîâàíèÿõ,
ïðåäúÿâëÿåìûõ
êîðïîðàòèâíîé
ñåòè, íóæíî îöåíèòü
èõ ïðîèçâîäèòåëüíîñòü
è îáîñíîâàòü
èõ äîñòîèíñòâà
è íåäîñòàòêè.
Íà÷àòü ñëåäóåò
ñ ïðîèçâîäèòåëüíîñòè
çàùèùåííûõ êàíàëîâ.
Íà ðèñ. 1.4.1 ïðåäñòàâëåíà
ïîñòðîåííàÿ êîðïîðàòèâíàÿ
ñåòü, ïðîèçâîäèòåëüíîñòü
çàùèùåííûõ êàíàëîâ
êîòîðîé, èñïîëüçóÿ
ïðîãðàììó iPerf, íåîáõîäèìî
îöåíèòü. Ñ ïîìîùüþ
êëèåíòñêîé ÷àñòè
ãåíåðèðóåòñÿ
òðàôèê è îòïðàâëÿåòñÿ
íà ñåðâåðíóþ
÷àñòü. Ïðè ïîëó÷åíèè
äàííûõ ãåíåðèðóåòñÿ
îò÷åò î ñêîðîñòè
ïåðåäà÷è äàííûõ.
2.3.1 Îöåíêà
ïðîèçâîäèòåëüíîñòè
ïðè èñïîëüçîâàíèè
òåõíîëîãèè OpenVPN
Äëÿ ïîñòðîåíèÿ
ãðàôèêîâ ïðîèçâîäèòåëüíîñòè
êàíàëà ñîçäàííîãî
ïðè ïîìîùè OpenVPN áóäåì
èñïîëüçîâàòü
äàííûå, ïîëó÷åííûå
ïðè òåñòèðîâàíèè
èç ïðèëîæåíèÿ
1.
Ðèñ. 2.3.1 Ãðàôèêè
çíà÷åíèé RTT
Íà ðèñ. 2.3.1 ïðåäñòàâëåíû
ãðàôèêè çíà÷åíèé
RTT. Èç íèõ
âèäíî, ÷òî ðàçíèöà
ìåæäó êàíàëîì
áåç VPN è
êàíàëîì ñ èñïîëüçîâàíèåì
VPN, íå ÿâëÿåòñÿ
ñóùåñòâåííîé.
Òàêæå âêëþ÷åíèå
îïöèè ñæàòèÿ
íå âëèÿåò íà âðåìÿ
îòêëèêà.
Ðèñ. 2.3.2 Ãðàôèêè
ïðîïóñêíîé ñïîñîáíîñòè
êàíàëà
Íà ðèñ. 2.3.2 ïðåäñòàâëåíû
ãðàôèêè ïðîïóñêíîé
ñïîñîáíîñòè
êàíàëà, èç êîòîðûõ
ìîæíî ñäåëàòü
ñëåäóþùèå âûâîäû:
· Ïðè èñïîëüçîâàíèè
ñîçäàííîãî êàíàëà
VPN ñ øèôðàöèåé
ñ ïîìîùüþ êëþ÷à
AES-256-CBC ïîòåðÿ â ïðîèçâîäèòåëüíîñòè
0,5 ìáèò/ñåê, ÷òî
ñîñòàâèëî 5,1% îò
êàíàëà áåç èñïîëüçîâàíèÿ
VPN;
· Ïðè âêëþ÷åíèè
ñæàòèÿ øèôðîâàííîãî
òðàôèêà íàáëþäàåì
ïðèðîñò ñêîðîñòè
â 3 ìáèò/ñåê, ÷òî
ñîñòàâèëî 32.9%.
Ðèñ.2.3.3 Ãðàôèêè
çàãðóçêè ÖÏ
Íà ðèñ. 2.3.3 ïðåäñòàâëåíû
ãðàôèêè çàãðóçêè
ÖÏ íà ìàðøðóòèçàòîðàõ
ïðè èñïîëüçîâàíèè
OpenVPN c øèôðàöèåé
òðàôèêà, ïðè âêëþ÷åííîì
è îòêëþ÷åííîì
ñæàòèè. Ïî ñðåäíèì
çíà÷åíèÿì çàãðóçêè,
êàê è ïîëàãàëîñü,
ñàìóþ âûñîêóþ
íàãðóçêó äàåò
øèôðàöèÿ òðàôèêà
ñ èñïîëüçîâàíèåì
ñæàòèÿ - 14.992%.
Îñíîâûâàÿñü
íà ïîëó÷åííûõ
ãðàôèêàõ, ïðîèçâåä¸ì
îöåíêó ïðîèçâîäèòåëüíîñòè
êàíàëîâ VPN, ïîñòðîåííûõ
ïðè ïîìîùè OpenVPN.
1. Êðèòåðèé «Çàãðóçêà
ÖÏ» ïðè ïîëó÷åííûõ
çíà÷åíèÿõ ÿâëÿåòñÿ
íåñóùåñòâåííûì,
òàê êàê ýòî ìàðøðóòèçàòîð
è äðóãèõ ïðîöåññîâ
òðåáóþùèõ áîëüøîå
ïîòðåáëåíèå ÖÏ
íåò;
2. Êðèòåðèé «RTT» òàêæå
ÿâëÿåòñÿ íåñóùåñòâåííûì,
òàê êàê ðàçíèöà
îò âðåìåíè îòêëèêà
ïðè îïûòàõ áåç
VPN îêàçàëàñü
ìåíüøå âñåãî
íà 0,5 ìñ;
. Íà ãðàôèêàõ
ïðîïóñêíîé ñïîñîáíîñòè
êàíàëîâ ìîæíî
íàáëþäàòü ïàäåíèå
ñêîðîñòè ïðè èñïîëüçîâàíèè
ñðåäñòâ VPN íà 0,5 ìáèò/ñåê
â ñðåäíåì. Â íàñòîÿùåå
âðåìÿ ýòî íå ÿâëÿåòñÿ
ñóùåñòâåííûì,
òàê êàê Èíòåðíåò-ïðîâàéäåðû
ïðåäîñòàâëÿþò
ñâîè óñëóãè íà
áîëüøèõ ñêîðîñòÿõ,
ãäå òàêîå ïàäåíèå
íå áóäåò èãðàòü
áîëüøîé ðîëè.
. Ïðè èñïîëüçîâàíèè
ñæàòèÿ òðàôèêà
âèäåí çàìåòíûé
ïðèðîñò ê ïðîïóñêíîé
ñïîñîáíîñòè
êàíàëà, íà 3 ìáèò/ñåê.
Êîíå÷íî ïðè ýòîì
ñèëüíî âîçðàñòàåò
çàãðóçêà íà ÖÏ,
íî êàê ãîâîðèëîñü
ðàíüøå, ýòî íå
èãðàåò áîëüøîé
ðîëè.
Ïîäâåäåì èòîãè.
Ñîçäàâàÿ çàùèùåííóþ
êîðïîðàòèâíóþ
ñåòü íà îñíîâå
òåõíîëîãèè OpenVPN, ïîëó÷àåì
îäíó îáùóþ ñåòü
íà íåñêîëüêî
îôèñîâ ñ øèôðàöèåé
ïåðåäàâàåìûõ
äàííûõ è ïðèðîñòîì
ñêîðîñòè çà ñ÷åò
ñæàòèÿ òðàôèêà
ñ óäîáñòâîì îáìåíà
èíôîðìàöèåé.
Òåõíîëîãèÿ OpenVPN ïîëíîñòüþ
îïðàâäûâàåò ñåáÿ.
Ÿ èñïîëüçîâàíèå
âåäåò ê ðîñòó
ïðîèçâîäèòåëüíîñòè
ðàáîòû ñ èíôîðìàöèåé
ïî ñåòè. Èç ìèíóñîâ
âûäåëÿåòñÿ íåêîòîðàÿ
ñëîæíîñòü íàñòðîéêè
è ñîçäàíèÿ VPN ñåòè. Èç
ïëþñîâ - êðîññïëàòôîðìåííîñòü.
2.3.2 Îöåíêà
ïðîèçâîäèòåëüíîñòè
ïðè èñïîëüçîâàíèè
òåõíîëîãèè SSH
Äëÿ ïîñòðîåíèÿ
ãðàôèêîâ ïðîèçâîäèòåëüíîñòè
êàíàëà ñîçäàííîãî
ïðè ïîìîùè SSH áóäåì
èñïîëüçîâàòü
äàííûå, ïîëó÷åííûå
ïðè òåñòèðîâàíèè
èç ïðèëîæåíèÿ
2.
Ðèñ.2.3.4. Ãðàôèêè
çíà÷åíèé RTT
Íà ðèñ. 2.3.4 ïðåäñòàâëåíû
ãðàôèêè, ïî êîòîðûì
ìîæíî ñóäèòü
î âðåìåíè îòêëèêà
ïðè ðàáîòå ssh. Â ñðåäíåì
âðåìÿ óâåëè÷èëîñü
íà 0.8 ìñ. Ýòî çíà÷åíèå
íå ÿâëÿåòñÿ êðèòè÷íûì
äàæå äëÿ ñàìûõ
ïðèâåðåäëèâûõ
ïðîãðàìì.
Ðèñ.2.3.5 Ãðàôèêè
ïðîïóñêíîé ñïîñîáíîñòè
êàíàëà
Íà ðèñ. 2.3.5 ïðåäñòàâëåíû
ãðàôèêè ïðîïóñêíîé
ñïîñîáíîñòè
êàíàëà. Ðåçóëüòàòû
ïîëó÷èëèñü ïðèáëèçèòåëüíî
òàêèìè æå, ÷òî
è ïðè èñïîëüçîâàíèè
OpenVPN.
Ðèñ.2.3.6 Ãðàôèêè
çàãðóçêè ÖÏ
Íà ðèñ. 2.3.6 ïðåäñòàâëåíû
ãðàôèêè çàãðóçêè
ÖÏ ïðè èñïîëüçîâàíèè
ssh ñ øèôðàöèåé
ñ ñæàòèåì òðàôèêà
è áåç. Ïðè âêëþ÷åíèè
øèôðàöèè âèäåí
áîëüøîé ñêà÷îê
íàãðóçêè íà ÖÏ.
Ñðåäíåå çíà÷åíèå
- 37.9%. Ýòî äîâîëüíî
ìíîãî, íî íå ÿâëÿåòñÿ
êðèòè÷íûì.
Èç ïîëó÷åííûõ
äàííûõ ìîæíî
ñäåëàòü ñëåäóþùèé
âûâîä: ïðîèçâîäèòåëüíîñòü
ïðè èñïîëüçîâàíèè
ñæàòèÿ òðàôèêà
âîçðîñëà ïðèìåðíî
íà 25%, íî ïðè ýòîì
çíà÷èòåëüíî
âûðîñëà íàãðóçêà
íà ÖÏ. Èç äîñòîèíñòâ
ýòîé òåõíîëîãèè
õî÷åòñÿ âûäåëèòü
âîçìîæíîñòü
ñîçäàíèÿ ssh-òóííåëåé
ïî îòäåëüíûì ïîðòàì,
÷òî ïðè îïðåäåëåííûõ
óñëîâèÿõ äàåò
ìíîæåñòâî ïëþñîâ,
íàïðèìåð, âîçìîæíîñòü
èìåòü àâòîìàòè÷åñêîå
âêëþ÷åíèå ðåçåðâíîãî
êàíàëà, ïðè îòñóòñòâèè
ñâÿçè íà îäíîì
èç ìàðøðóòèçàòîðîâ.
Òàêæå íóæíî îòìåòèòü
ïðîñòîòó ñîçäàíèÿ
è íàñòðîéêè VPN ñåòè, êðîññïëàòôîðìåííîñòü,
âûñîêàÿ íàäåæíîñòü,
ëåãêàÿ ìàñøòàáèðóåìîñòü.
2.3.3 Âûáîð
ìåæäó òåõíîëîãèÿìè
SSH è OpenVPN
Ñîñòàâèì ñðàâíèòåëüíóþ
òàáëèöó, îñíîâûâàÿñü
íà ïîëó÷åííûõ
îïûòíûì ïóòåì
äàííûõ.
|
OpenVPN
|
SSH
|
Ñëîæíîñòü
ñîçäàíèÿ
|
Äîñòàòî÷íî
ñëîæíàÿ íàñòðîéêà.
Ñëîæíîñòü íàñòðîéêè
ìàðøðóòèçàöèè
äëÿ íåñêîëüêèõ
ñåòåé, âîçìîæíû
òðóäíîñòè ñ firewall.
|
Ëåãêàÿ
íàñòðîéêà, íå
òðåáóþùàÿ îñîáûõ
çíàíèé. Íà âñå
ñîçäàíèå óõîäèò
íå áîëüøå 10 ìèíóò.
|
Ìàñøòàáèðóåìîñòü
|
Ïîäêëþ÷åíèå
åùå îäíîé ñåòè
èëè êëèåíòà, âëå÷åò
èçìåíåíèå êîíôèãóðàöèîííûõ
ôàéëîâ íà ñåðâåðå
è äîáàâëåíèå
èõ íà êëèåíòà.
Çà ñ÷åò OpenVPN êëèåíòà
ïîä Windows èìååò
ïðåèìóùåñòâî
ïåðåä SSH. Íå òðåáóåò
îáó÷åíèÿ ïåðñîíàëà.
|
Äëÿ ïîäêëþ÷åíèÿ
åùå îäíîé ñåòè
íóæíî ïîâòîðèòü
òå æå äåéñòâèÿ,
÷òî è ïðè îáúåäèíåíèè
ïðåäûäóùèõ. Äëÿ
ïîäêëþ÷åíèÿ Windows êîìïüþòåðîâ,
òðåáóåòñÿ îäíîêðàòíîå
îáó÷åíèå ïåðñîíàëà.
|
Ïðîèçâîäèòåëüíîñòü
|
Çà ñ÷åò
ñæàòèÿ ìîæíî
äîáèòüñÿ îòëè÷íûõ
ðåçóëüòàòîâ,
ïðåâûøàþùèõ
èñõîäíîå ñîåäèíåíèå.
Ñæàòèå èäåò âûáîðî÷íî,
ò.å. ÷òî ñæàòü
íåëüçÿ - ïðîïóñêàåòñÿ.
Ýòî óìåíüøàåò
íàãðóçêó íà
ÖÏ.
|
Ïðîèçâîäèòåëüíîñòü
÷óòü íèæå, ÷åì
ó OpenVPN. Ñæèìàåòñÿ
âåñü òðàôèê - áîëüøèå
íàãðóçêè íà
ÖÏ.
|
Çàãðóçêà
ÖÏ
|
 ñðåäíåì
íå áîëüøå 15%
|
 ñðåäíåì
íå áîëüøå 38%
|
Êðîññïëàòôîðìåííîñòü
|
Äà
|
Äà
|
RTT
|
Íà 0,5 ìñ
áîëüøå, ÷åì ó èñõîäíîãî
ñîåäèíåíèÿ
|
Íà 0,8 ìñ
áîëüøå, ÷åì ó èñõîäíîãî
ñîåäèíåíèÿ
|
Äîêóìåíòàöèÿ
|
Ìàññà
äîêóìåíòàöèè
íà îôèöèàëüíîì
ñàéòå. Ìíîãî÷èñëåííûå
ôîðóìû è îáñóæäåíèÿ.
|
Äîêóìåíòàöèÿ
åñòü â âñòðîåííîì
ñïðàâî÷íèêå.
Èíôîðìàöèè ïî
íàñòðîéêå ïîêà
÷òî ìàëî.
|
Äîï. âîçìîæíîñòè
|
-
|
Ñîçäàíèå
ssh-òóííåëåé.
|
Âíåäðåíèå
â ñóù. ñåòü
|
Ìîãóò
áûòü ïðîáëåìû
ñ íàñòðîéêîé
firewall’à.
|
Ëåãêîå
âíåäðåíèå.
|
Çàùèùåííîñòü
|
Øèôðàöèÿ
256 áèòíûì AES
êëþ÷îì
|
Øèôðàöèÿ
256 áèòíûì AES
êëþ÷îì
|
Ðàñïðîñòðàíåííîñòü
|
Ëèäèðóþùàÿ
òåõíîëîãèÿ ñîçäàíèÿ
VPN ñåòåé.
|
Ñàì ïðîòîêîë
ssh ñóùåñòâóåò
î÷åíü äàâíî, íî
ñîçäàíèå ssh VPN ñåòåé
íà ñåãîäíÿøíèé
äåíü âñòðå÷àåòñÿ
ðåäêî.
|
Ðàññìîòðåâ âñå
ïëþñû è ìèíóñû,
ïðåäïî÷òèòåëüíûì
ðåøåíèåì áóäåò
èñïîëüçîâàíèå
îáîèõ òåõíîëîãèé
âìåñòå. Îò SSH âçÿòü SSH-òóííåëè,
à îò OpenVPN ñîçäàíèå
VPN ñåòåé.
Ãëàâà
3. Ñîçäàíèå êîìïëåêñà
ñèñòåì ìîíèòîðèíãà
êîðïîðàòèâíîé
ñåòè
3.1 Ñëåæåíèå
çà ñîñòîÿíèåì
ñåðâåðîâ è ñåòåâîãî
îáîðóäîâàíèÿ.
Nagios
Nagios - ãèáêàÿ ñèñòåìà
ìîíèòîðèíãà
ðàáîòû ñåðâåðîâ.
 îñíîâíîì åå
èñïîëüçóþò äëÿ
ìîíèòîðèíãà
áîëüøîãî êîëè÷åñòâà
ñåðâåðîâ. Nagios - ïðîãðàììà
ìîíèòîðèíãà
êîìïüþòåðíûõ
ñèñòåì è ñåòåé
ñ îòêðûòûì êîäîì.
Ïðåäíàçíà÷åíà
äëÿ íàáëþäåíèÿ,
êîíòðîëÿ ñîñòîÿíèÿ
âû÷èñëèòåëüíûõ
óçëîâ è ñëóæá,
îïîâåùàåò àäìèíèñòðàòîðà
â òîì ñëó÷àå, åñëè
êàêèå-òî èç ñëóæá
ïðåêðàùàþò èëè
âîçîáíîâëÿþò
ñâîþ ðàáîòó. Â
íàøåì ñëó÷àå,
áóäåì ñëåäèòü
çà ìàðøðóòèçàòîðàìè,
ñåðâåðàìè è ïðîöåññàìè,
çàïóùåííûìè
íà íèõ. Ñèñòåìó
Nagios äëÿ óäîáñòâà
íàñòðîéêè ïîñòàâèì
íà ìàðøðóòèçàòîð
colo.
Nagios âêëþ÷àåò â ñåáÿ
ñðåäñòâà ñëåæåíèÿ,
à òàêæå web-èíòåðôåéñ
äëÿ óïðàâëåíèÿ
è ïðîñìîòðà òåêóùåãî
ñîñòîÿíèÿ ñåðâåðîâ.
Ïîýòîìó êðîìå
óñòàíîâêè ñàìîé
ñèñòåìû, íóæíî
óñòàíîâèòü web-ñåðâåð.
Íà÷íåì ñ óñòàíîâêè
íåîáõîäèìûõ
êîìïîíåíòîâ:
# Óñòàíàâëèâàåì
êîìïèëÿòîð ÿçûêà
C, åãî áèáëèîòåêè
è ãðàôè÷åñêèå
èíñòðóìåíòû
colo> yum install gcc glibc glibc-common gd gd-devel
colo>
yum install httpd
# Ñîçäàåì þçåðà
è ãðóïïó ñ ïðàâàìè
êîòîðûõ áóäåò
ðàáîòàòü nagios
colo> useradd -m nagios> groupadd nagcmd
# Ñîçäàåì ïàðîëü
äëÿ þçåðà
colo>
passwd nagios
# Äîáàâëÿåì nagios è apache â îäíó ãðóïïó,
÷òîáû íå áûëî
ïðîáëåì ñ ïðàâàìè
íà çàïóñê ñêðèïòîâ
íà web-ñåðâåðå
colo> /usr/sbin/usermod -a -G nagcmd nagios>
/usr/sbin/usermod -a -G nagcmd apache
Ñòàâèì ñèñòåìó:
# Ñêà÷èâàåì ïîñëåäíþþ
âåðñèþ ñèñòåìû
è ìîäóëè ê íåé
colo> wget
#"656226.files/image012.gif">
Ðèñ.3.1.2 Ïðåäñòàâëåíèå
ïóíêòà ìåíþ Map
Ðèñ.3.1.2 Ïðåäñòàâëåíèå
ïóíêòà ìåíþ Services
Ñèñòåìà ìîíèòîðèíãà
Nagios ðàáîòàåò
íà íåñêîëüêèõ
êîíôèãóðàöèîííûõ
ôàéëàõ, ñ ïîìîùüþ
êîòîðûõ íàñòðàèâàþòñÿ
ìåòîäû ñëåæåíèÿ
è îáúåêòû, çà
êîòîðûìè ñëåäèì.
Ðàñïîëîæåíû ýòè
ôàéëû â äèðåêòîðèè
/usr/local/nagios/etc.
Ðàññìîòðèì
èõ ïîäðîáíåå:
1. nagios.cfg - Ãëàâíûé
êîíôèãóðàöèîííûé
ôàéë.  í¸ì îïèñàíî,
ãäå ëåæàò îñòàëüíûå
ôàéëû, îáúÿâëåíû
ïåðåìåííûå, íàñòðàèâàåòñÿ
ñèñòåìà ëîãîâ,
ïîä êàêèì ïîëüçîâàòåëåì
ðàáîòàòü è ò.ä.;
2. commands.cfg - Ôàéë,
â êîòîðîì îïèñàíû
êîìàíäû äëÿ îïðîñà
ñåðâåðîâ î èõ ðàáîòîñïîñîáíîñòè,
çàïóùåííûõ ïðîöåññîâ
è ò.ä.;
3. contacts.cfg - Îïèñàíû
êîíòàêòû, êîòîðûì
íàäî ïîñûëàòü
îïîâåùåíèÿ ñèñòåìû
î ñáîÿõ íà ñåðâåðàõ;
4. groups.cfg - Îïèñûâàþòñÿ
ãðóïïû è ñåðâåðà,
êîòîðûå â íèõ
âõîäÿò;
5. hosts.cfg - Îïèñûâàåòñÿ
øàáëîí äëÿ äîáàâëÿåìîãî
îáîðóäîâàíèÿ.
 í¸ì óêàçûâàåòñÿ
ïåðèîä îïðîñà
ñåðâåðîâ, âðåìÿ
îòñûëêè ïðåäóïðåæäåíèé;
. WindowsServer.cfg - Ïðèìåð îïèñàíèÿ
Windows ñåðâåðà;
. LinuxServer.cfg - Ïðèìåð îïèñàíèÿ
Linux ñåðâåðà.
Îïðîñ ñåðâåðîâ
èäåò ïî ïðîòîëêó
SNMP (Simple Network Management Protocol - ïðîòîêîë
ïðîñòîãî óïðàâëåíèÿ
ñåòÿìè). Äëÿ ñëåæåíèÿ
çà Windows
ñåðâåðàìè,
íóæíî äîïîëíèòåëüíî
ïîñòàâèòü ïðîãðàììó
Nsclient++.
Ðàññìîòðèì
ïðèìåð êîíôèãóðàöèîííîãî
ôàéëà Windows ñåðâåðà:
define host
{
# Èñïîëüçóåì
øàáëîí, ñîçäàííûé
çàðàíåå
use generic-host ;
# Èìÿ ñåðâåðà_name sql-1c ;
# Àëüÿñ íà èìÿ
(ïñåâäîíèì)
alias sql-1c ;
# Óêàçûâàåì, åñòü
ëè ïåðåä ýòèì
ñåðâåðîì åùå îäèí
ñåðâåð. Ýòî íóæíî
äëÿ äðåâîâèäíîãî
ïðåäñòàâëåíèÿ
ñåòè
parents vh0.arscraft.ru ;
# Ip àäðåñ ñåðâåðà
address 172.16.100.34 ; IP address of the host
# Èêîíêà äëÿ îòîáðàæåíèÿ
â web-èíòåðôåéñå.
Íåîáÿçàòåëüíûé
ïàðàìåòð
icon_image 1c.jpg
statusmap_image 1c.jpg
# Äîïîëíèòåëüíóþ
èíôîðìàöèþ î
ñåðâåðå ìîæíî
çàïèñàòü çäåñü
notes_url #"656226.files/image014.gif">
Ðèñ.3.2.1 Ãðàôèê èñïîëüçîâàíèÿ
Èíòåðíåò-êàíàëà
Ðèñ.3.2.2 Ãðàôèê ñðåäíåé
çàãðóçêè ïðîöåññîðà
Ðèñ.3.2.3 Ãðàôèê èñïîëüçîâàíèÿ
äèñêîâîãî ïðîñòðàíñòâà
Ðèñ.3.2.4 Ãðàôèê îòêëèêà
ñåðâåðà(RTT)
3.3 Ôèëüòðàöèÿ
è àíàëèç òðàôèêà
êîðïîðàòèâíîé
ñåòè
3.3.1 Proxy ñåðâåð
×àñòî â ôèðìàõ,
íà ïðåäïðèÿòèÿõ,
ãäå ðàáî÷èé ïåðñîíàë
èìååò äîñòóï
ê ñåòè Èíòåðíåò,
òðåáóåòñÿ ôèëüòðàöèÿ
âõîäÿùåãî òðàôèêà.
Íóæíî ýòî ïî äâóì
ïðîñòûì ïðè÷èíàì:
1. Íàèáîëåå ðàñïðîñòðàíåííûé
ñïîñîá ïîïàäàíèÿ
âðåäîíîñíûõ ïðîãðàìì
íà êîìïüþòåð ïðîèñõîäèò
ïðè ïðîñìîòðå
âåá-ñòðàíèö ñîìíèòåëüíîãî
êîíòåíòà, ïðîñìîòðå
áàííåðîâ è ñêà÷èâàíèè
ðàçëè÷íîãî ñîôòà;
2. Îäíî èç ñàìûõ
÷àñòûõ òðåáîâàíèé
ðóêîâîäñòâà îðãàíèçàöèè,
ÿâëÿåòñÿ îãðàíè÷åíèå
äîñòóïà íà ðàçâëåêàòåëüíûå
ñàéòû è ñîöèàëüíûå
ñåòè.
×òîáû îñóùåñòâëÿòü
ôèëüòðàöèþ, íóæíî
÷òîáû âåñü http òðàôèê
ïðîõîäèë ÷åðåç
ñïåöèàëüíûé proxy ñåðâåð.
Proxy ñåðâåð - ñëóæáà
â êîìïüþòåðíûõ
ñåòÿõ, ïîçâîëÿþùàÿ
êëèåíòàì âûïîëíÿòü
êîñâåííûå çàïðîñû
ê äðóãèì ñåòåâûì
ñëóæáàì. Ñíà÷àëà
êëèåíò ïîäêëþ÷àåòñÿ
ê proxy-ñåðâåðó
è çàïðàøèâàåò
êàêîé-ëèáî ðåñóðñ
(íàïðèìåð, e-mail), ðàñïîëîæåííûé
íà äðóãîì ñåðâåðå.
Çàòåì proxy-ñåðâåð ëèáî
ïîäêëþ÷àåòñÿ
ê óêàçàííîìó
ñåðâåðó è ïîëó÷àåò
ðåñóðñ ó íåãî,
ëèáî âîçâðàùàåò
ðåñóðñ èç ñîáñòâåííîãî
êýøà (â ñëó÷àÿõ,
åñëè proxy èìååò
ñâîé êýø). Â íåêîòîðûõ
ñëó÷àÿõ çàïðîñ
êëèåíòà èëè îòâåò
ñåðâåðà ìîæåò
áûòü èçìåí¸í
proxy-ñåðâåðîì
â îïðåäåë¸ííûõ
öåëÿõ. Òàêæå proxy-ñåðâåð
ïîçâîëÿåò çàùèùàòü
êëèåíòñêèé êîìïüþòåð
îò íåêîòîðûõ
ñåòåâûõ àòàê
è ïîìîãàåò ñîõðàíÿòü
àíîíèìíîñòü
êëèåíòà.
Ðåàëèçîâàòü
ïåðåáðîñ çàïðîñîâ
íà proxy-ñåðâåð
ìîæíî äâóìÿ ïóòÿìè:
1. ßâíî óêàçàòü
â áðàóçåðå àäðåñ
proxy-ñåðâåðà
(íå ðåêîìåíäóåòñÿ
èç-çà íåóäîáñòâà
ïåðåêëþ÷åíèÿ
â ñëó÷àå ïàäåíèÿ
ñåðâåðà);
2. Ïåðåñûëàòü
âåñü òðàôèê, ïðèøåäøèé
íà ïîðòû 80, 8080 ìàðøðóòèçàòîðà
íà proxy-ñåðâåð
ïðè ïîìîùè ïðàâèë
iPtables.
 äèïëîìå ÿ áóäó
èñïîëüçîâàòü
âòîðîé ìåòîä.
Proxy-ñåðâåð
áóäåì óñòàíàâëèâàòü
íà ìàðøðóòèçàòîð
colo.  êà÷åñòâå
ÏÎ óñòàíîâèì
proxy-ñåðâåð
SQUID.
Squid - ïðîãðàììíûé
ïàêåò, ðåàëèçóþùèé
ôóíêöèþ êýøèðóþùåãî
proxy-ñåðâåðà
äëÿ ïðîòîêîëîâ
HTTP, FTP, Gopher è
(â ñëó÷àå ñîîòâåòñòâóþùèõ
íàñòðîåê) HTTPS. Ðàçðàáîòàí
ñîîáùåñòâîì
êàê ïðîãðàììà
ñ îòêðûòûì èñõîäíûì
êîäîì (ðàñïðîñòðàíÿåòñÿ
â ñîîòâåòñòâèè
ñ GNU GPL). Âñå çàïðîñû
âûïîëíÿåò êàê
îäèí íåáëîêèðóåìûé
ïðîöåññ ââîäà/âûâîäà.
Óñòàíîâêà ïðîèçâîäèòñÿ
èç ñòàíäàðòíîãî
ðåïîçèòîðèÿ îäíîé
êîìàíäîé:
colo>
yum install squid
Ïîñëå ïåðâîé
óñòàíîâêè íåîáõîäèìî
ïðîèíèöèàëèçèðîâàòü
êåø:
colo>
squid -z
Ïåðåõîäèì ê íàñòðîéêå.
Íóæíî ðåøèòü
ñëåäóþùóþ çàäà÷ó
- çàêðûòü äîñòóï
íà ðàçâëåêàòåëüíûå
ñàéòû è ñîöèàëüíûå
ñåòè, çàêðûòü
äîñòóï íà ñêà÷êó
*.exe, *.sys, *.bat,
*.sys, *.mp3, *.avi,
*.mp4, *.mov ôàéëîâ.
Îñíîâíàÿ êîíôèãóðàöèÿ
proxy-ñåðâåðà
íàõîäèòñÿ â ôàéëå
/etc/squid/squid.conf. Îòðåäàêòèðóåì
åãî ïîä íàøó çàäà÷ó:
# Óêàçûâàåì ïîðò
íà êîòîðîì áóäåì
ñëóøàòü çàïðîñû,
è óêàçûâàåì òèï
Proxy «ïðîçðà÷íûé»,
ò.ê. ïåðåñûëàåì
ïàêåòû ñðåäñòâàìè
ìàðøðóòèçàòîðà
http_port 3128 transparent
# ACL (Access Control List - ñïèñîê êîíòðîëÿ
äîñòóïà) - îïðåäåëÿåò,
êòî èëè ÷òî ìîæåò
ïîëó÷àòü äîñòóï
ê êîíêðåòíîìó
îáúåêòó, è êàêèå
èìåííî îïåðàöèè
ðàçðåøåíî èëè
çàïðåùåíî ýòîìó
ñóáúåêòó ïðîâîäèòü
íàä îáúåêòîì.
Ñ ïîìîùüþ acl îïèñûâàåì
îáúåêòû, ñ êîòîðûìè
áóäåì ðàáîòàòü
# Îïèñûâàåì îáúåêòû
è ñîçäàåì ïðàâèëà
äîñòóïà ê íèì
acl all src 0.0.0.0/0.0.0.0manager proto
cache_objectlocalhost src 127.0.0.1/255.255.255.255to_localhost dst
127.0.0.0/8SSL_ports port 443Safe_ports port 80 # httpSafe_ports port 21 #
ftpSafe_ports port 443 # httpsSafe_ports port 70 # gopherSafe_ports port 210 #
waisSafe_ports port 1025-65535 # unregistered portsSafe_ports port 280 #
http-mgmtSafe_ports port 488 # gss-httpSafe_ports port 591 #
filemakerSafe_ports port 777 # multiling httpCONNECT method CONNECT_access
allow manager localhost_access deny manager_access deny !Safe_ports_access deny
CONNECT !SSL_ports
# Îïèñûâàåì íàøó
ëîêàëüíóþ ñåòü
acl localnet
src 172.16.100.0/24
# Îïèñûâàåì ôàéë,
â êîòîðîì çàïèñàíû
ðàñøèðåíèÿ çàïðåùåííûõ
òèïîâ ôàéëîâ
acl banfiles urlpath_regex -i
"/etc/squid/include/permblock.files.acl"
# Îïèñûâàåì ôàéë,
â êîòîðîì çàïèñàí
ñïèñîê ñàéòîâ,
çàïðåùåííûõ
ê ïðîñìîòðó
acl banurl dstdomain -i
"/etc/squid/include/permblock.url.acl"
# Ñîçäàåì ñïèñîê
äëÿ àóäèî è âèäåî
êîíòåíòà ñ ïîìîùüþ
mime òèïîâ
acl banvideo rep_mime_type content-type audiobanvideo
rep_mime_type content-type video
# Çàïðåùàåì äîñòóï
èç ñåòè ê çàïðåùåííûì
òèïàì ôàéëîâ,
ñàéòàì è êîíòåíòó.
http_access deny localnet banfiles_access deny localnet
banurl_reply_access deny all banvideo
# Ðàçðåøàåì äîñòóï
ñåòè äëÿ âñåãî
îñòàëüíîãî òðàôèêà_access
allow localnet
# Äëÿ âñåõ îñòàëüíûõ
çàïðåùàåì âñ¸_access
deny all
Íå çàáóäèì îñòàâèòü
ïðàâà äëÿ àäìèíèñòðàòîðà,
äîáàâèâ íóæíóþ
acl çàïèñü.
Ðàññìîòðèì ôàéëû
ñ çàïðåùàþùèìè
ñïèñêàìè:
Permblock.files.acl:
\.exe$
\.msi$
\.bat$
\.sys$.url.acl:
.vkontakte.ru
.odnoklassniki.ru
.durov.ru
.vk.ru
.youtube
.rutube
…
Îñòàëîñü ïåðåíàïðàâèòü
çàïðîñû ñ 80, 8080 ïîðòîâ
íà 3128. Äîáàâëÿåì
â öåïî÷êó iptables ñëåäóþùåå
ïðàâèëî:
$fw -t nat -A PREROUTING -p tcp -m multiport --dport 80,8080
-i eth1 -j DNAT --to 127.0.0.1:3128
Òåïåðü òðàôèê
èäåò ÷åðåç proxy-ñåðâåð
ñ ôèëüòðàöèåé.
Òàêæå ñ ïîìîùüþ
Proxy-ñåðâåðà
ïðè íåîáõîäèìîñòè
ìîæíî ñîçäàâàòü
ëèìèòû ïî ïîòðåáëåíèþ
òðàôèêà, ðàáîòàòü
ïî ðàñïèñàíèþ
è çàìåíÿòü ðåêëàìíûå
áàííåðû íà web-ñòðàíèöàõ
íà ñâîè.
3.3.2 Àíàëèçàòîð
ëîãîâ Proxy ñåðâåðà
Åù¸ îäíîé èç
÷àñòûõ çàäà÷
ÿâëÿåòñÿ àíàëèç
òðàôèêà ïî äâóì
ïðè÷èíàì:
1. Ñëåæåíèå çà äåÿòåëüíîñòüþ
ñîòðóäíèêà. Ïðåäîòâðàùåíèå
íàðóøåíèÿ äèñöèïëèíû
è ïðàâèë ðàáîòû
â êîìïàíèè;
2. Ñîçäàíèå ëèìèòîâ
íà òðàôèê, äëÿ
ñíèæåíèÿ ðàñõîäîâ
êîìïàíèè.
Proxy-ñåðâåð
Squid ïðè ïðîõîæäåíèè
òðàôèêà çàïèñûâàåò
âñþ èíôîðìàöèþ
(îòêóäà çàïðîñ,
÷òî çàïðàøèâàþò,
âðåìÿ, ðàçìåð è
ò.ä.) â log ôàéë.
Îñòàåòñÿ ëèøü
ïðîàíàëèçèðîâàòü
åãî è âûâåñòè
èíôîðìàöèþ â
óäîáíîì äëÿ ÷åëîâåêà
âèäå. Ïðèìåð ëîãà proxy-ñåðâåðà Squid:
.038 340 84.52.97.69 TCP_MISS/200 33232 GET
#"656226.files/image018.gif">
Ðèñ.3.2.2.1 Ïðèìåð
îò÷åòà LightSquid
Ðèñ.3.2.2.2 Ïîñåùåííûå
ñàéòû
Ðèñ.3.2.2.3 Ãðàôèê
ïî èñïîëüçîâàíèþ
òðàôèêà ïî äíÿì
3.4 Ó÷åò
òðàôèêà êîðïîðàòèâíîé
ñåòè. Ðàçðàáîòêà
web èíòåðôåéñà
Åñëè ñëåæåíèå
çà äåÿòåëüíîñòüþ
ñîòðóäíèêà ìîæíî
ðåàëèçîâàòü ñðåäñòâàìè
àíàëèçà http òðàôèêà, òî
çàäà÷à ïîäñ÷åòà
òðàôèêà ðåøàåòñÿ
òîëüêî ÷àñòè÷íî,
òàê êàê ñ÷èòàåòñÿ
òîëüêî http òðàôèê.
×àñòî ïðîâàéäåðû
ïðåäîñòàâëÿþò
÷àñòíûì ëèöàì
è îðãàíèçàöèÿì
äîñòóï â ñåòü
Èíòåðíåò íå áåçëèìèòíûé,
à òðàôèêîâûé,
ò.å. íàêëàäûâàþò
îãðàíè÷åíèå
íà êîëè÷åñòâî
ñêà÷åííûõ è îòäàííûõ
äàííûõ. Çà ïðåâûøåíèå
òðàôèêà ïðèõîäèòüñÿ
ñèëüíî ïåðåïëà÷èâàòü.
Ïîýòîìó ìîíèòîðèíã
çà òðàôèêîì ÿâëÿåòñÿ
âàæíîé çàäà÷åé.
Åñòü ìíîæåñòâî
áèëëèíãîâûõ
ñèñòåì, êîòîðûå
âêëþ÷àþò â ñåáÿ
ôóíêöèþ ïîäñ÷åòà
òðàôèêà, íî òàì
ñëèøêîì ìíîãî
íå íóæíûõ íàì
âîçìîæíîñòåé
è ôóíêöèé. Ñóùåñòâóåò
ïðîãðàììà IPCad, êîòîðàÿ
ìîæåò ïîìî÷ü
ðåøèòü çàäà÷ó.
IPCad (Cisco IP accounting simulator) - ýòî ïðîãðàììà
äëÿ ó÷åòà òðàôèêà,
êîòîðàÿ ìîæåò
âåñòè ïîäñ÷åò
íåñêîëüêèìè
ìåõàíèçìàìè,
íàïðèìåð ÷åðåç
èíòåðôåéñû BPF,
libpcap è iptables. Åñòü îäèí
íåäîñòàòîê: ðåçóëüòàòû
âûâîäÿòñÿ ïðÿìî
â êîíñîëü, áåç
êàêîé-ëèáî ôèëüòðàöèè.
Ïîýòîìó ê ïàêåòó
IPCad íóæíî
äîðàáîòàòü èíòåðôåéñ.
Íà÷íåì ñ óñòàíîâêè
IPCad:
router> wget <#"656226.files/image021.gif">
Ðèñ.3.4.1 Òàáëèöà
èïîëüçîâàíèÿ
Èíòåðíåò òðàôèêà
Çàêëþ÷åíèå
 ðåçóëüòàòå
âûïîëíåíèÿ äèïëîìíîé
ðàáîòû ïîëó÷åíû
ñëåäóþùèå ðåçóëüòàòû:
1. Ïîñòðîåíà çàùèùåííàÿ
êîðïîðàòèâíàÿ
ñåòü íà îñíîâå
VPN, èñïîëüçóÿ
òåõíîëîãèè OpenVPN è SSH;
1. Ðàññìîòðåíû
ìåòîäû îðãàíèçàöèè
VPN ñåòåé:
êëèåíò-ñåðâåðíûé,
òóííåëèðîâàíèå,
òî÷êà-òî÷êà;
2. Ïîëó÷åíû òàáëè÷íûå
çíà÷åíèÿ ïðîïóñêíîé
ñïîñîáíîñòè
çàùèùåííûõ èíòåðíåò
êàíàëîâ äëÿ òåõíîëîãèé
OpenVPN è SSH. Äàíà ïðàêòè÷åñêàÿ
îöåíêà ïðîèçâîäèòåëüíîñòè
ýòèõ êàíàëîâ
ñîçäàííîé êîïðîðàòèâíîé
ñåòè. Ïîëó÷åííûå
ðåçóëüòàòû ïîçâîëÿþò
ñäåëàòü îáùèé
âûâîä: ïðè ïîñòðîåíèè
êîðïîðàòèâíîé
ñåòè öåëåñîîáðàçíî
èñïîëüçîâàòü
îáå òåõíîëîãèè
- ñ ïîìîùüþ OpenVPN ñîçäàâàòü
çàùèùåííûå ñåòè,
ñ ïîìîùüþ SSH - ssh-òóííåëè
è ñîçäàíèå ïîäêëþ÷åíèé
äëÿ àäìèíèñòðèðîâàíèÿ;
. Ðàññìîòðåíû
ðåøåíèÿ äëÿ ìîíèòîðèíãà
êîðïîðàòèâíîé
ñåòè: Nagios, Cacti, Ipcad, LightSquid. Ñäåëàí âûâîä
îá èñïîëüçîâàíèè
ýòèõ ðåøåíèé
â îäíîì êîìïëåêñå;
. Ñ öåëüþ ôèëüòðàöèè
òðàôèêà è ñëåæåíèÿ
çà äåÿòåëüíîñòüþ
ïåðñîíàëà óñòàíîâëåí,
íàñòðîåí è ââåäåí
â ðàáîòó proxy-ñåðâåð;
. Ââåäåíà â ýêñïëóàòàöèþ
ñèñòåìà ìîíèòîðèíãà,
ñîñòîÿùàÿ èç
ðàññìîòðåííûõ
â ðàáîòå êîìïîíåíòîâ:
Nagios, Cacti, Ipcad, LightSquid;
. Ðàçðàáîòàí
web-èíòåðôåéñ
äëÿ ñèñòåìû ó÷åòà
òðàôèêà.
Ñïèñîê
èñïîëüçóåìîé
ëèòåðàòóðû
1. À.Â. Ñîêîëîâ,
Â.Ô.Øàíüãèí. Çàùèòà
èíôîðìàöèè â
ðàñïðåäåëåííûõ
êîðïîðàòèâíûõ
ñåòÿõ è ñèñòåìàõ.
- Ì.:ÄÌÊ Ïðåññ, 2002. -
656ñ.
2. Îëèôåð Â.Ã.,
Îëèôåð Í.À. Êîìïüþòåðíûå
ñåòè. Ïðèíöèïû,
òåõíîëîãèè, ïðîòîêîëû.
- 2001 ã. 668 ñ.
. Îëåã Êîëåñíèêîâ,
Áðàéàí Õåò÷.
LINUX. Ñîçäàíèå âèðòóàëüíûõ
÷àñòíûõ ñåòåé
(VPN). - Èçäàòåëüñòâî
"ÊÓÄÈÖ-ÎÁÐÀÇ"
2002 ã. 464 ñ.
. Ñâîáîäíàÿ
ýíöèêëîïåäèÿ,
URL: http://www.wikipedia.org
. Ñòàòüè î
linux ñèñòåìàõ,
URL: http://www.opennet.ru/
6. Ñòàòüè
îá óñòàíîâêå
è íàñòðîéêå ðàçëè÷íûõ
ïàêåòîâ ïðîãðàìì
ïîä Linux/Unix ñèñòåìû,URL: http://www.lissyara.su/
. Êîëëåêòèâíûé
áëîã íîâîñòåé,
àíàëèòè÷åñêèõ
ñòàòåé, ñâÿçàííûõ
ñ âûñîêèìè òåõíîëîãèÿìè
è Èíòåðíåòîì,
URL: http://habrahabr.ru/
Ïðèëîæåíèå
1
Òàáëèöà
çíà÷åíèé ïðîïóñêíîé
ñïîñîáíîñòè
Èíòåðíåò êàíàëà,
èñïîëüçóÿ OpenVPN.
¹
|
Áåç VPN
|
OpenVPN
|
|
|
AES-256-CBC
|
Øèôðîâàíèå
ñ ñæàòèåì òðàôèêà
|
|
RTT
|
Ñêîðîñòü
|
RTT
|
Ñêîðîñòü
|
Öï ¹1
|
Öï ¹2
|
RTT
|
Ñêîðîñòü
|
Öï ¹1
|
Öï ¹2
|
1
|
1,438
|
9,57
|
2,016
|
9,10
|
7,7
|
6
|
1,856
|
12,10
|
10,7
|
8,3
|
2
|
1,551
|
9,51
|
1,925
|
9,10
|
4,7
|
8,3
|
2,119
|
12,10
|
17
|
8,7
|
3
|
1,532
|
9,58
|
1,990
|
9,10
|
6,6
|
6,3
|
2,245
|
12,10
|
10,7
|
8,3
|
4
|
1,474
|
9,59
|
2,246
|
9,09
|
6
|
8,7
|
2,236
|
12,10
|
25,6
|
11
|
5
|
1,481
|
9,59
|
2,258
|
9,10
|
5,7
|
8
|
2,191
|
12,10
|
10,3
|
8,7
|
6
|
1,471
|
9,59
|
2,344
|
9,10
|
7,7
|
6,3
|
2,212
|
12,10
|
10,3
|
8,7
|
7
|
1,694
|
9,50
|
2,360
|
9,10
|
8,3
|
8,7
|
2,262
|
12,10
|
7,3
|
7,7
|
8
|
1,519
|
9,58
|
2,285
|
9,10
|
3
|
8,7
|
2,304
|
12,10
|
30,1
|
11,7
|
9
|
1,470
|
9,59
|
2,336
|
9,09
|
7,6
|
6,3
|
2,208
|
12,10
|
12,7
|
8,7
|
10
|
1,470
|
9,60
|
2,317
|
9,09
|
6,3
|
8,3
|
2,212
|
12,10
|
11
|
8,7
|
11
|
1,575
|
9,58
|
2,282
|
9,09
|
6,3
|
8,7
|
2,258
|
12,10
|
23,3
|
11,7
|
12
|
1,475
|
9,59
|
2,319
|
9,10
|
6
|
6,7
|
2,203
|
12,10
|
14
|
8,3
|
13
|
1,686
|
9,60
|
2,224
|
9,09
|
4,7
|
8,7
|
2,267
|
12,10
|
10,7
|
7,7
|
14
|
1,725
|
9,59
|
2,258
|
9,10
|
4
|
8,3
|
2,238
|
12,10
|
10,3
|
11,3
|
15
|
1,706
|
9,58
|
1,941
|
9,09
|
7,7
|
6,7
|
2,312
|
12,10
|
29,3
|
8,7
|
16
|
1,744
|
9,60
|
2,155
|
9,10
|
6,7
|
8,7
|
2,187
|
12,10
|
11
|
8,3
|
17
|
1,551
|
9,60
|
2,313
|
9,09
|
7,3
|
6,3
|
2,224
|
12,10
|
9,7
|
11
|
18
|
1,529
|
9,60
|
2,226
|
9,10
|
7,3
|
8,7
|
2,190
|
12,00
|
8,3
|
9
|
19
|
1,449
|
9,58
|
2,240
|
9,09
|
8,7
|
8
|
12,00
|
31,3
|
9,3
|
20
|
1,467
|
9,62
|
2,218
|
9,10
|
8
|
8,3
|
2,176
|
12,10
|
11,3
|
9,7
|
21
|
1,499
|
9,59
|
2,200
|
9,10
|
7
|
8,7
|
2,196
|
12,10
|
11
|
9,3
|
22
|
1,399
|
9,60
|
2,283
|
9,09
|
9,7
|
6,3
|
2,150
|
12,10
|
21
|
8,7
|
23
|
1,545
|
9,59
|
2,264
|
9,10
|
7
|
8
|
1,825
|
12,10
|
16
|
7,3
|
24
|
1,530
|
9,59
|
2,278
|
9,09
|
6,6
|
8,7
|
2,226
|
12,10
|
11,6
|
12,7
|
25
|
1,374
|
9,58
|
2,244
|
9,09
|
8,7
|
8,3
|
2,273
|
12,10
|
10,3
|
8,3
|
Ñð
|
1,534
|
9,584
|
2,221
|
9,096
|
6,772
|
7,788
|
2,194
|
12,092
|
14,992
|
9,272
|
 ïðèëîæåíèè
1 èñïîëüçîâàíû
ñëåäóþùèå îáîçíà÷åíèÿ:
· ¹ - íîìåð îïûòà.
Ïîä îïûòîì ïîíèìàåì
ïåðåäà÷ó ôàéëà
èç îäíîé ñåòè
â äðóãóþ â òå÷åíèè
10 ñåêóíä;
· Áåç VPN - îïûòû ïðîèçâîäèëèñü
áåç èñïîëüçîâàíèÿ
òåõíîëîãèè VPN;
· AES-256-CBC - ïðîèçâîäèòåëüíîñòü
êàíàëà ïðè øèôðàöèè
ïåðåäàâàåìûõ
äàííûõ ñ ïîìîùüþ
256 áèòíîãî êëþ÷à
AES;
· Øèôðîâàíèå
ñ ñæàòèåì òðàôèêà
- ïðîèçâîäèòåëüíîñòü
êàíàëà ïðè èñïîëüçîâàíèè
ñæàòèÿ øèôðîâàííîãî
òðàôèêà;
· RTT - âðåìÿ ìåæäó
îòïðàâêîé çàïðîñà
è ïîëó÷åíèåì
îòâåòà â ìèëëèñåêóíäàõ
(Round Trip Time);
· Ñêîðîñòü - ïðîïóñêíàÿ
ñïîñîáíîñòü
êàíàëà, èçìåðÿåìàÿ
â Ìáèò/ñåê;
· Öï1 - çàãðóçêà
öåíòðàëüíîãî
ïðîöåññîðà íà
ïåðåäàþùåì ìàðøðóòèçàòîðå;
· Öï2 - çàãðóçêà
öåíòðàëüíîãî
ïðîöåññîðà íà
ïðèíèìàþùåì
ìàðøðóòèçàòîðå;
· Ñð - ñðåäíåå
àðèôìåòè÷åñêîå
çíà÷åíèå.
Òàáëèöà
çíà÷åíèé ïðîïóñêíîé
ñïîñîáíîñòè
Èíòåðíåò êàíàëà,
èñïîëüçóÿ SSH
¹
|
Áåç VPN
|
SSH
|
|
|
AES-256-CBC
|
Øèôðîâàíèå
ñ ñæàòèåì òðàôèêà
|
|
RTT
|
Ñêîðîñòü
|
RTT
|
Ñêîðîñòü
|
Öï ¹1
|
Öï ¹2
|
RTT
|
Ñêîðîñòü
|
Öï ¹1
|
Öï ¹2
|
1
|
1,438
|
9,57
|
2,068
|
8,85
|
1,3
|
10,3
|
2,224
|
11,60
|
33,8
|
13
|
2
|
1,551
|
9,51
|
2,374
|
8,85
|
1
|
9,7
|
2,258
|
10,40
|
36,7
|
11,3
|
3
|
1,532
|
9,58
|
2,379
|
8,84
|
1,7
|
10,7
|
2,360
|
11,40
|
25
|
16,6
|
4
|
1,474
|
9,59
|
2,354
|
8,84
|
0,7
|
8
|
2,285
|
11,50
|
25,3
|
12
|
5
|
1,481
|
9,59
|
2,348
|
8,85
|
2,3
|
10,3
|
2,282
|
11,50
|
71,3
|
13,7
|
6
|
1,471
|
9,59
|
2,133
|
8,83
|
2
|
10
|
2,319
|
11,50
|
24,9
|
10,3
|
7
|
1,694
|
9,50
|
2,451
|
8,83
|
2,3
|
10,7
|
2,224
|
11,50
|
35,7
|
17,30
|
8
|
1,519
|
9,58
|
2,411
|
8,86
|
2,7
|
7,7
|
2,524
|
11,40
|
35,9
|
12,7
|
9
|
1,470
|
9,59
|
2,390
|
8,84
|
2
|
10,3
|
2,326
|
11,40
|
57,7
|
13,3
|
10
|
1,470
|
9,60
|
2,423
|
8,85
|
1,3
|
10
|
2,232
|
11,60
|
24
|
14
|
11
|
1,575
|
9,58
|
2,524
|
8,86
|
2
|
10
|
1,864
|
11,70
|
36,3
|
12,7
|
12
|
1,475
|
9,59
|
2,354
|
8,84
|
3,3
|
8
|
2,235
|
11,40
|
54,3
|
11,3
|
13
|
1,686
|
9,60
|
2,423
|
8,85
|
5
|
10
|
2,120
|
11,50
|
37,3
|
18,6
|
14
|
1,725
|
9,59
|
2,354
|
8,85
|
1
|
10,3
|
2,221
|
11,40
|
23,6
|
12
|
15
|
1,706
|
9,58
|
2,294
|
8,86
|
1,3
|
7,3
|
2,228
|
11,50
|
26,6
|
13,7
|
16
|
1,744
|
9,60
|
2,133
|
8,84
|
3,3
|
10
|
2,423
|
11,30
|
77
|
11
|
17
|
1,551
|
9,60
|
2,187
|
8,84
|
0,7
|
10
|
2,354
|
11,50
|
22,6
|
16,7
|
18
|
1,529
|
9,60
|
2,374
|
8,83
|
2,7
|
10
|
2,423
|
11,60
|
31,7
|
14
|
19
|
1,449
|
9,58
|
2,258
|
8,84
|
2,3
|
7,7
|
2,354
|
10,40
|
34,1
|
13
|
20
|
1,467
|
9,62
|
2,235
|
8,85
|
1,7
|
10
|
2,294
|
11,60
|
55,4
|
10,3
|
21
|
1,499
|
9,59
|
2,133
|
8,85
|
1
|
10
|
2,133
|
11,20
|
24,7
|
15
|
22
|
1,399
|
9,60
|
2,212
|
8,83
|
3
|
9,7
|
2,374
|
11,20
|
35,6
|
12,7
|
23
|
9,59
|
2,305
|
8,85
|
2,3
|
8
|
2,258
|
11,30
|
59,1
|
12
|
24
|
1,530
|
9,59
|
2,336
|
8,84
|
1,7
|
10,7
|
2,190
|
11,40
|
34,3
|
12
|
25
|
1,374
|
9,58
|
2,273
|
8,86
|
1,3
|
10
|
2,288
|
11,40
|
25,3
|
18,3
|
Ñð
|
1,534
|
9,584
|
2,309
|
8,845
|
1,704
|
8,140
|
2,272
|
11,368
|
37,928
|
13,500
|
 ïðèëîæåíèè
1 èñïîëüçîâàíû
ñëåäóþùèå îáîçíà÷åíèÿ:
· ¹ - íîìåð îïûòà.
Ïîä îïûòîì ïîíèìàåì
ïåðåäà÷ó ôàéëà
èç îäíîé ñåòè
â äðóãóþ â òå÷åíèè
10 ñåêóíä;
· Áåç VPN - îïûòû ïðîèçâîäèëèñü
áåç èñïîëüçîâàíèÿ
òåõíîëîãèè VPN;
· AES-256-CBC - ïðîèçâîäèòåëüíîñòü
êàíàëà ïðè øèôðàöèè
ïåðåäàâàåìûõ
äàííûõ ñ ïîìîùüþ
256 áèòíîãî êëþ÷à
AES;
· Øèôðîâàíèå
ñ ñæàòèåì òðàôèêà
- ïðîèçâîäèòåëüíîñòü
êàíàëà ïðè èñïîëüçîâàíèè
ñæàòèÿ øèôðîâàííîãî
òðàôèêà;
· RTT - âðåìÿ ìåæäó
îòïðàâêîé çàïðîñà
è ïîëó÷åíèåì
îòâåòà â ìèëëèñåêóíäàõ
(Round Trip Time);
· Ñêîðîñòü - ïðîïóñêíàÿ
ñïîñîáíîñòü
êàíàëà, èçìåðÿåìàÿ
â Ìáèò/ñåê;
· Öï1 - çàãðóçêà
öåíòðàëüíîãî
ïðîöåññîðà íà
ïåðåäàþùåì ìàðøðóòèçàòîðå;
· Öï2 - çàãðóçêà
öåíòðàëüíîãî
ïðîöåññîðà íà
ïðèíèìàþùåì
ìàðøðóòèçàòîðå;
· Ñð - ñðåäíåå
àðèôìåòè÷åñêîå
çíà÷åíèå.
Êîä
ñòðàíèöû web-èíòåðôåéñà
Index.php:
<?php include "check.php"; ?>
<html>
<head>
<?php("global.php"); $funk, $yearmonth;_connect();
?>
<meta name="GENERATOR" content="Quanta
Plus">
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">
<LINK rel="stylesheet"
href="style.css" type="text/css">
</head>
<body >
<table>
<tr>
<td align=left valign=top>
<h3>Ïåðñîíàëüíàÿ
ñòàòèñòèêà:<br>
<?php
//get checked ips
$query = "SELECT checkedip,uname,INET_NTOA(checkedip)
from users order by checkedip";
$result = mysql_query ($query);($result) {"<form
method=GET name=checkedips action=index.php>: <select name=checkedip
onChange=checkedips.submit()>
<option>--------
"; ($b = mysql_fetch_array ($result))
{
if ($checkedip == $b[0]) {echo "<option value=$b[0]
selected=selected>$b[2] : $b[1]";} {echo "
<option value=$b[0]>$b[2] : $b[1]
";}}"</select>
<input type=hidden name=funk value=$funk>
ìåñÿö <select name=month
onChange=checkedips.submit()>
";
$i = 0;($mm as $m_) {
$i++; ($month==$i) echo "<option value=$i
selected=selected>$m_";echo " <option value=$i>$m_";
}
}
?>
</select>
<select name=year onChange=checkedips.submit()>
<?php($yy as $y_) {($year==$y_) echo "<option
value=$y_ selected=selected>$y_";echo " <option
value=$y_>$y_";
}
?>
</select>
ãîä
</form></h3>
<ul><li><a href=index.php?ch=1>Statistic on
all users</a></li></ul>
<ul><?php echo "
<li><a
href=index.php?checkedip=$checkedip&funk=print_month_inet&month=$month&year=$year>Çàãðóçêà
èç Èíòåðíåò çà
ìåñÿö</a>
<li><a
href=index.php?checkedip=$checkedip&funk=print_day_inet&month=$month&year=$year>Çàãðóçêà
èç Èíòåðíåò ïî
äíÿì</a>
<li><a href=index.php?checkedip=$checkedip&funk=print_day_inet_upload&month=$month&year=$year>Îòãðóçêà
â Èíòåðíåò ïî
äíÿì</a>
<li><a
href=index.php?checkedip=$checkedip&funk=print_inet&month=$month&year=$year&lim=0>Ïîñåùåíèÿ
Èíòåðíåò</a>
</ul>
<ul>
<li><a href=lans.php> Ëîêàëüíûå
ñåòè</a>
<li><a href=users.php> Ïîëüçîâàòåëè</a>
</ul>
<ul>
<li><a href=exit.php align=left>Âûõîä</a></li>
</ul>
";"<h3><font color=yellow>:: $now
::</font></form></h3>";("calendar.php"); ?>
<td align=left valign=top>
<?php ($funk == "print_time" || $funk ==
"print_time_upload" || $funk=="print_inet" || $funk
=="print_lan") {$funk ($year,$month,$lim);}($_GET['ch']==1)
all();$funk ($year,$month);_close ();
?>
</table>
</td>
</tr>
<tr><td colspan=2>
<br>
<p align="right"><font
size="4"><?php echo "<b>Òåõ. ïîääåðæêà:
sysadmin@arscraft.ru</b>";?>
</td>
</tr>
</table>
</body>
</html>
Ðàçìåùåíî
íà Allbest.ru