Вопрос или проблема
Я вижу сотни различных подключений к одному и тому же IP и порту, когда запускаю nethogs. Периодически иностранный IP и порт будут меняться (не всегда 80, но иногда). Я заметил, что загрузка процессора моего роутера поднимается до 100% в моменты этих огромных всплесков подключений, поэтому я вполне уверен, что этот массовый скачок продолжает перегружать роутер и на самом деле делает мою сеть бесполезной на протяжении целого 60 секунд.
Вещи, которые я пробовал:
sudo netstat -tulpn | grep $whateverip
: ничегоsudo netstat --inet -ap | grep $whateverip
: ничегоsudo lsof -i | grep $whateverport
: к моменту завершения этого порту и IP снова изменились
Это может быть просто паранойя, но клянусь, кажется, что каждый раз, когда я пытаюсь узнать больше информации о соединении, порт и IP изменяются, так что моя команда ничего не дает.
Неужели я имею дело с чем-то злым, живущим на моем сервере? Или есть какое-то более безобидное объяснение, которое я упускаю в своих ограниченных знаниях о сети?
Также обратите внимание, что это сервер Ubuntu без графического интерфейса, так что это не я гоняюсь за кем-то, кто просто серфит по Reddit.
У меня такая же проблема. Я временно решил ее, отфильтровав выходящий трафик к указанному IP, набрав следующую команду:
sudo iptables -A OUTPUT -d <ip-adress>/24 -j DROP
sudo iptables-save
“/24” означает, что учитываются только первые три числа в IP-адресе. Проблема в том, что они продолжают появляться с новыми IP-адресами. Я добавил уже 12 таких строк в iptables, и прошло несколько часов с последнего наводнения, но я ожидаю, что это произойдет снова завтра утром. Кажется, это усиливается ночью/рано утром (CET) для меня. Большинство, но не все они располагаются в Китае. Я думаю, что эта статья может быть актуальной, но не уверен:
http://www.michael-joost.de/dnsterror.html
Пожалуйста, дайте мне знать, если вы разберетесь. Следующее, что я собираюсь сделать, это попробовать изменить пароль на своей учетной записи root и посмотреть, поможет ли это.
Чтобы идентифицировать процессы, вам нужно использовать sudo
и вместо этого использовать -np
sudo netstat -np | grep <ip>
–numeric, -n
Показать числовые адреса вместо попытки определить символические имена хостов, портов или пользователей
Поскольку это не требует разрешения IP-адресов, это именно то, что вам нужно.
Но затем вы хотите увидеть, к какой программе это относится
-p, –program
Показать PID и имя программы, к которой принадлежит каждый сокет.
Ответ или решение
Вопрос о большом количестве неизвестных соединений в nethogs и его влияние на производительность маршрутизатора вызывает серьезные опасения среди администраторов и пользователей серверной инфраструктуры. Давайте проанализируем ситуацию более детально и предложим возможные решения.
Проблема, с которой вы столкнулись
Согласно вашему описанию, вы наблюдаете значительное увеличение числа соединений с определенным IP-адресом и портом, что приводит к перегрузке ЦП вашего маршрутизатора и, в итоге, к ухудшению работы сети. Это может указывать на наличие подозрительной активности, которая, вероятно, вызвана вредоносной программой или нежелательным сетевым трафиком.
Параметры наблюдения
-
nethogs — инструмент, который показывает использование сети по процессам. Поскольку вы видите много изменений адресов и портов, это может указывать на атаки, такие как SYN-флуд или DDoS-атаки.
-
Резкое увеличение нагрузки на маршрутизатор — это важный индикатор, который свидетельствует о том, что один или несколько процессов могут инициировать большое количество соединений в короткие временные интервалы.
Проведенные действия и их эффективность
Вы уже предприняли несколько шагов, включая:
- Использование
netstat
для мониторинга активных соединений. - Использование
lsof
для получения информации о процессах, использующих определенные порты. - Настройку правил iptables для блокировки нежелательного трафика.
Однако, важно отметить, что проблематика динамически изменяющихся IP-адресов и портов может требовать более системного подхода.
Рекомендации по процессам диагностики
Чтобы более эффективно выявить источник проблемы, вам следует рассмотреть следующие шаги:
-
Использование
netstat
с параметрами-np
:sudo netstat -np | grep <ip>
Это позволит вам увидеть, какой процесс использует IP-адрес, а также его идентификатор (PID). Это особенно полезно, когда IP-адреса или порты изменяются.
-
Повышение уровня логирования:
Убедитесь, что у вас есть настройки логирования для всех сетевых соединений. Используйтеtcpdump
илиwireshark
для захвата и анализа пакетов, чтобы идентифицировать, откуда идет трафик.sudo tcpdump -i any host <постоянный_IP> and port <постоянный_порт>
-
Проверка системных ресурсов:
Проверьте все активные задачи на вашем сервере, чтобы убедиться, что нет несанкционированных процессов. Используйтеhtop
илиtop
для определения процессов с высокой загрузкой. -
Обновление программного обеспечения:
Убедитесь, что ваш сервер и все установленные приложения обновлены, чтобы избежать уязвимостей безопасности. -
Проверка внешних подключений:
Возможно, существует уязвимость, через которую злоумышленники могут получить доступ к вашему серверу. Поменяйте пароли, и обязательно используйте надежные пароли и двухфакторную аутентификацию. -
Фильтрация на уровне маршрутизатора:
ЕслиIP-адреса продолжают появляться, рассмотрите возможность использования функции фильтрации на уровне маршрутизатора для выявления и блокировки трафика из определенного диапазона адресов.
Заключение
Для решения вашей проблемы необходимо комплексное исследование и мониторинг сетевого трафика. Тщательное использование инструментов для анализа соединений и изменение настроек безопасности сыграет ключевую роль в устранении возможного вредоносного действия. Не забывайте следить за обновлениями и изменениями в конфигурации сети, чтобы убедиться в безопасности вашего сервера.
Надеюсь, эти рекомендации помогут вам справиться с возникшей проблемой и улучшить состояние вашей сети.