Cómo monitorear la actividad de la red en un sistema Linux
- 4722
- 882
- Eduardo Tapia
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
Requisitos y convenciones de software utilizados
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.
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 SalidaEn 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 establecidosudo 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
- « Cómo usar NGINX para redirigir todo el tráfico de HTTP a HTTPS
- Los mejores juegos de terminal en Linux »