Що я можу використовувати для моніторингу та реєстрації вхідного / вихідного трафіку до / від віддалених хостів?


14

Я запускаю веб-сервер (Debian Squeeze на VPS), і графіки, надані хостинг-компанією, постійно показують, що на сервер надходить приблизно вдвічі більше трафіку порівняно з вихідним трафіком. Я трохи збентежений цим, тому я хотів би запустити на машині якусь утиліту журналу, яка не тільки підтвердить цифри завантаження / завантаження, але і розділить їх на віддаленому хості, тому я можу побачити, чи значна частина вхідного трафіку відбувається з одного конкретного джерела.

Я підозрюю, що більша частина вихідного трафіку проходить через Apache, але вхідний трафік може бути переважно через Apache або міг би домінувати інші сценарії та завдання cron, тому я вважаю за краще інструмент, який би моніторив трафік на рівні інтерфейсу, а не щось у межах Apache .

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

Чи можливо це за допомогою стандартного інструменту Linux і трохи налаштування (якщо так, то як?) Або за допомогою спеціалізованої програми (якщо так, то яка?)

Відповіді:


11

ntop - це, мабуть, найкраще рішення для цього. Він призначений для довгострокової роботи та фіксування саме того, що ви шукаєте.
Він може показати вам, які віддалені напрямки використовуються найбільше, скільки трафіку надсилається в / з, які протоколи та порти використовуються тощо. Це може зробити те ж саме для вихідних хостів, якщо ви запустите його на маршрутизаторі, щоб ви могли бачити та ж статистика і для місцевих клієнтів.
Потім він використовує веб-графічний інтерфейс для навігації та відображення цієї інформації.

ntop


Вау. Всі ці роки я використовував ntopтак само top, як я не мав уявлення, що в ньому є демон-режим і вбудований веб-інтерфейс! З пропозицією @ ckhan немає нічого поганого, але я прийму це, оскільки мені здається ntop, що вбудований веб-інтерфейс простіший у використанні, ніж tcpdumpслідкує Wireshark.
Ян Рентон

10

Якщо у вас є root, ви можете просто використовувати tcpdumpта захопити все. Потім ви можете підняти його в Wireshark і проаналізувати вміст вашого серця.

$ sudo tcpdump -i <interface> -w mycapture.tcpdump  

... а потім натисніть клавішу ctrl-c, коли вас вистачить. Запустити в screenсеанс, якщо вам потрібно відкреслити і т.д.

За замовчуванням він буде захоплювати лише першу частину кожного пакету, але оскільки вас найбільше цікавить аналіз походження, який повинен бути добре. Тони інших варіантів для tcpdump, якщо ви відчуваєте пригоди.

EDIT : Насправді, завантажившись у Wireshark, ви можете просто скористатися опцією меню Статистика | IP адреси ... і отримайте хороший підсумок трафіку за кількістю / ставкою / відсотками:

введіть тут опис зображення


Дякую, це здається розумним шляхом. Чи знаєте ви, чи Wireshark може автоматично створити тип виводу, який я шукаю (наприклад, "1000 підключень до сервераA, 967 з'єднань з серверомB ...") або мені доведеться написати сценарій для накопичення цієї інформації з дампа TCP себе?
Ян Рентон

@IanRenton - Я думаю, це зробить саме те, що ви хочете, див. Відредаговану відповідь. Я вважаю , що tcpdumpтакож може виплюнути пакетні зведення , які ви могли б легко grep, wcі т.д.
ckhan

4

А для більш досконалих показників ви можете використовувати щось на зразок monitorix, який має модулі для більшості поширених служб, і це просто:

apt-get install monitorix

Також у вас є кактуси повного GUI RDDtool, але не в режимі реального часу.

І в першій для мене - це багатоконфігурувана графана . Його трохи складніше встановити та налаштувати, але він просто ідеальний, ви можете виміряти все детально та в режимі реального часу. Він потребує деяких залежностей JVM, графіту, шепіту, ... деяких знань про JSON, але працює як шарм, я дуже рекомендую його!

Можливо, гарним конфігурацією для вашого випадку має бути:

collectd + graphite + whisper + grafana

Насправді графана змінила моє життя в офісі.


Шепіт викликає безліч хітів, жоден з яких не здається актуальним. За винятком брандмауера для Android ... Чи можете ви дати URL-адресу? Можливо, у вас є github repo зі своїм налаштуванням.
олігофрен

0

впевнений;)

https://github.com/graphite-project/whisper

Крім того, якщо ви хочете міні-хау, як підключити все: https://linuxboss.wordpress.com/2015/12/03/graphite-grafana/


1
Привіт Пітер К - ласкаво просимо до U&L! Ми вважаємо за краще інтегрувати відповіді за посиланнями, щоб відповідь залишалася релевантною, навіть якщо зовнішня веб-сторінка рухається або видаляється. Чи можете ви надати більше інформації як відповідь?
Jeff Schaller
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.