Честно говоря, я плохо разбираюсь в администрировании серверов, но мой начальник попросил меня о помощи. Его сервер имеет ограниченную пропускную способность 2 ГБ в день, и сегодня он получил предупреждение от компании, что он превысил его и использовал ... 24 ГБ.
Поскольку это невозможно, потому что он был таким, он спросил меня, могу ли я отследить проблему. Понятия не имею, с чего начать и что делать.
Любая информация будет полезна, как я могу узнать, что не так.
Машина работает на Ubuntu 12.04. Самое любопытное, что, согласно диаграммам, полученным от хостера, использовался только исходящий перевод.
РЕДАКТИРОВАТЬ
Спасибо за предложения, я буду запускать tcpdump и попробую проверить результат
tcpdump
страницу руководства и узнать, как настроить ее так, чтобы она захватывала только заголовки TCP / IP, отбрасывая оставшиеся данные пакета.Ответы:
Для немедленного мониторинга вы можете использовать iftop . Это покажет вам активные в данный момент соединения и используемую ими полосу пропускания. Как только вы определили соединение с высоким трафиком, найдите номер локального порта и используйте,
netstat
чтобы определить, какому процессу это соединение принадлежит.Для более долгосрочного мониторинга я бы предложил что-то вроде darkstat . Это может дать вам разбивку по хостам и портам, что позволит вам выяснить, с чем связан трафик.
источник
Я бы порекомендовал установить ntop.
http://www.ntop.org/
Поместите это в расположение шлюза / маршрутизатора хоста и следите за трафиком в течение дня / недели. Ntop предоставляет веб-интерфейс, где вы можете получить разбивку по IP / порту / протоколу.
источник
Что ж, захват пакетов, как правило, является первым местом, с которого нужно начинать в подобных ситуациях. Убедитесь, что tcpdump установлен (
$ sudo apt-get install tcpdump
), а затем выполните следующее:Это запишет журнал всех пакетов в
packet.log
. Дайте этому поработать несколько минут, затем загрузите этот файл и проверьте с помощью Wireshark . Если загадочный трафик все еще происходит, он должен быть совершенно очевидным при беглом взгляде на данные захвата пакета.источник
Посмотрите на tcpdump . Он может сбросить весь сетевой трафик (не только tcp, как следует из названия), который затем можно прочитать с помощью приложения, такого как Wireshark. В Wireshark очень легко фильтровать определенные типы данных и даже строить графики сетевого ввода-вывода.
Другим полезным инструментом может быть netstat, который отображает список текущих сетевых подключений. Возможно, есть связи, которых там быть не должно. Tcpdump гораздо более полезен (захватите несколько минут, затем проверьте, видите ли вы уже источник), но netstat может дать вам быстрый обзор.
Кстати, прочитав это, я впервые подумал о том, что на вашем сервере есть вредоносное ПО или что оно используется для атак с усилением. Но чтобы проверить это, вам нужно сначала запустить tcpdump.
Изменить: Обратите внимание, что tcpdump, вероятно, должен быть запущен от имени пользователя root, возможно, вам нужно использовать
sudo tcpdump
.Другое редактирование: так как я не могу найти хорошую веб-страницу, чтобы дать ссылку на то, что атаки усиления в целом, вот короткая версия:
Протоколы, такие как DNS, работают по UDP. UDP-трафик без установления соединения, и, таким образом, вы можете очень легко подделать IP-адрес другого человека. Поскольку ответ DNS обычно больше запроса, его можно использовать для атаки DoS. Злоумышленник отправляет запрос, запрашивающий все записи, которые DNS-сервер имеет для данного имени, и сообщает DNS-серверу, что запрос произошел от X. Этот X является целью, которую злоумышленник хочет сделать DoS. Затем DNS-сервер любезно отвечает, отправляя (большой, скажем, 4 КБ) ответ X.
Это усиление, потому что злоумышленник отправляет меньше данных, чем Х фактически получает. DNS не единственный протокол, с которым это возможно.
источник
Лучшим инструментом для этого, вероятно, является iftop , и его легко можно использовать с помощью sudo apt-get install iftop. Он будет отображать вывод в соответствии с IP-адресами / хостами виновного:
Не забывайте о классических и мощных утилитах sar и netstat в старых * nix!
Еще один замечательный инструмент - это nload , отличный инструмент для мониторинга пропускной способности в режиме реального времени, который легко устанавливается в Ubuntu или Debian с помощью sudo apt-get install nload.
источник
После долгого поиска проблемы (более 60 ГБ пропускной способности за несколько дней) я обнаружил, что мой сервер является источником атаки DDOS.
Прежде всего, я попытался установить на нее БД Oracle, поэтому создал пользователя-оракула. Хакерам каким-то образом удалось сломать проход для этого пользователя (я думаю, мне следует усложнить это :(), они сделали скрытый каталог под Oracle home с помощью crontab, который вручную запустил некоторые демоны, которые наводнили целевой сервер.
Более того, хакеры создали на моем сервере 2 новых пользователя: avahi и colord. Что мне с ними делать? Я гуглил и, кажется, что программное обеспечение с тем же именем не опасно, но я удалил этих пользователей (и оракула тоже).
Кроме того, я удалил весь дом оракула со всем в нем.
Думаю, мне нужно больше защитить свой сервер, так как он может быть снова атакован, спасибо всем за помощь!
источник
Захват всех пакетов, отправленных за день, когда вы превышаете квоту на пропускную способность, вероятно, не самый разумный подход - как вы собираетесь получать данные системы для анализа?
Какой доступ у вас есть на коробке? Какие порты открыты? Вы проверили журналы для служб, которые работают? Что-то вроде awstats будет суммировать журналы FTP, HTTP и SMTP (при условии, что эти серверы настроены на запись данных в журналы). OTOH mrtg будет записывать и отслеживать использование сети по конечной точке / порту.
источник
если вы думаете, что у вас есть пропускная способность Apache, я имел успех с этим инструментом в прошлом
Apache Top
http://www.howtogeek.com/?post_type=post&p=324
источник