LINUX.ORG.RU
ФорумAdmin

Куда уходит трафик

 , , , ,


1

1

Приветствую! Столкнулся с такой проблемой, работает виртуальный сервер уже 2 года с несколькими лендинг сайтами. Все это время с статистикой трафика было все хорошо, в основном было 200Мб/входящего 600Мб/исходящего, а вот с недавнего времени в точности с 15 ноя, стало 60Гб/входящего и 2Гб/исходящего, и до сих пор у меня каждый день рисуется 2-3Гб/входящего и 0.9-1Гб/исходящего, однако прошу заметить по хорошему на таких серверах наоборот.

Что сделал, проверил логи апача, ничего подозрительного нет, посещаемость лендингов не увеличивалась. Почитал логи системы journald, также подозрительного ничего не увидел. Проверил фаер, разрешены только входящие 80,443, и сдвинутый SSH. Также проверил на уязвимости.

Уже 10 дней бьюся и понять почему входящего стало больше чем исходящего не могу.

В процессе поиска куда уходит трафик через tcpdump и iftop обнаружил странную фигню которую не могу понять. Очень хочу чтобы мне пояснили в чем дело. Вот смотрите, как так получается, что tcpdump и iftop показывает пакеты с заголовками «адрес источника» и «адрес получателя» которые вообще никак не совпадают с адресом моего сервера, но находятся в одной подсети, т.е. допустим адрес моего сервера 140.140.140.140, а tcpdump как-то ловит пакет на моем интерфейсе с таким содержанием:

IP 140.140.37.61.60006 > 170.170.170.170.27017: Flags [P.], seq 114316:114559, ack 62785, win 924, options [nop,nop,TS val 1020791258 ecr 3829276737], length 243

Потом iftop показывает тоже какой-то подсос с соседних адресов, а вот conntrack и ss подключений не видят.

Пока прихожу к выводу, что по какой-то причине моя виртуальная машина стала пробрасывать трафик на другие сервера, но что странно правил таких я не задавал.

Прошу выскажите свои мысли по этому поводу, готов предоставить любую информацию касающейся этой ситуации.

ОСь Debian 10 на KVM

пакеты с заголовками «адрес источника» и «адрес получателя» которые вообще никак не совпадают с адресом моего сервера, но находятся в одной подсети, т.е. допустим адрес моего сервера 140.140.140.140, а tcpdump как-то ловит пакет

это прикол такой или ты реально знаешь про tcpdump и при этом не слышал про promiscuous mode?

t184256 ★★★★★ ()
Ответ на: комментарий от t184256

Не прикол, реально не сталкивался. Насколько я понял tcpdump переводит интерфейс в режим «все что не мне тоже мне», но получается iftop тоже так работает?

Просто у меня iftop рисует картину что идет подсос с какого-то zazumedia на другой рядом адресный сервер, и провайдер как я понял учитывает этот трафик за мной.

Shiroe ()
Ответ на: комментарий от t184256

Если это VPS-провайдер, то он не должен позволять использовать promiscuous mode, но даже с ним он такого трафика бы не увидел.

@Shiroe, выполните iptables -vnL FORWARD и посмотрите цифры после текста Chain FORWARD.

ValdikSS ★★★★★ ()
Ответ на: комментарий от Shiroe

запусти «tcpdump -nei ...» он покажет MAC-и ( или собери немного трафика «tcpdump -ni eth0 -w traffic.pcap -B 16384 -c 50000» и потом его рассмотри через «tcpdump -ner traffic.pcap»).

У тебя vps или vds ?

vel ★★★★★ ()

Немного оффтопа
Куда уходит трафик, в какие е...ня
И писем не напишет и вряд ли позвонит. :)

По теме, ещё можно глянуть статистику по iptables.

anc ★★★★★ ()
Ответ на: комментарий от vel

Уже делал так ради интереса, немного насобирал, правда смотрел через wireshark. Постоянно фигурирют обмены tcp с неким сайтом некой конторы, куча пакетов с протоколом mongo ну и т.д.

Shiroe ()
Ответ на: комментарий от anc

OUTPUT:

Chain OUTPUT (policy ACCEPT 19 packets, 760 bytes)
 pkts bytes target     prot opt in     out     source               destination
1070K 2079M ufw-before-logging-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0
1070K 2079M ufw-before-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0
 6927  488K ufw-after-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0
 6927  488K ufw-after-logging-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0
 6927  488K ufw-reject-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0
 6927  488K ufw-track-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0

INPUT

Chain INPUT (policy DROP 48173 packets, 2289K bytes)
 pkts bytes target     prot opt in     out     source               destination
7925K 2326M ufw-before-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0
7925K 2326M ufw-before-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0
4464K 1435M ufw-after-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0
51282 2452K ufw-after-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0
51282 2452K ufw-reject-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0
51282 2452K ufw-track-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0

За UFW не пинайте, просто с ним мне удобнее.

Shiroe ()
Ответ на: комментарий от Shiroe

Ну вот 2 и 2.

За UFW не пинайте, просто с ним мне удобнее.

Полные правила в цепочке и следующими за ними ufw-before-output и ufw-before-input рекомендую покурить.
Можете сюда выложить полный iptables-save, но я не гарантирую что очередной косяк буду разбирать, очень кумарные они у UFW (так же как и правила firewalld). Уж простите. Однако кто-то ещё может раскумарит со скуки.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

А с чего вы решили что у него должен быть FORWARD ? INPUT, OUTPUT не рассматриваем?

Автор написал, что он в tcpdump видит пакеты, в которых ни source, ни destination — не его IP-адрес, причем пакет в первом сообщении — с данными (PUSH+ACK, длина 243). Если в FORWARD 0 пакетов, то значит, что VPS не используют в качестве шлюза.

Я уже несколько раз сталкивался как с проблемами в настройке сети у дешевых хостеров VPS, так и с неправильным подсчитыванием трафика в панелях хостеров, поэтому разумно написать хостеру, если в FORWARD 0.

ValdikSS ★★★★★ ()
Ответ на: комментарий от ValdikSS

Эм а причем тут FORWARD ? Вот я покупаю vps, никаких виртуалок/контейнеров и так далее на ней не поднимаю. Какой у меня будет трафик? Только INPUT и OUTPUT.
А если я вижу пакеты соседей, то это не мои. Ну или марсианские, тогда мои.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Моё предположение было в том, что автор настроил маршрутизацию неправильно, например, разрешил маршрутизацию отовсюду хоть куда, с NAT, а кто-то в локальной сети хостера нашел его VPS и начал использовать её в качестве шлюза, по какой-то причине (например, чтобы обойти счетчик трафика или чтобы слать спам с другого IP-адреса). Так как через таблицу FORWARD ничего не проходит, эту версию откидываем.

Так как мы видим в tcpdump какой-то непонятный пакет посередине TCP-сессии, с данными, в котором не фигурирует IP-адрес VPS автора, что при корректной настройки сети у VPS-провайдера просто невозможно, по крайней мере, без совершения различных сетевых атак, то можно сделать вывод, что проблема, вероятнее всего, на стороне хостера. Даже если она не на стороне хостера, стоит известить его об этом, т.к. это не просто ненормально, а проблема безопасности в настройке сети.

ValdikSS ★★★★★ ()

Написал хостеру. С их слов «добавили правила блокировки разных сервисов, которые в теории могут принимать подобный трафик.» Теперь в tcpdump и iftop тишина, даж не верится. Однако все равно интересно, что за правила то такие, и мог бы я закрыться от них из своего контейнера?

Shiroe ()
Ответ на: комментарий от ValdikSS

Моё предположение было в том, что автор настроил маршрутизацию неправильно, например, разрешил маршрутизацию отовсюду хоть куда, с NAT, а кто-то в локальной сети хостера нашел его VPS и начал использовать её в качестве шлюза, по какой-то причине (например, чтобы обойти счетчик трафика или чтобы слать спам с другого IP-адреса). Так как через таблицу FORWARD ничего не проходит, эту версию откидываем.

Понял.

anc ★★★★★ ()