Comando SS en Linux con ejemplos útiles
La herramienta ss es un comando de la CLI que se utiliza para mostrar información de sockets de red en Linux. ss significa estadísticas de socket. Es una herramienta similar a netstat que puede mostrar más información, como TCP e información de estado.
La herramienta ss viene con el paquete iproute2. Puede mostrar estadísticas para sockets de dominio PACKET, TCP, UDP, DCCP, RAW y Unix.
En este tutorial, aprendemos orden ss en Linux con ejemplos útiles.
1. Indique su conexión de red
El comando ss sin opciones enumera todos los sockets abiertos que no escuchan (por ejemplo, TCP/UNIX/UDP) que establecieron la conexión.
$ ss
- Netid: Mostrar tipos de socket.
- Estado: Muestra el estado de un socket si está Establecido (ESTAB), No conectado (UNCONN) o Escuchando (LISTEN).
- Recv-Q: Muestra el número de paquetes recibidos en la cola.
- Send-Q: Muestra el número de paquetes enviados en la cola.
- Dirección local: puerto: muestra la dirección y el puerto de la máquina local.
- Peer address:port: muestra la dirección y el puerto de la máquina remota.
Puede obtener información más detallada utilizando el comando ss con opciones. También puede seleccionar varias opciones al mismo tiempo.
sintaxis del comando ss:
$ ss [Option]
$ ss [Option1] [Option2] [Option3]
2. Lista de enchufes de escucha
Para mostrar la lista de enchufes de escucha usando -l
o --listen
opción.
$ ss -l
3. Enumere todos los enchufes
Puede enumerar todas las conexiones de red de escucha y no escucha usando -a
o -all
opción.
$ ss -a
4. Liste la conexión TCP
Para mostrar la conexión de socket TCP, utilice -t
o --tcp
opción.
$ ss -t
Para mostrar la lista de todas las conexiones TCPpuedes usar -a
y -t
Opciones. Esto incluye todos los estados de socket.
$ ss -at
Para mostrar la conexión TCP para todos los estados de escucha, combine -l
y -t
Opciones.
$ ss -alt
5. Les conexión UDP
Para mostrar la conexión del socket UDP, utilice -u
o --udp
opción.
$ ss -u
Para mostrar lista de todas las conexiones UDPusar -a
y -u
Opciones. Esto incluye todos los estados de socket.
$ ss -au
Puedes combinar -l
y -u
para mostrar la conexión UDP para todos los estados de escucha.
$ ss -lu
6. Lista de sockets Unix
Para enumerar todos los sockets de Unix, puede usar el comando ss junto con el -f unix
o -x
.
$ ss -f unix
7. Lista de sockets sin procesar
Para mostrar todos los sockets sin procesar, puede usar -w
o –opción sin procesar.
$ ss -w
8. Muestra la conexión de una dirección IP
Podemos usar el comando ss para mostrar la lista de conexiones de un destino específico o una dirección IP de origen.
Por ejemplo, para enumerar la conexión de la dirección IP de destino:
$ ss dst 13.227.138.30
Por ejemplo, para enumerar la conexión de la dirección IP de origen:
$ ss src 192.168.18.151
9. Lista de conexión de socket IPv4 e IPv6
Si desea mostrar la lista de conexiones de socket IPv4, use las opciones -4 y -6 para mostrar la lista de conexiones de socket IPv6.
Para mostrar la lista de conexiones IPv4:
$ ss -4
Para mostrar la lista de conexiones de socket IPv6:
$ ss -6
Para enumerar todas las conexiones TCP IPv4, puede usar el siguiente ejemplo.
$ ss -at4
10. Identificación de procesos
Puedes encontrar procesos de socket usar -p
opción junto con el comando ss. Para identificar el proceso, necesitará el permiso sudo.
$ sudo ss -t -p
11. Enumere la conexión sin resolución de nombre de host
Para resolver la dirección/puertos numéricos, use la opción -r (resolver). Mientras –n
La opción no intenta resolver los nombres de los servicios.
Aquí en el ejemplo se puede ver la diferencia entre los dos:
$ ss -tn
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
ESTAB 0 0 74.208.235.196:22 48.192.234.17:60216
$ ss -tr
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
ESTAB 0 64 li82-186.members.linode.com:ssh n47-172-231-17.sun4.vic.optusnet.com.au:60317
$
12. Filtrar por conexión
Veamos algunos ejemplos de cómo aplicar filtros para obtener información específica.
Para filtrar la conexión TCP con escucha de estado, escriba:
$ ss -t state listening
Para mostrar las conexiones de puerto ssh establecidas:
$ ss -tr state established '( dport = :22 or sport = :22 )'
También puede filtrar utilizando el método grep tradicional. Aquí muestro todas las conexiones TCP escuchando en estado:
$ ss -at | grep LISTEN
opciones de pedido ss
El comando ss proporciona varias opciones para controlar la salida que se mostrará de acuerdo con sus requisitos Puede usar -h o –help junto con el comando ss para ver las opciones básicas disponibles con la utilidad del comando ss.
$ ss -h
comando ss contra netstat
La herramienta ss está incluida en el paquete iproute2 y por defecto en la mayoría de las distribuciones de Linux. Para tener netstat, debe instalar net-tools, que ya está en desuso. El comando ss es mucho más rápido porque se toma directamente del kernel. SS no es un reemplazo completo de netstat, parte del comando netstat se reemplaza por el comando ip.
Conclusión
En este tutorial, aprendimos sobre el comando ss con algunos ejemplos útiles. Puedes referirte página de manual para orden ss para más información.