
- •2. Версии iPv4 и iPv6
- •3. Пакеты и их инкапсуляция
- •4. Адресация пакетов
- •Глава 14. Сети tcp/ip 505
- •6. Cidr: протокол бесклассовой междоменной маршрутизации
- •7. Частные адреса и система nat
- •8. Маршрутизация
- •9. Таблицы маршрутизации
- •10. Arp: протокол преобразования адресов
- •11. Dhcp: протокол динамического конфигурирования узлов
- •12. Ррр: протокол двухточечного соединения
- •13. Команда ifconfig: конфигурирование сетевых интерфейсов
- •14. Демоны маршрутизации
- •Глава 15. Маршрутизация 571
- •15. Основные протоколы маршрутизации
- •Глава 15. Маршрутизация 567
- •16. Технология Ethernet: сетевая панацея
- •17. Беспроводной стандарт: локальная сеть для кочевников
- •18. Dsl и кабельные модемы: “последняя миля” 8
- •Глава 16. Сетевые аппаратные средства 593
- •20. Основные задачи системы dns
- •Глава 18. Сетевой протокол Network File System 737
- •22. Серверная часть протокола nfs
- •Глава 18. Сетевой протокол Network File System 745
- •23. Клиентская часть протокола nfs
- •Глава 18. Сетевой протокол Network File System 753
- •24. Ldap: упрощенный протокол доступа к каталогам
- •25. Структура данных ldap
- •Глава 19. Совместное использование системных файлов 775
- •26. Nis: Сетевая информационная служба
- •27. Системы электронной почты
- •Глава 20. Электронная почта 789
- •28. Протоколы smtp, pop3.
- •30. Почтовые серверы
- •Часть II. Работа в сети
- •31. Cпам и вредоносные программы
- •Глава 20. Электронная почта 813 ip range
- •32. Фильтрация почты
- •33. Почтовый агент sendmail
- •34. Почтовый агент Postfix
- •Глава 20. Электронная почта 877
- •35. Поиск неисправностей в сетях
- •Глава 21. Управление сетями 911
- •36. Kоманда traceroute: трассировка ip-пакетов
- •Глава 21. Управление сетями 915
- •37. Команда netstat: получение информации о состоянии сети
- •Глава 21. Управление сетями 919
- •39. Snmp: простой протокол управления сетями
- •40. Протокол NetFlow: мониторинг соединений
- •Глава 21. Управление сетями 939
- •41. Ключевые аспекты безопасности
- •Глава 22. Безопасность 951
- •42. Пароли и учетные записи пользователей
- •43. Эффективное использование команды chroot
- •44. Команда nmap: сканирование сетевых портов
- •45. Bro: программная система для распознавания вторжения в сеть
- •Глава 22. Безопасность 967
- •46. Мандатное управление доступом
- •47. Ssh: безопасная оболочка
- •48. Брандмауэры
- •Глава 22. Безопасность 983
- •49. Функциональный стек lamp
- •50. Обнаружение ресурсов в сети веб
- •Глава 23. Веб-хостинг 1003
- •51. Принцип работы http
- •52. Конфигурирование сервера Apache
- •Глава 23. Веб-хостинг 1011
- •53. Виртуальные интерфейсы
- •54. Протокол Secure Sockets Layes
- •Глава 23. Веб-хостинг 1017
40. Протокол NetFlow: мониторинг соединений
Широко известна способность протокола SNMP регистрировать объем трафика, проходящего через интерфейс. Однако если вас интересует не только объем трафика, но и его тип и пункты назначения, протокол SNMP становится практически бесполезным. Для того чтобы выяснить дополнительные детали, можно запустить анализатор из на бора инструментов системы UNIX, но эту возможность нельзя реализовать для конкрет ного маршрутизатора.
Для того чтобы решить эту проблему, поставщики маршрутизаторов предложили свои собственные инструменты. Самым популярным среди них стал протокол NetFlow компании Cisco.
Протокол NetFlow отслеживает каждое соединение по семи ключам: источник и IP- адрес получателя, источник и номер порта назначения, протокол (TCP, UDP и т.д.), тип службы (ToS) и логический интерфейс. Эти метаданные в сочетании с дополнительной информацией, такой как количество пакетов и байтов, можно послать любой подходя щей программе для сбора данных.
Наиболее распространенными являются версии протокола NetFlow v5 и v7, которые часто объединяются, потому что они по существу одинаковы, за исключением того, что версия v7 имеет дополнительное поле (маршрутизатор источника). Версия v7 использу ется коммутаторами Cisco Catalyst. В настоящее время все более популярной становится версия 9. Ее шаблонная природа обеспечивает высокую гибкость.
Маршрутизатор NetFlow может посылать собранные метаданные соответствующему получателю, например пакету cflowd, разработанному организацией CAIDA. Если се тевое соединение сильно загружено, эта конфигурация порождает огромный объем дан ных, для хранения которого необходима большая дисковая память, и анализатор, спо собный решить поставленную задачу.
В качестве такого анализатора можно использовать пакет FlowScan, разработан ный Дэйвом Плонка (Dave Plonka). К сожалению, он до сих пор не обновлен, но по- прежнему работает хорошо. Его можно найти на сайте net.doit.wisc.edu/~plonka/ FlowScan.
Мониторинг данных протокола NetFlow с помощью утилит nfdump и NfSen
Рассмотрим еще одну пару полезных инструментов для сбора и анализа данных про токола NetFlow — утилиты nfdump (nfdump.sourceforge.net; разработана Петером Хаагом (Peter Haag)) и NfSen (nfsen.sourceforge.net). Коллектор (nfcapd) записы вает данные протокола NetFlow на диск для дальнейшей обработки утилитой nfdump.
Утилиты nfcapd и nfdump предназначены для версий v5/v7 и v9. Для поддержки протокола IPv6 следует использовать версию v9; версии 5 и 7 его не поддерживают.
Утилита nfdump работает почти так же, как и утилита tcpdump (см. раздел 21.7). Она имеет аналогичный синтаксис фильтра, адаптированный для данных протокола NetFlow. Гибкие форматы вывода позволяют настраивать внешний вид записей. Встроенные ге-
938 Часть II. Работа в сети
нераторы отчетов демонстрируют N активных пользователей8 (talkers) вашей сети и другую полезную информацию.
Следующий (немного сжатый) отчет утилиты nfdump показывает, какие IP-адреса и сети составляют трафик, какие порты в настоящий момент являются наиболее актив ными и т.п. Параметры -s ip/flows запрашивают информацию о IP-адресах всех ис точников или пунктов назначения, упорядоченных по объему потока. Параметры -n 10 ограничивают вывод десятью пунктами.
linux$ nfdump -М /data/nfsen/profiles-data/live/upstream -r 2009/07/28/12/nfcapd.200907281205 -n 10 -s ip/flows
Top 10 IP Addr ordered by flows:
Date first seen Durat'n IP Addr Flows Pkts Bytes pps bps bpp
2009-07-28 12:02 467.596 192.168.96.92 27873 67420 3.8M
2009-07-28 12:02 462.700 192.168.96.107 18928 43878 4.7M
2009-07-28 12:02 464.443 192.168.96.198 17321 45454 3.5M
2009-07-28 12:02 454.299 172.16.152.40 11554 29093 1.3M
2009-07-28 12:02 362.586 192.168.97.203 6839 11104 1.2M
2009-07-28 12:02 393.600 172.16.220.139 4802 12883 618384 32 12568 48
2009-07-28 12:02 452.353 192.168.96.43 4477 5144 554709 11 9810 107
2009-07-28 12:02 456.306 192.168.96.88 3416 6642 697776 14 12233 105
2009-07-28 12:02 459.732 192.168.96.108 2544 25555 3.2 M 55 58478 131
2009-07-28 12:02 466.782 192.168.96.197 2143 24103 5.3 M 51 94988 229
144 67347 58
94 85522 112
97 63884 81
64 23996 46
30 28883 117
Summary: total flows: 98290, total bytes: 311.6 M, total packets: 759205, avg bps: 5.3 M, avg pps: 1623, avg bpp: 430
Time window: 2009-07-28 12:02:12 - 2009-07-28 12:09:59
Total flows processed: 98290, skipped: 0, Bytes read: 5111164
Sys: 0.310s flows/second: 317064.5 Wall: 0.327s flows/second: 300366.1
Поскольку данные протокола NetFlow хранятся на диске, их можно несколько раз анализировать с помощью разных наборов фильтров. Еще одна удобная функциональ ная возможность утилиты nfdump позволяет объединять входящие и исходящие потоки в один двунаправленный поток.
Утилита NfSen — это веб-интерфейс для данных протокола NetFlow, который до полняет утилиту nfdump и, следовательно, сочетает графические возможности со всеми функциями утилиты nfdump. Она отображает данные трех разных категорий: потоки, пакеты и байты. Утилита NfSen не только строит графики, но и позволяет просматри вать их, указывать на интересующие пики графика и исследовать отдельные потоки. Для уточнения внешнего вида данных можно применять любые фильтры утилиты nfdump. Сочетание удобного графического пользовательского интерфейса для просмотра данных с функциями утилиты nfdump делает программу NfSen мощным инструментом.
Утилита NfSen позволяет сохранить пользовательский фильтр и настройки внешнего вида отчета в виде профиля, который легко использовать в будущем. Например, можно определить профиль, отслеживающий трафик для вашей зоны DMZ, веб-сервера или клиентской сети.
Профили также делают утилиту NfSen ценным инструментом для работы групп, обе спечивающих безопасность сети, поскольку они могут легко определять разновидность проблемы или сетевого трафика. Например, на рис. 21.6 показан отчет об исследовании атак на основе отказа в обслуживании типа “SYN flood”.
8 “Активный пользователь” — это термин протокола NetFlow, обозначающий устройство, создающее
сетевой трафик.