VDS · Наблюдение и производительность

Сетевая нагрузка: iftop, nload, ss

Как посмотреть, сколько трафика идёт через машину, куда именно и какие процессы держат соединения, когда канал забит.

Обновлено 23 августа 2026 г.

Полоса на каждой машине — до 500 Мбит/с. Этого хватает почти всегда, но канал бывает занят не тем: чужой скачивающий бот, забытая раздача файлов, поток от заражённого процесса. Ниже три инструмента, которые отвечают на вопросы «сколько», «куда» и «кто».

nload: сколько прямо сейчас

apt install -y nload && nload
dnf install -y nload && nload

Показывает входящий и исходящий поток по интерфейсу с графиком и счётчиком за сессию. Переключение интерфейсов — стрелками, выход — q. Это самый быстрый способ понять, забит канал или нет.

Разово, без установки:

cat /proc/net/dev
vnstat -l           # если поставлен vnstat, покажет живой счётчик

iftop: куда уходит трафик

apt install -y iftop && iftop -nNP -i eth0

Флаги: -n не резолвить адреса, -N не резолвить порты, -P показывать порты. Вы увидите список пар «ваш адрес — чужой адрес» с полосой за 2, 10 и 40 секунд. Если одна строка съедает всё, у вас есть адрес источника или получателя — дальше решаете, блокировать его или разбираться с приложением.

Имя интерфейса подсмотрите в ip -br a — обычно это eth0 или ens18.

ss: кто держит соединения

ss входит в систему, ставить ничего не нужно.

ss -tulpn                     # какие порты слушают и какие процессы
ss -tn state established      # активные соединения
ss -tn state established | awk '{print $4}' | cut -d: -f1 | sort | uniq -c | sort -rn | head

Последняя команда считает соединения по адресам — так видно, если один клиент открыл их сотнями. Это типичная картина при переборе паролей SSH или примитивной атаке на сайт.

Проверить, что порт действительно слушается наружу, а не только на localhost, тоже помогает ss -tulpn: адрес 127.0.0.1:5432 доступен только с самой машины, 0.0.0.0:5432 — всему интернету.

Графики за прошлое

Живые инструменты не отвечают на вопрос «что было ночью». Для этого:

  • график трафика на вкладке «Обзор» в панели /hosting/vds/<id> — за час, сутки, неделю и месяц, см. Графики в панели;
  • vnstat внутри машины — суточная и месячная статистика: apt install -y vnstat, затем vnstat -d и vnstat -m;
  • Netdata, если нужны секундные метрики с историей.

Частые ошибки

  • Смотреть iftop на неверном интерфейсе. На lo виден только локальный обмен, реальный трафик пройдёт мимо вас.
  • Считать входящий трафик атакой по факту роста. Сначала посмотрите, кто источник и на какой порт: часто это индексирующий робот или ваш же бэкап.
  • Закрывать порт на уровне приложения. Если сервис слушает 0.0.0.0, единственная надёжная защита — фильтр. Настройте его по статье о брандмауэре и оставьте наружу только нужное.
  • Забыть про исходящий поток. Заражённая машина обычно не принимает, а раздаёт: резкий исходящий трафик при спокойном сайте — повод проверить процессы через ss -tnp.

Полоса до 500 Мбит/с делится между всеми вашими сервисами на машине. Один процесс, качающий на полной скорости, замедлит и сайт, и SSH — ограничивайте фоновые загрузки, например через rsync --bwlimit или wget --limit-rate.