Los comandos en linux netstat : mejores usos, ejemplos

Comandos en linux netstat

Netstat es un comando muy usado para consultar los datos enviados por nuestro sistema operativo. Este post te muestra como usar netstat en linux. Espero que te sea útil.

Netstat es una herramienta frecuentemente utilizada para inspeccionar el tráfico de red. Este post te mostrará cómo usar netstat en Linux. Al final, serás capaz de comprobar el tráfico de red como un profesional.

Índice

Sintaxis comando en linux: netstat

Netstat es un comando de Linux que te permite ver las conexiones activas hacia y desde tu sistema.
Es útil para identificar los recursos que se están utilizando en exceso, supervisar el tráfico de red en busca de comportamientos sospechosos y controlar el uso de los recursos para los proveedores de alojamiento.

Netstat puede ejecutarse directamente desde la línea de comandos, o puede iniciarse desde la interfaz gráfica de usuario a través del panel de Configuración del Sistema.

En ambos casos, netstat mostrará información sobre las conexiones activas.

comando netstat linux destacada

Al utilizar las máscaras de IP, puedes ver las conexiones activas por usuario, rango de direcciones IP o nombre de la aplicación.

Además, netstat admite la visualización del estado de la conexión y de métricas como los paquetes enviados y recibidos.

Esto proporciona una gran cantidad de información que te ayudará a determinar la salud de tu red y a identificar posibles problemas antes de que se conviertan en tales.

Y ahora que sabemos que hace el comando netstat, vamos a ver las opciones que nos ofrece para todas las tareas que podemos hacer con el.

Opciones del comando netstat

Muestra todas las conexiones y los puertos de escucha

La opción es con netstat -a y muestra todas las conexión y los puertos a la escucha y se mantiene a la escucha

No hace distinción entre conexiones TCP y UDP, aunque podemos hacerlo nosotros mismos discriminando por tipo de protocolo:

netstat -at => Muestra conexiones activas por TCP
netstat -au => Muestra conexiones activas por UDP

Mostrar las estadísticas por protocolo.

A veces necesitamos unas estadísticas de los datos que pasan por nuestra red. Estos datos los podemos discriminar por protocolo como vimos anteriormente, aunque la opción estándar es netstat -s:

netstat -st => Muestra estadísticas de las conexiones activas por TCP
netstat -su => Muestra estadísticas de las conexiones activas por UDP

Mostrar los sockets a la escucha de cada proceso

Nos mostrara mas detalladamente las conexiones asociada a cada proceso y socket por la que esta escuchando, haciendo mas sencillo el estudio de los posibles problemas.

netstat -l

O las opciones siguientes:

netstat -lt = Mostrar todos los puertos TCP en escucha
netstat -lu = Mostrar todos los puertos UDP en escucha
netstat -lx = Mostrar todos los puertos Unix en escucha

Muestra información completa de las interfaces de red

La información obtenida con netstat con estas opciones es similar a la obtenida en windows con ifconfig, por tanto es muy resumida y fácil de leer para el usuario.

El comando quedaría de esta manera:

netstat -ie

Mostrar el proceso que esta usando un puerto determinado.

En muchas ocasiones necesitaremos conocer el proceso que esta utilizando un puerto en especifico, sobre todo por seguridad del sistema.

En este caso y realizando el filtro gracias a concatenar la salida de netstat y filtrando la salida con el comando grep, podemos utilizar el siguiente comando:

netstat -anp | grep ‘:80’

netstat -anp | grep ‘:443’

De esta manera podemos conocer los procesos que utilicen los puertos 80 y 443 respectivamente y utilizar el comando netstat puerto especifico.

Con este comando podemos como veis buscar puerto especifico con netstat fácilmente

comando netstat linux

Agrega una columna que muestra el PID o el nombre del programa asociado a esa salid

Como se puede observar, añade una columna con el PID a la salida que obtenemos, como podemos ver en el ejemplo anterior:

netstat -p

netstat -ap

Mostrar el puerto que esta corriendo un programa especifico.

Antes vimos el uso de ver que proceso abre un puerto especifico, con este veremos que puerto se abre con cada proceso.

netstat -ap | grep firefox

Mostrar información en tiempo real

Con esta opción netstat nos mostrara la información necesaria actualizándola cada pocos segundo.

netstat -c

Es muy útil cuando estamos esperando se abra o se cierre un puerto determinado, en el inicio o parada de algún software.

Como mostrar las estadisticas de red con el comando netstat -an

El comando netstat -an es utilizado para mostrar las estadísticas de la red. Al ejecutar netstat con las opciones -an, el comando hace lo siguiente:

  • -a: Esta opción le dice a netstat que muestre todos los sockets activos. En el contexto de redes, un socket es un punto final que se utiliza para la comunicación bidireccional entre dos programas que se ejecutan en la red. Esto incluye tanto las conexiones establecidas (como aquellas que están actualmente en uso para la transmisión de datos) como las que están escuchando (esperando conexiones entrantes).
  • -n: Esta opción le indica a netstat que muestre las direcciones y los números de puerto en formato numérico, es decir, que no intente resolver nombres de host, servicios o direcciones IP. Cuando no se utiliza esta opción, netstat intentará traducir, por ejemplo, un número de puerto (como el 80) a su servicio asociado (como http).

Por lo tanto, al ejecutar netstat -an, obtienes una lista de todos los sockets en el sistema, tanto activos como inactivos, sin ningún tipo de resolución de nombres. Esto puede ser particularmente útil para administradores de sistemas y profesionales de seguridad de la información que necesitan una vista rápida y completa de la actividad de la red en un sistema.

Proto Recv-Q Send-Q Local Address           Foreign Address         State tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN tcp        0      0 192.168.1.5:22          0.0.0.0:*               LISTEN tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN tcp        0    128 192.168.1.5:22          10.0.0.1:50792          ESTABLISHED udp        0      0 0.0.0.0:123             0.0.0.0:*               udp        0      0 192.168.1.5:137         0.0.0.0:*               udp        0      0 192.168.1.5:138         0.0.0.0:*               

Aquí os dejo el significado de cada columna del comando netstat en linux:

  • Proto: El protocolo de la conexión (por ejemplo, tcp o udp).
  • Recv-Q: El número de bytes que no han sido recibidos por la aplicación local (cola de recepción).
  • Send-Q: El número de bytes que no han sido enviados por la aplicación local (cola de envío).
  • Local Address: La dirección IP local y el número de puerto asociado con la conexión. Si ves 0.0.0.0, significa que el socket está escuchando en todas las interfaces de red disponibles.
  • Foreign Address: La dirección IP remota y el número de puerto asociado con la conexión. Un * en lugar de una dirección indica que el socket está escuchando y puede aceptar conexiones de cualquier dirección IP.
  • State: El estado de la conexión TCP (por ejemplo, LISTEN, ESTABLISHED, etc.).

Esta tabla te permite ver rápidamente todas las conexiones y puertos que están actualmente escuchando o conectados en tu sistema.

En este artículo, te hemos mostrado cómo utilizar netstat para ver qué servicios están escuchando en una máquina Linux. También te hemos mostrado cómo utilizar el comando de Linux para ver qué aplicaciones se están ejecutando actualmente.

Si tienes alguna pregunta sobre cualquiera de estos comandos de red en Linux o quieres más ejemplos, déjala en los comentarios de abajo, y te responderemos lo antes posible. Y una vez más, si esta guía netstat Linux os ha sido útil, no dejes de compartirla con tus amigos y familiares.

Subir