Я боролся с серверным провайдером, пока пытаясь смонтировать несколько сервисов для моей компании, это потому что у них строгая политика брандмауэра, которая запрещает любой запрещенный доступ к Интернету IN / OUT, это было бы ничем (на самом деле могло бы быть здорово), если бы я мог контролировать поведение брандмауэра, но все проходит через меня и еще 2 человек, так было утомительно. Я решил следить за другим хостом со всеми открытыми портами и проверять, какие порты используются в течение определенного периода времени.
Я пытался использовать непрерывный netstat, но это не сработало, как ожидалось, поскольку соединения недолговечны. не были в списке.
Итак, как я могу узнать, какие порты зарегистрировали активность в течение заданного периода времени? (хоть немного информации). Мне нужны следующие данные: номер порта, направление трафика, исходный и целевой IP-адрес и, в идеале, какая программа его инициировала.
Идея состоит в том, чтобы получить эту информацию быстро и точно, а не читать длинные журналы с риском человеческой ошибки, если это возможно .
Я использую GNU / linux на обоих серверах.
Вы правы, вам будет трудно перехватить все кратковременные соединения через netstat
. Вероятно, вы захотите использовать tcpdump
на вашем сервере (серверах) и выполнить перехват трафика на некоторое время. Например, фильтр ниже перехватит весь трафик, поступающий или выходящий из интерфейса eth0
и запишет результат в файл pcap
для оффлайн-анализа.
tcpdump -s0 -i eth0 -w eth0_traffic. pcap
После получения файла, вы можете открыть его в Wireshark, а затем перейти в Statistics > Converstations
в верхнем меню, чтобы увидеть все IP, TCP, UDP и т.д. соединения, включая IP-адрес источника и назначения и номер порта. Например: