우분투 서버에서 네트워크 활동 기록

우분투 서버에서 네트워크 활동 기록

나는 인터넷에 노출된 Ubunu 서버를 관리하고 있으며 사후 분석이 가능한 방식으로 모든 네트워크 활동을 모니터링하고 추적해야 합니다.

나는 나에게 너무 많은 세부 정보를 제공하는 tshark 또는 tcpdump, 내가 원하는 세부 정보를 제공하지 않는 vnstat(대역폭만 표시함), 실시간 모니터링 도구로는 괜찮은 tcptrack과 같은 몇 가지 도구를 사용해 보았지만 추가 분석을 위한 로깅 옵션이 제공되지 않습니다.

내가 생각하는 것은 tcptrack과 vnstat 사이에 있습니다.

모든 연결을 기록하고 필요할 때 모든 연결과 모든 연결 시도의 IP, 포트 및 타임스탬프를 보여주는 포괄적인 보고서를 제공하는 데몬입니다(따라서 iptables가 연결의 SYN 패킷을 삭제한다는 것도 표시해야 합니다). 이상적으로(그리고 이것은 단지 보너스 포인트입니다.) 정보를 mysql 또는 postgresql과 같은 일부 SQL 데이터베이스에 저장하여 임의의 선택 문을 실행하여 사용자 정의 보고서를 얻을 수 있습니다(예: 에서 모든 활동 모니터링). 단일 IP , 또는 특정 서비스를 사용하는 모든 IP 목록을 추출합니다.

로깅을 위해 tcpdump를 사용한 다음 결과를 표시하기 위해 tcptrack을 사용하는 등 몇 가지 도구를 결합해 보았지만 예상대로 작동하지 않습니다.

그렇다면 이 "아이디어"에 가까운 도구가 있습니까?

답변1

원하는 것을 달성하는 가장 쉬운 방법은 iptablesLOG 또는 ULOG 대상에 대한 로깅을 사용하는 것입니다.

그러면 다음 유형의 로그 정보가 남게 됩니다.

8월 13일 14:42:07 srv1 IN=eth0 OUT= MAC=00:0c:29:8c:2b:6c:00:d0:02:eb:e8:0a:08:00 SRC=75.125.70.194 DST =XXX .XXX.XXX.XXX LEN=40 TOS=00 PREC=0×00 TTL=54 ID=9566 PROTO=TCP SPT=57144 DPT=445 SEQ=2770468863 ACK=0 WINDOW=512 SYN URGP=0

8월 13일 14:45:29 srv1 IN=eth0 OUT= MAC=00:0c:29:8c:2b:6c:00:d0:02:eb:e8:0a:08:00 SRC=75.125.70.194 DST =XXX .XXX.XXX.XXX LEN=40 TOS=00 PREC=0×00 TTL=55 ID=13702 PROTO=TCP SPT=58528 DPT=445 SEQ=1217789951 ACK=0 Window=512 SYN URGP=0

그런 다음 해당 시스템에서 무슨 일이 일어나고 있는지 확인하고 싶을 때 awk.grep

2 이러한 규칙은 들어오거나 나가는 "새" 연결을 모두 기록해야 합니다. 규칙을 더 쉽게 발견할 수 있도록 규칙 앞에 다음이 추가됩니다.

iptables -I INPUT -m state --state NEW -j LOG --log-prefix "New Connection: "
iptables -I OUTPUT -m state --state NEW -j LOG --log-prefix "New Connection: "

그 결과 다음과 같은 로그 항목이 생성됩니다.

[2134.566659] 새 연결: IN=OUT=wlan0 SRC=192.168.178.229 DST=192.168.178.21 LEN=60 TOS=0x00 PREC=0x00 TTL=64 ID=65094 DF PROTO=UDP SPT=55717 DPT=53 LEN= 40

인용하다

관련 정보