¿Existe una utilidad de servidor Linux que pueda enumerar los puertos y protocolos de red que han estado activos durante un período de tiempo determinado?
Por ejemplo, me gustaría saber qué puertos y protocolos estuvieron activos al menos una vez la semana pasada. La respuesta sería algo como: TCP/80, TCP/443, UDP/5678...
Respuesta1
Puedes instalar y activar auditd
. Agregue sus reglas en la configuración de auditoría:
-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
y tendrá en los registros de auditoría que podrá monitorear las llamadas al sistema relacionadas con sockets.
Si desea encontrar información antigua (y no la tiene audit
), no creo que encuentre información relevante en Linux.
Respuesta2
Una alternativa al rastreo dentro de la pila de red de los hosts es rastrear el tráfico en el cable.
Realice una captura de paquetes de las interfaces en cuestión. Ya sea en ese host o en algún lugar del camino.
Existen varias herramientas para analizar eso, definitivamente información TCP y UDP y posiblemente algunos conocimientos sobre las aplicaciones. Wireshark es gratuito, pero está lejos de ser la única herramienta de análisis de paquetes.