是否有一個 Linux 伺服器實用程式可以列出給定時間段內處於活動狀態的網路連接埠和協定?
例如,我想知道哪些連接埠和協定上周至少活躍過一次。答案類似:TCP/80、TCP/443、UDP/5678...
答案1
您可以安裝並啟動auditd
。在審計配置中新增規則:
-a always,exit -F arch=b64 -S connect -F key=CONNECT
-a always,exit -F arch=b64 -S bind -F key=BIND
-a always,exit -F arch=b64 -S socket -F key=SOCKET
-a always,exit -F arch=b64 -S listen -F key=LISTEN
-a always,exit -F arch=b64 -S shutdown -F key=SHUTDOWN
-a always,exit -F arch=b64 -S close -F key=CLOSE
並且您將在審核日誌中可以監視與套接字相關的系統呼叫。
如果你想找到現在舊的資訊(並且沒有audit
)我認為你不會在linux中找到相關資訊。
答案2
在主機網路堆疊內進行追蹤的另一種方法是追蹤線路上的流量。
對有問題的介面進行封包擷取。要么在該主機上,要么在路徑中的某個地方。
有各種工具可以解析這些訊息,當然還有 TCP 和 UDP 訊息,也可能有一些對應用程式的見解。 Wireshark 是免費的,但它遠非唯一的資料包分析工具。