АНДРЕЙ ПОНАРЕВ, в прошлом системный администратор ЗАО «Нефтепродукт», в настоящее время – фрилансер
Контроль трафика
Прослушиваем и просматриваем вместе с BWMeter
Хотите обеспечить защиту небольшой сети и наблюдать за ее активностью без особых усилий? Контролировать сеть прямо в офисе? Это возможно.
… когда видят солнце и луну, это не считается острым зрением;
когда слышат раскаты грома, это не считается тонким слухом.
Сунь-Цзи, IV, 4
Компьютеры, а вместе с ними и Интернет, сейчас незаменимы в любой фирме. Но раз есть Интернет, значит, есть и угроза вторжения вредоносного ПО, что уже само по себе неприятно. Нужна надежная защита подобной сети с учетом области ее применения. Но количество ПО, проводящих защиту таких сетей от нежелательных вторжений, настолько велико, что выбрать среди них подходящее – дело не из легких. Я предлагаю вам обратить внимание на BWMeter, легкий в освоении, но в то же время невероятно мощный инструмент.
Возможности BWMeter
В первую очередь BWMeter – это сетевой монитор, способный следить за трафиком и при необходимости сообщать об изменениях в его объеме. Вместе с тем визуальная часть также порадует нас своими возможностями. Сетевую активность можно отобразить в графиках, причем для каждого вида трафика можно завести отдельную диаграмму. Очень выручает возможность ведения статистики и логов, хотя на такое способен практически каждый сетевой монитор.
В свою очередь, программа не потребует мощного компьютера. Единственное, что придется соблюсти, – это поставить Windows. Причем BWMeter поддерживает всю серию систем Windows: от старинных 95-х и 98-х до Vista и новомодной Windows 7, которая выходит совсем скоро. С семеркой, кстати, парни разобрались только в версии 5.1.1.
Чем же так примечательна программа? В первую очередь установкой (см. рис. 1). А если короче, она проста, как апельсин. После запуска инсталлятора можно смело «промотать» первые два окна с лицензионным соглашением. Конечно, их можно и обстоятельно изучить, но в защите сети они вам никак не помогут. В следующем окне вам предложат выбрать директорию установки и директорию для настроек. Вот и все, можете жать Install.
Рисунок 1. Установка BWMeter
Это, конечно, не самое главное достоинство программы. Далее по шкале «необычности» идет файервол. Он настраивается, если так можно выразиться, с полпинка. Конечно, сначала он кажется неудобным и странным. Но после того как вы в нем разберетесь, а это займет немного времени, я вас уверяю, вы поймете, что ничего лучше и удобнее нет на свете. Однако самое главное в BWMeter – это возможность удаленно следить за трафиком, настройка подобной возможности дело нехитрое. Вообще этот монитор очень прост в использовании, хотя и имеет обширный список возможностей. Не верите? Тогда запустите его и проверьте это.
Если вы запустили BWMeter впервые, то вместе с несколькими диаграммами на экране появится окно настроек межсетевого монитора. Чтобы добраться до настроек, когда вам этого хочется, необходимо в трее найти иконку монитора, щелкнуть по ней правой кнопкой мыши и выбрать пункт Options. То же произойдет после двойного клика по любой из диаграмм или после нажатия <Ctr>+<O> в тот момент, когда одна из диаграмм активна (см. рис. 2).
Рисунок 2. Основные настройки сетевого монитора
Раздел General Options кроме привычных пунктов настроек содержит доселе незнакомый Start after BWMeter и Use password protection. Если с последним все ясно, он предоставляет возможность ставить пароль на настройки, то первый немного смущает. Зачем что-то запускать после монитора? Ну мало ли... Конечно, если ваш компьютер постоянно подключен к сети, то эта возможность вам не нужна. А если в сеть вы выходите только для того, чтобы отправить и получить почту? В таком случае постоянно работающий сетевой монитор будет только поглощать ресурсы компьютера, не принося при этом никакой пользы. А если еще учесть, какие компьютеры сейчас стоят на производстве? Тогда удобнее было бы запускать монитор только во время выхода в сеть, и одновременно запускать необходимую программу, для чего выгоднее пользоваться встроенной функцией.
Тонкости фильтрации
BWMeter создан скорее для слежения за трафиком, а не для его фильтрации, но и на это программа способна. Я даже скажу, что следить за трафиком удобно в первую очередь благодаря фильтрам. От слов к делу: перейдем ко вкладке Filters. В одноименном разделе нам предоставляют возможность создавать политики фильтрации. По умолчанию присутствует только две: Internet и Local Network. Назначение кнопок Add и Delete, думаю, и так понятно, а вот с кнопкой Copy стоит разобраться поподробнее. Конечно, с ней тоже все просто, она создает новую политику путем копирования старой. Мне лишь хотелось отметить, что эта элементарно реализуемая функция встречается далеко не у всех брандмауэров, хотя она позволяет экономить ценное время.
Область действия каждой политики поддается очень тонкой, но не всегда доступной для понимания настройке. Поэтому, чтобы не углубляться в теорию, я предлагаю рассмотреть возможности фильтров на практике, создав группу политик для экономии трафика и защиты компьютера от нежелательных вторжений. Итак, ситуация: имеется компьютер, подключенный к локальной сети и Интернету. Во внутренней сети присутствует FTP-сервер, доступ к которому осуществляется штатными средствами Windows. Также на компьютер установлен браузер Mozilla Firefox. А в Интернете тем временем буйствует червь MSBlast! В общем, рядовые будни сисадмина (см. рис. 3).
Рисунок 3. Настройка фильтров
Начнем с простого – с разграничения локальной сети и Интернета. Цель нашего действия: обеспечить возможность управлять отдельно каждым видом трафика. Я думаю, каждый администратор сталкивался с подобной проблемой. Для решения поставленной задачи нам потребуется две политики: Local traffic и Internet traffic. Я рекомендую удалить стандартные политики с помощью кнопки Delete. Воспользовавшись кнопкой Add, создадим новую политику под названием Local traffic. Теперь в разделе Filter Definition раскроем вкладку General и изучим ее поподробнее.
Галочка Enabled позволяет прекращать и возобновлять работу политику. Список с названием Mode позволяет выбрать режим работы политики: Normal, Firewall (Silent) и Firewall (Interactive).
Normal – это обычный фильтр, он собирает в себе пакеты определенного вида. Firewall отличается от обычного фильтра тем, что вдобавок может еще и блокировать приложения, а в интерактивном случае может даже подать сигнал. Мы к ним еще вернемся. Для отделения входящего трафика от исходящего можно воспользоваться разделом Traffic, поломав голову над галочками Include Download и Include Upload.
Нам же необходимо учесть и входящий, и исходящий трафики, поэтому нужно установить обе галочки в разделе Traffic. Также в списке Mode выберем режим Normal, т.к. нас не интересует блокирование приложений. А теперь перейдем к вкладке Source. Нетрудно догадаться, что эта вкладка предназначена для фильтрации трафика по адресу источника пакета. В одноименном разделе вкладки мы увидим два списка: Include и Exclude. Первый содержит адреса, включенные в фильтр, второй – исключенные из него. Напомню, что если пакет входящий, то в поле Source хранится адрес машины, которой он был послан, если же пакет исходящий, то там хранится адрес машины, которая его отослала. Исходя из этого, в список Include нам необходимо включить адрес данной машины. После нажатия кнопки Add появится диалог ввода адреса (Address Definition) на выбор: все адреса, только адрес этой машины и т.п. Думаю, с этим и так все понятно (см. рис. 4).
Рисунок 4. Выбираем тип адреса из предложенного списка
Теперь перейдем ко вкладке Destination. Здесь нам предстоит отбирать пакеты по их целевому адресу. Два уже знакомых нам списка и аналогичный способ ввода данных. Опять же напомню, что если пакет исходящий, то целевой адрес – это адрес машины, которой он был отправлен, а если входящий, то адрес машины, которая отправила пакет. Следовательно, в список Include нужно добавить все адреса локальной сети. В списке адресов для подобных целей присутствует отдельный пункт – All computers in the local network. Этот список редактируется во вкладке Options, в разделе Local Network.
Политика Internet traffic настраивается аналогично, только во вкладке Destination в список Include нужно включить все адреса (All addresses в диалоге Address Definition), а в список Exclude включить все адреса локальной сети. Кстати, перемещение значения из одного списка в другой можно осуществить нажатием одноименных кнопок.
Настало время настроить фильтр для отсеивания трафика FTP. Для этого создадим политику Local FTP traffic путем копирования политики Local traffic. И сразу же обратимся ко вкладке Port. Нас встретят уже знакомые списки Include и Exclude. Кликнyв по кнопке Add, мы увидим диалог Port Definition. В этом окне две вкладки – Simple и Advanced. В первой вкладке мы вводим один порт, а во второй целых два (см. рис. 5). Как так?
Рисунок 5. Вводим порт для «Огненного Лиса»
Допустим, мы отслеживаем FTP-трафик и нас не интересует, с какого порта пришел пакет. Но возможны ситуации, в которых от этого зависит отсеивание трафика. Тогда нужно пользоваться вкладкой Advanced. Таким образом, в список Include нужно включить 21 ТСР-порт. Но вот незадача: во вкладке Port настраивается только внешний порт. Не беда, тут нам поможет вкладка Protocol, в которой можно аналогичным образом настроить внутренний порт. Нам нужен 6-й, он как раз соответствует ТСР.
Также не помешало бы настроить приложения, для которых будет активна данная политика. За это отвечает вкладка Application. И снова два списка. По нажатию на кнопку Add нам предложат либо указать приложение вручную, либо выбрать одно из стандартных. Стандартные – это System и All. Нас, как нетрудно догадаться, интересует первое.
Настройка «Огненного Лиса» тоже проста. Достаточно скопировать политику Internet Traffic и добавить к фильтру два порта: 80-й и 443-й, HTTP и HTTPS соответственно. Ну и, конечно, приложение выбрать. В принципе порты можно и не выбирать, ограничившись лишь выбором приложения.
А как теперь заблокировать нежелательный интернет-трафик? Достаточно скопировать все ту же политику Internet Traffic и во вкладке Application в раздел Include вписать все приложения, а в раздел Exclude – системные приложения и «лиса». Но это лишь отследит нежелательный трафик. А как его «зарубить»? Обратим внимание на раздел Speed Limit. Там можно установить галочку Stop traffic. Но есть и альтернатива, чтобы подобный трафик не забивал канал (когда всякие «винампы» обновления ищут), можно ему задать скоростной лимит. Для этого можно установить галочками Enable download/upload speed limit и выбрать нужное значение.
Но мы забыли про MSBlast, действия которого тем временем приобретают масштабы наполеоновских завоеваний. Как известно, данный червь ломится через 135 ТСР-порт, который открыт службой DCOM RPC. Можно, конечно, скачать заплатку, если эта служба необходима. Если же она не представляет интереса, то проще создать политику, блокирующую данный вид трафика. Мы так и поступим.
Создадим новую политику, и в списке Mode выберем Firewall (Interactive). В политику нужно включить все адреса, ТСР-протокол и 135-й порт. А вот в разделе Firewall нужно все значения из списка Allow перевести в список Forbid (там должны быть системные приложения и svchost.exe). И MSBlast успешно остановлен!
Возможности мониторинга
Наверное, BWMeter – одна из самых удобных программ для слежения за трафиком. Она является таковой благодаря тому, что следит не за всем трафиком, а только за тем, который проходит через фильтры. С одной стороны, это неудобно, т.к. фильтры вряд ли покроют весь трафик. Но ведь всегда можно создать отдельный фильтр, через который проходит весь трафик, и при желании отслеживать и его. А представьте, если программа жестко следит за всем трафиком, не давая ее грамотно настроить. Тогда вся информация месится в кучу, и разобрать что-то в этой куче представляется невозможным. Конечно, «грамотный» администратор потратит целый день на разбор логов и таки найдет нужную информацию. Но есть ли у меня, «обычного» администратора, столько времени? Вряд ли.
Возможно, при запуске программы вы заметили несколько диаграмм, отображающих активность сети. Эти графики отображали активность двух стандартных фильтров. Для настройки подобных графиков обратимся ко вкладке Graphs (см. рис. 6).
Рисунок 6. Следим за активностью браузера
Создание и удаление графиков происходит в одноименном разделе. Все аналогично созданию фильтров. Я предлагаю для начала создать два графика: Local Traffic и Internet Traffic. Если теперь выделить один из графиков и обратить внимание на раздел Show Activity of These Filters, то мы увидим пустой список. А что там должно быть? Там должен быть список фильтров, активность которых отображается на графике. Причем, заметьте, на одном графике могут отображаться несколько фильтров, однако я не советую вам так делать, если речь идет о вашей машине. Если же вы удаленно отслеживаете активность еще нескольких машин, то было бы удобнее на одном графике отображать несколько фильтров, но об этом позже.
Разделы Scale, Update Interval, Visual Style и Position & Size не представляют сложности в понимании, да и особенностями, о которых стоило бы рассказать, они не блещут. А вот раздел Visibility стоит того, чтобы о нем поговорить отдельно. Галочка Visible позволяет, как нетрудно догадаться, скрывать или показывать график. Нижележащие галочки Show if activity rise above и Hide if activity falls below позволяют настроить автоматическое скрытие или появление графика. Вот, допустим, активность почтового клиента сейчас нулевая, что, спрашивается, смотреть на ее графике? Ответ – ничего. Поэтому рекомендую для нее установить обе галочки. Первая отображает график, если активность поднимется выше одного процента на графике, вторая спрячет график, если активность упадет ниже одного процента. Разумеется, проценты можно настроить вручную.
Ну это все, конечно, хорошо. Можно визуально отобразить активность каждого фильтра, что, скорее, удобно администратору. Все перед глазами, в логи лезть не надо. А что сказать начальнику, если он попросит отчет о сетевой активности? Показать ему графики? Боюсь, он не поймет шутки. Поэтому какой-нибудь отчет-таки придется сделать. В этом нам поможет вкладка Statistics (см. рис. 7).
Рисунок 7. Сохраняем статистику в файл
Как сразу видно, BWMeter ведет статистику по каждому фильтру, причем записывает статистику не чаще чем раз в час. Сроки обновления статистики хранятся во вкладке Schedule настройки фильтра. С помощью кнопки Overview можно увидеть статистику всех фильтров сразу. Причем всю эту информацию можно экспортировать в формат .csv, который распознается Excel’ем, ввиду чего, немного поломав голову и приведя данные в удобочитаемый вид, можно все это вывести на бумагу и передать начальнику. Также, если вас интересует детальный отчет фильтра, его можно записать, пользуясь вкладкой Details. В разделе Control указанной вкладки располагаются две кнопки: Start и Clear. Первая начинает запись лога указанного фильтра, а вторая его очищает. Сам лог можно настроить с помощью раздела Destination (см. рис. 8).
Рисунок 8. Детальный отчет об активности «Огненного Лиса»
Ну и напоследок еще одна положительная сторона BWMeter – возможность настраивать систему оповещения. Для таких дел предназначена вкладка Alerts. В разделе Filters to Watch можно включать и исключать фильтры, за которыми производится слежение. Здесь все понятно, думаю, не стоит на этом останавливаться.
В разделе Condition настраивается ситуация, в случае которой выдается сообщение. А именно: в случае превышения лимита на суммарный трафик, в случае критического уменьшения/увеличения количества трафика за заданный промежуток времени и в случае передачи заданного объема информации. Пункты Reaches, Traffic и Each Time соответственно. Способов сообщить о случившемся представляется несколько, можно как подать звуковой сигнал, так и запустить какую-нибудь программу и даже отправить сообщения на заданный e-mail-адрес! Все это можно найти в разделе General, галочка Notification.
Контроль за сетью
Ну и наконец самая впечатляющая часть BWMeter – это возможность следить за трафиком удаленно, физически находясь хоть у себя дома. Для настройки подобных возможностей существует вкладка Remote.
Основную часть окна во вкладке занимает список Remote Filters, который содержит те фильтры, которые мы отслеживаем удаленно. После нажатия на кнопку Add перед нами появляется окно Add Remote Filters. Здесь мы выберем фильтр, за активностью которого желаем следить. В разделе Select Location нужно ввести адрес машины, на которой установлен BWMeter. Если с адресом трудновато, то можно воспользоваться кнопкой Browse... и выбрать компьютер из представленного списка. В разделе Choose Filter отображается список фильтров удаленной машины, из которого вам нужно выбрать требуемый. Чтобы получить список, нужно нажать кнопку List Filters. Чтобы не тратить время на получения списка фильтров, можно ввести название фильтра сразу, если, конечно, вы его помните (см. рис. 9).
Рисунок 9. Выбираем фильтр для удаленного слежения
В разделе Remote Features мы настраиваем, какую информацию и как часто хотим получать от удаленной машины. Нам представляется возможность получать информацию о фильтрах и использовать ее в графиках (галочка Enable remote filters in local graphs). Благодаря этой возможности мы сможем отображать активность фильтров удаленной машины на наших локальных диаграммах. Также можно получать статистику фильтров (галочка Enable remote statistics). То есть для составления отчета не придется бегать по кабинетам. Раздел Remote Options позволяет настроить параметры подключения. Это, как всегда, порт (по умолчанию 24810) и адрес компьютера, который имеет право получать информацию от нашего брандмауэра.
Что дальше? Идем во вкладку Graph и создаем диаграммы, отображающие активность удаленных фильтров. Я бы рекомендовал настроить по одной диаграмме на каждую машину, в которой отображать общую активность приложений. Это легко сделать, если во вкладке Graph в список Show Activity of These Filters включить несколько схожих фильтров. И получается такой себе «хакерский» рабочий стол. Есть, конечно, и недостатки у этой возможности. Скажем, детальную статистику с удаленного фильтра записать не получится. Нельзя также удаленно настраивать фильтры. А как всего этого хотелось бы! Но не надо забывать, что проект не заброшен и разработка новых возможностей продолжается. Так что, быть может, мы увидим воплощение нашей мечты.
Слово о лицензии
Я думаю, что проблема выбора сетевого монитора – одна из самых актуальных на данный момент. Количество же подобного ПО растет как грибы после дождя, тем самым выбор усложняется в несколько раз. Надеюсь, я облегчил этот выбор, и BWMeter будет практиковаться теперь не только мной и моими знакомыми. А не практиковать решительно нельзя. Ведь стоимость данного продукта крайне мала – всего 30$. Поэтому я рекомендую попробовать BWMeter в действии.
Приложение
А что еще?
ПО, проводящего выслеживание и отсеивание сетевого хлама, сейчас очень много. Среди них есть достойные внимания. Это, во-первых, Kerio Winroute. Это просто мастодонт, настоящий сетевой монитор. У него есть все для слежения за корпоративной сетью. По своим возможностям он не то что догоняет BWMeter, он перегоняет его с безумной скоростью. Но… какой же он огромный и сложный! Разобраться в этом творении – воистину задача не из легких. А после этого его еще нужно настроить! В общем, для небольших сетей – это сплошной минус.
Не менее достойным претендентом является Kaspersky Internet Security. Всем хорош, много настроек, и все понятны. Настраивается достаточно быстро, хотя и придется попотеть. Особенно порадовала функция «Родительского контроля», ограничивая доступ к некоторым ресурсам. Одно вот только беспокоит: защищать придется каждый компьютер в отдельности, а не всю сеть сразу. А после BWMeter уже так привычно следить за активностью сети удаленно.
Одним словом, выбор всегда за администратором, нужно лишь твердо верить, что решение придет. А искать есть где. Бегло осмотрев рынок мониторов, можно отметить Comodo, Outpost, Sygate, Jetico. Их много, достаточно выбрать подходящий. Дерзайте!