Linux

在一個linux機器上記錄網路流量,實時傳輸到另一個機器上

  • November 21, 2013

我有一種情況,我想擷取一個 Linux 機器(目前使用 tcpdump)上的所有網路流量,但將該數據實時傳輸到單獨(但已連接)網路上的另一個 Linux。基本上我有

[network i'm curious about]---[eth0. Linux box eth1]----[separate network]---[eth0 monitoring Linux box]

我現在正在做的是將所有內容保存到 pcap 並定期將 pcap 傳輸到監控 Linux 機器。這可行,但效率非常低,而且絕對不是實時的。有沒有辦法讓 tcpdump 將 pcap 保存到數據流中,我可以將其代理到監視盒,而無需設置 NFS 或 SMB 之類的東西?我認為正在執行 tcpdump 的 Linux 機器充其量是可疑的,並且不想在監視機器上提供可寫共享。

有任何想法嗎?

在監控_Linux_box 上: # nc -l -k -p 1234 > /var/tmp/pcap

在 Linux 機器上: # tcpdump -U -w - | nc monitoring_Linux_box 1234

從監控箱:

# ssh root@otherbox tcpdump -n -i eth0 -w - | program_that_takes_pcap_on_input

引用自:https://serverfault.com/questions/556587