Назад | Перейти на главную страницу

Зеркальное отображение трафика на сервер tcpdump и автоматическое сохранение файлов pcaps

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

В частности, мое требование состоит в том, чтобы файлы pcap сохранялись снова и снова, когда размер этого файла достигает определенного числа.

Например:

Порт 2 брандмауэра Juniper отражает весь трафик на порту 1. Порт 2 подключается к eth0 на сервере Linux. Сервер Linux имеет процесс tcpdump, постоянно работающий на eth0. Сервер Linux настроен на сохранение трафика в файл с именем «tcpdump.pcap», но когда файл pcap превышает определенный размер, он сжимается и переименовывается в «tcpdump.pcap.0.gz». Когда второй файл превышает определенный размер, он будет переименован в «tcpdump.pcap.1.gz» и т. Д.

Это позволит мне просматривать сетевой трафик за прошедшее X промежутка времени (на данный момент я хочу иметь видимость за последние 72 часа).

Проблема в том, что я не знаю, как это сделать. В частности, как заставить tcpdump работать непрерывно, автоматически сохранять файлы pcap, автоматически сжимать и переименовывать в хронологическом порядке?

Давайте разберем проблему на следующие части:

  • позволять tcpdump сохраните дамп в формате pcap: вы можете использовать -w вариант. Как всегда, внимательно прочтите справочную страницу
  • постоянно работать tcpdump: ты можешь использовать screen бежать tcpdump, чем отсоединить / прикрепить по своему желанию; процесс будет продолжаться, пока вы его не остановите;
  • повернуть файл журнала: [согласно предложению Марка Ридделла] вы можете использовать -C возможность позволить tcpdump поверните файл pcap или, в качестве альтернативы, вы можете настроить и использовать logrotate для автоматического переименования / поворота файла журнала при достижении определенного размера