Cómo monitorear la actividad de la red en un sistema Linux

Cómo monitorear la actividad de la red en un sistema Linux

Hay muchas razones por las que es posible que desee monitorear la actividad de la red en su sistema Linux. Es posible que esté solucionando un problema de red, es posible que desee verificar para asegurarse de que no haya aplicaciones maliciosas que creen actividad de red sospechosa, o simplemente puede saber si algún proceso está llamando a casa a casa. Cualquiera sea la razón, aquí hay algunos métodos para ver qué procesos en su sistema se dedican a la actividad de la red y con quién se están comunicando.

En este tutorial aprenderás:

  • Cómo monitorear las conexiones de red y los servicios de escucha con NetStat
  • Cómo monitorear las conexiones de red y los servicios de escucha con LSOF
  • Cómo monitorear las conexiones de red y los servicios de escucha con Ifconfig
  • Qué herramientas puede usar para examinar los datos que se envían a través de la red
Cómo monitorear la actividad de la red en un sistema Linux

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Independiente de la distribución
Software NetStat, LSOF, IFCONFIG, WIRESHARK, TCPDUMP
Otro Acceso privilegiado a su sistema Linux como root o a través del sudo dominio.
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
$ - Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

Netstat

Netstat es una utilidad poderosa que puede imprimir conexiones de red, tablas de enrutamiento, estadísticas de interfaz, conexiones disfrazadas y membresías de multidifusión. Lo usaremos para lograr el primero.

Instalación de NetStat

Sobre sistemas basados ​​en Debian y Debian como Ubuntu, use APT.

# APT Instalar Toolas de red 

En los sistemas basados ​​en Red Hat Enterprise Linux y Red Hat, use YUM,

# yum instalar herramientas de red

En sistemas basados ​​en arco, use Pacman.

# PACMAN -S Net -Tools 


NOTA
En los siguientes ejemplos estamos utilizando una nueva instalación de RHEL 8 que se ejecuta en Virtualbox con adiciones de invitados instaladas

Ver procesos de escucha

Primero, veamos los procesos que escuchan las conexiones. Para hacerlo, así que ingrese el siguiente comando.

$ sudo netstat -tulpen 

En este comando T pantallas TCP conexión, u Muestra conexiones UDP, l Muestra solo enchufes escuchando, pag muestra el programa al que pertenece la conexión,mi muestra información extendida, y norte representa direcciones, usuarios y puertos numéricamente.

salida netstat -tulpen

Al considerar el modelo de servidor cliente en el que se basa la mayoría de las redes de red, los procesos de escucha pueden considerarse como software que está en modo "servidor". No hay nada sorprendente en la salida dada nuestra configuración. Estos son todos los procesos que esperaría escuchar las conexiones de red en una nueva instalación de Rhel 8 en ejecución en Virtualbox.

Para cada proceso de escucha, puede ver el protocolo que se está utilizando, la dirección local y el puerto en el que está escuchando, el usuario en el que se ejecuta y el nombre PID/programa. Hay una distinción importante a tener en cuenta aquí. Para TCP4/UDP4 conexiones (simplemente enumeradas como TCP y UDP) donde el Dirección local figura como 0.0.0.0 El proceso está escuchando las conexiones desde cualquier máquina que pueda conectarse a ella a través de la red, mientras que cuando se enumera como 127.0.0.1 Solo está escuchando las conexiones en LocalHost (la máquina a la que se está ejecutando en sí misma) y no puede ser conectada por otras computadoras en la red. La misma distinción es cierta para TCP6/UDP6 Al comparar un Dirección local de ::(frente a la red) y :: 1(SOLO HOSTO LOCAL).

Ver todas las conexiones de red

Ahora echemos un vistazo a todas las conexiones de red actuales. Para hacer esto, ingrese el siguiente comando, que es similar al anterior, excepto que usamos -a para ver todos los enchufes en lugar de -l para ver los enchufes escuchando.

$ sudo netstat -atupen 


Además de mostrarnos qué software tenemos escuchando las conexiones como "servidores", este comando también nos muestra las conexiones actualmente establecidas con ese software y cualquier conexión de red establecida que tenemos utilizando el software que actúa como un "cliente" como un navegador web.

NetStat -Atupen Salida

En la captura de pantalla notará 2 conexiones en el ESTABLECIDO estado. Una vez más, no hay sorpresas aquí. Uno de ellos pertenece a NetworkManager y trabaja como un cliente DHCP para habilitar la red desde el servidor Gateway (en este caso, la máquina host). La otra es una conexión SSH con la máquina que hicimos después de reenviar el puerto del servicio SSH con VirtualBox. Si hubiéramos visto algo inesperado aquí, entonces puede ser motivo de investigación adicional.

Ver conexiones establecidas

Puede encontrarse en una situación en la que solo desea ver el ESTABLECIDO conexión. Esto es tan fácil como la salida de la salida de Netstat a Grep como así.

$ sudo netstat -atupen | Grep establecido 
sudo netstat -atupen | GreP Salida establecida

Entramos en el comando anterior después de navegar a Wikipedia.com en Firefox y la captura de pantalla captura las conexiones establecidas por Firefox al llegar al sitio. Como puede ver, hay cuatro servidores a los que se conectó Firefox; 91.198.174.192, 172.217.23.100, 216.58.215.67, y 104.111.215.142.
Para ver a quién pertenecen estos servidores, podemos consultar las direcciones IP con whois como.

$ whois 91.198.174.192 | menos 

Hacerlo para cada uno de ellos revela que pertenecen a Wikimedia, Google, Google y Akamai respectivamente.
Esto tiene sentido teniendo en cuenta que Wikimedia posee y alberga Wikipedia y es muy común que los sitios cargan recursos que se alojan en servidores propiedad de Google y Akamai. De hecho, examinar el código fuente de la página de inicio de Wikipedia revela que carga la aplicación Google Play Store de Google.com y la aplicación Apple AppStore-Badge de Apple de Apple.comunicarse.

Navegar a las URL para estas 2 insignias de aplicaciones individualmente y emitir el comando NetStat anterior realmente verifica que estén alojados en servidores propiedad de Google y Akamai respectivamente.

Si esto provocó su interés en netstat Luego tenemos un artículo que puede leer para obtener más información sobre el uso del comando netstat

ss

El netstat El comando ha sido durante mucho tiempo uno de los favoritos de los sysadmins, sin embargo, ha sido reemplazado recientemente por el ss comando que se jacta de ser más rápido, más fácil y más legible que netstat. Veamos cómo lograr las mismas acciones realizadas anteriormente usando ss. Ss También tiene un -mi Opción para ver la información extendida, pero esa opción se ha omitido de los ejemplos a continuación porque produce información adicional que puede dar lugar a una salida menos legible.

Ver procesos de escucha

Para ver todos los procesos de escucha, ingrese lo siguiente.

$ sudo ss -tlunp 


En este comando T pantallas TCP conexión, l Muestra solo enchufes escuchando, u Muestra conexiones UDP, norte representa direcciones, usuarios y puertos numéricamente, y pag muestra el programa al que pertenece la conexión.

Ver todas las conexiones de red

Para ver todas las conexiones de red, ingrese lo siguiente, donde a reemplazo l y muestra todos los enchufes de red no solo escuchando los.

$ sudo ss -taunp 

Ver conexiones establecidas

Si -a o -l no están incluidos entonces ss solo mostrará conexiones establecidas. Para ver solo las conexiones establecidas, ingrese las siguientes.

$ sudo ss -tunp 

LSOF

Por si acaso netstat y ss No fuimos suficientes para ti, presentamos LSOF. LSOF se usa para enumerar archivos abiertos. GNU/Linux heredó el principio de diseño UNIX de que todo es un archivo; Esto incluye conexiones de red. Como resultado, LSOF se puede utilizar para ver la actividad de la red de manera similar a los comandos mencionados anteriormente.

Ver todas las conexiones de red

Para ver todas las conexiones de red, ingrese lo siguiente.

$ sudo lsof -np -i 

En este comando norte representa las direcciones numéricamente, PAG representa puertos numéricamente, y i suprime la lista de cualquier archivo abierto que no se considere archivos de red.

Ver conexiones establecidas

Para ver solo conexiones establecidas, ingrese lo siguiente donde la lista de conmutadores adicionales se estableció TCP conexión.

$ sudo lsof -np -itcp -stcp: establecido 

Ver procesos de escucha

Para ver los procesos de escucha utilizando LSOF introduzca la siguiente.

$ sudo lsof -np -itcp -stcp: escuchar

Esto se perderá cualquier proceso que esté escuchando sobre UDP, por lo que puede ser deseable ingresar a los siguientes para incluirlos también.

$ sudo lsof -np -i | Grep 'Escuchar \ | Udp' 

Monitoreo de datos que se envían a través de la red

Hemos visto como netstat, ss, y ifconfig se puede usar para monitorear qué conexiones de red se están haciendo y a quién, pero a menudo es deseable ver exactamente qué datos se envían a través de la red. Para lograr este objetivo, requerimos aplicaciones que sean capaces de oler paquetes. Dos programas que se especializan en esta área son tcpdump y Wireshark.

Anteriormente hemos escrito guías sobre cómo instalar Wireshark en RHEL 8, los conceptos básicos del analizador de protocolo de red Wireshark en Linux, filtrando paquetes en Wireshark en Kali Linux y el Monitoreo de red La sección del sistema Linux y el monitoreo de hardware hecho eficiente incluye una buena introducción a tcpdump.

Conclusión

En este artículo discutimos cómo ver los procesos de escucha, las conexiones establecidas y todas las conexiones de red utilizando netstat, ss, y ifconfig. Luego introdujimos herramientas para examinar los datos reales que se transmiten a través de la red y vinculados a grandes recursos que son invaluables para descubrir cómo usarlos.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • Sistema colgado de Linux? Cómo escapar a la línea de comando y ..
  • Cosas para instalar en Ubuntu 22.04
  • Instale Arch Linux en VMware Workstation
  • Cómo arrancar dual Kali Linux y Windows 10
  • Ubuntu 20.04 Guía
  • Descarga de Linux