어떤 프로세스가 네트워크를 사용하는지 알고 싶습니다.
- 네트워크를 사용하는 시스템에 알려지지 않은(그리고 잠재적으로 악성인) 프로그램이 있는지 확인하십시오.
- 프로세스별 네트워크 트래픽을 이해하고 프로토콜 HTTP, TCP, UDP, ICMP 및 수신/발신 트래픽별로 세분화합니다.
답변1
top
CPU 사용량과 마찬가지로 네트워크 iftop
사용량도 마찬가지입니다.
답변2
질문하신 내용이 좀 광범위해서 일반적인 용어로 설명하겠습니다. 즉, 시간 경과에 따른 프로세스 및 프로토콜별로 분류된 네트워크 사용량을 이해하려고 합니다.
가정용으로는 ntop을 사용해 보세요. 아마도 필요한 것보다 더 많은 일을 할 것이며 무엇보다도 기록 그래프를 표시할 것입니다.
http://www.ntop.org/products/traffic-analytic/ntop/
현재 작업에 적합한 도구가 있습니다. 무슨 일이 일어나고 있는지에 대한 일반적인 아이디어를 얻기 위해 nethogs는 네트워크의 애플리케이션 사용량을 잘 분석합니다.
http://nethogs.sourceforge.net
"NetHogs는 작은 '네트워크 상위' 도구입니다. 대부분의 도구처럼 프로토콜이나 서브넷별로 트래픽을 나누는 대신 프로세스별로 대역폭을 그룹화합니다."
또한 dtrace4linux 및 sysdig를 사용할 수도 있습니다. 이는 서버 사용의 거의 모든 측면에 대한 통계로 정말 놀라운 작업을 수행할 수 있습니다. Brendan Gregg는 "System Performance: Enterprise and Cloud"라는 dtrace에 관한 매우 흥미로운 책을 가지고 있습니다.
트래픽 사용량에 대한 전역 통계를 보려면 ifconfig를 샘플링하거나 proc에서 rx/tx가 전송한 바이트를 샘플링할 수 있습니다. 여러 서버를 관리하는 경우 NMS 및 SNMP를 사용하는 것이 가장 좋습니다.
서버 네트워크를 관리하는 경우 라우터에서 iptables 계정을 수행하거나 방화벽이나 라우터에서 Netflow를 설정하고 데이터를 수신하여 데이터베이스에 저장해야 할 수 있습니다. nfSen은 이러한 상황을 시각화하는 데 특히 유용합니다.
IDS는 보안 관련 공격에 있어 매우 흥미로운 기술입니다. Snort를 상자에서 실행할 수 있지만 일반적으로 트래픽을 수신할 수 있는 상자에서 실행됩니다.
답변3
netstat -p
활성 연결이 있는 프로세스 목록을 가져오는 데 사용할 수 있습니다.