Использование ss для проверки сетевых соединений в Linux
Утилита ss — это мощный и современный инструмент для мониторинга сетевых соединений и сокетов в Linux. Она пришла на смену устаревшей netstat и предоставляет системным администраторам и разработчикам детальную информацию о состоянии сети. В этой статье мы подробно разберём, как использовать ss для проверки активных подключений, прослушиваемых портов, статистики сетевых протоколов и диагностики проблем на VPS-сервере.
Если вы арендуете VPS, управляете веб-сервером или просто хотите контролировать свою сеть, утилита ss станет вашим верным помощником. В отличие от массовых VPN-сервисов, где трафик смешивается с сотнями других пользователей, на личном VPS вы имеете полный контроль над каждым подключением — и утилита ss позволяет этот контроль осуществлять.
📑 Содержание:
Что такое ss и зачем она нужна
ss (Socket Statistics) — это утилита командной строки в Linux, которая выводит подробную статистику о сетевых сокетах. Она входит в состав пакета iproute2 и доступна в большинстве современных дистрибутивов. В отличие от netstat, ss использует данные напрямую из ядра Linux, что делает её быстрее и эффективнее при работе с большим количеством подключений.
С помощью ss вы можете:
- Просмотреть все активные TCP/UDP соединения (входящие и исходящие).
- Увидеть прослушиваемые порты (LISTEN) и их состояние.
- Получить статистику по протоколам (TCP, UDP, RAW, UNIX).
- Фильтровать соединения по порту, адресу, состоянию, процессу.
- Отслеживать соединения в реальном времени (как
topдля сети). - Диагностировать сетевые проблемы — утечки сокетов, DDoS-атаки, неправильные настройки.
ss vs netstat: почему ss лучше
Утилита netstat была стандартом десятилетиями, но сегодня она считается устаревшей. Во многих дистрибутивах она помечена как deprecated, и вместо неё рекомендуется использовать ss и ip.
| Критерий | netstat | ss |
|---|---|---|
| Производительность | Медленная, особенно при большом количестве соединений | ✅ Быстрая, читает данные из ядра |
| Информация о процессах | Требует прав root | ✅ Показывает PID и имя программы (опция -p) |
| Фильтрация по состоянию | Ограниченная | ✅ Гибкие фильтры (state, sport, dport и др.) |
| Статистика по протоколам | Ограниченная | ✅ Детальная статистика (-s) |
| Поддержка IPv6 | Есть, но ограничена | ✅ Полная поддержка |
| Статус | Устаревшая | ✅ Актуальная, стандарт |
💡 Важно:
В новых версиях RHEL, CentOS, Ubuntu и других дистрибутивов netstat может отсутствовать по умолчанию. Всегда используйте ss — это гарантирует совместимость и производительность.
Базовое использование ss
Рассмотрим основные команды ss, которые пригодятся каждому администратору.
1. Просмотр всех сокетов
Показывает все сокеты (LISTEN и активные соединения).
2. Только TCP-сокеты
3. Только UDP-сокеты
4. Прослушиваемые порты (LISTEN)
Команда покажет все порты, на которых ваше приложение ожидает входящих подключений.
5. Комбинированные опции
Эта комбинация — одна из самых популярных: -t (TCP), -u (UDP), -l (LISTEN), -n (числовые порты, без разрешения имён). Позволяет быстро увидеть, какие сервисы запущены на вашем VPS.
6. Показать PID и имя процесса
Добавьте -p, чтобы видеть, какой процесс (PID) открыл сокет. Это крайне полезно для поиска вредоносных или подозрительных подключений.
Фильтрация и расширенные опции
Главная сила ss — возможность фильтровать соединения по различным критериям.
Фильтр по состоянию (state)
$ ss -t state listening
$ ss -t state time-wait
Можно использовать состояния: established, listening, time-wait, syn-sent, close-wait и другие.
Фильтр по порту
$ ss -t dport = 443 # входящие на порт 443
$ ss -t dport > 1024 # порты больше 1024
Фильтр по адресу
$ ss -t src 10.0.0.1
Исключение локальных подключений
Покажет только внешние установленные соединения.
Мониторинг в реальном времени
ss можно использовать в непрерывном режиме, аналогично top. Для этого используется утилита watch или сама ss в цикле.
$ watch -n 2 'ss -t state established | wc -l' # количество активных TCP-соединений
Это помогает отслеживать всплески трафика, атаки или утечки сокетов.
Диагностика сетевых проблем с ss
Статистика по протоколам
Выдаёт сводную статистику: сколько TCP/UDP/RAW сокетов, состояние их очередей, тайм-ауты и т.д. Позволяет быстро оценить нагрузку на сетевую подсистему.
Обнаружение утечек сокетов
Если ваше приложение не закрывает соединения, они переходят в состояние CLOSE_WAIT или TIME_WAIT. Это может привести к исчерпанию сокетов.
$ ss -t state time-wait | wc -l
Поиск подозрительных подключений
Команда для поиска всех установленных соединений на определённый порт (например, 22 — SSH):
Если вы видите много подключений с одного IP — возможно, идёт брутфорс или DDoS.
🔍 Пример диагностики:
Вы обнаружили, что ваш VPS медленно отвечает. Запустите ss -t state established и увидите сотни соединений на порт 80/443. Это может быть DDoS или ошибка в веб-сервере. С помощью ss -p вы определите процесс, а фильтром по IP — источник атаки.
ss и безопасность VPS
Управление сетевыми соединениями напрямую связано с безопасностью вашего сервера. На личном VPS вы можете отслеживать каждое подключение и быстро выявлять аномалии.
🛡️ Почему это важно для владельцев VPS?
- Обнаружение несанкционированного доступа — если кто-то подключился к вашему SSH-порту, вы увидите это в
ss. - Контроль над сервисами — вы всегда знаете, какие порты открыты и какие процессы их слушают.
- Анализ атак — статистика по соединениям помогает понять, идёт ли на вас DDoS или брутфорс.
- Аудит сети — вы можете проверить, не открыл ли вредоносный софт скрытые порты.
В отличие от массовых VPN, где вы не видите, что происходит на общем IP-адресе, личный VPS даёт вам полную прозрачность. Вы видите все соединения, можете их анализировать и блокировать подозрительные IP через фаервол.
📌 Рекомендация:
Используйте ss -tulnp ежедневно для быстрой проверки открытых портов и процессов на вашем VPS. Это поможет вовремя заметить уязвимости.
🔐 Личный VPN-сервер на VPS с технологией XHTTP + Reality
Хотите максимальную защиту своего трафика? Используйте VPS-VPN — персональный выделенный VPN-сервер. В отличие от обычных VPN, где 1000+ человек сидят на одном IP, вы получаете собственный VPS.
Нас в 1000 раз сложнее заблокировать и отследить, потому что технология XHTTP + Reality имитирует браузер Chrome — DPI не отличает ваш трафик от обычного веб-сёрфинга.
🚀 Получить личный VPSЗаключение
Утилита ss — это незаменимый инструмент для каждого, кто работает с Linux-серверами. Она даёт полную картину сетевых подключений, помогает диагностировать проблемы, обеспечивать безопасность и мониторить активность.
Освоив ss, вы сможете:
- Быстро проверять, какие сервисы запущены на вашем VPS.
- Обнаруживать подозрительные соединения и атаки.
- Отслеживать производительность сети и оптимизировать настройки.
- Находить утечки сокетов и предотвращать сбои.
✅ Итог:
Если вы администрируете сервер, работаете с сетями или просто заботитесь о безопасности — ss должна быть в вашем арсенале. А если вы хотите получить личный защищённый VPS с современной технологией обхода DPI, обратитесь к нам — VPS-VPN. Мы предоставляем выделенные серверы с XHTTP + Reality, где ваш трафик полностью маскируется.
Выбирайте надёжность и контроль. Выбирайте VPS-VPN.