Comandos LinuxExplicados en español
/
Ficha68 / 104
Categoría
Redes
Ejemplos
5
Ver también
netstat · ip · ping · curl

ss

socket statistics (estadísticas de sockets)

Muestra conexiones de red, puertos abiertos y sockets activos.

Sirve para ver qué conexiones hay activas, qué puertos están escuchando y qué procesos los usan. Lo usas para revisar si un puerto está libre u ocupado, o para ver conexiones entrantes y salientes.

Sintaxisss [opciones] [filtro]
§ 1

Despiece

5 ejemplos
Ver puertos TCP escuchando

Ver puertos TCP escuchando

2 piezas
Lámina01 / 05
Comandoss -tln
Piezas2
Escala1:1
N.ºPiezaTipoQué hace
1ssComandoMuestra sockets de red.
2-tlnOpciónOpciones: t TCP, l escuchando, n numérico.
Resultado

Lista puertos TCP abiertos y esperando conexiones, con Local Address:Port.

Ver conexiones TCP establecidas con su proceso

2 piezas
Lámina02 / 05
Comandoss -tpn
Piezas2
Escala1:1
N.ºPiezaTipoQué hace
1ssComandoMuestra sockets de red.
2-tpnOpciónOpciones: t TCP, p procesos, n numérico.
Resultado

Ves las conexiones TCP activas (sin los puertos que solo escuchan) y qué proceso tiene cada una. Sin sudo solo ves el proceso de las conexiones de tu usuario.

Ver puertos UDP escuchando

2 piezas
Lámina03 / 05
Comandoss -uln
Piezas2
Escala1:1
N.ºPiezaTipoQué hace
1ssComandoMuestra sockets de red.
2-ulnOpciónOpciones: u UDP, l escuchando, n numérico.
Resultado

Muestra puertos UDP abiertos. UDP no establece conexión, por eso suelen verse solo en estado UNCONN.

Ver resumen de conexiones

2 piezas
Lámina04 / 05
Comandoss -s
Piezas2
Escala1:1
N.ºPiezaTipoQué hace
1ssComandoMuestra sockets de red.
2-sOpciónMuestra resumen.
Resultado

Te da un conteo rápido: cuántos TCP, UDP, RAW, UNIX sockets hay, con totales.

Filtrar por puerto específico

3 piezas
Lámina05 / 05
Comandoss -tn 'sport = :80'
Piezas3
Escala1:1
N.ºPiezaTipoQué hace
1ssComandoMuestra sockets de red.
2-tnOpciónOpciones: t TCP, n numérico.
3'sport = :80'ValorFiltra por puerto local (sport, source port) igual a 80.
Resultado

Muestra solo las conexiones TCP cuyo puerto local es el 80. Para filtrar por el puerto remoto usa 'dport = :80'.

§ 2

Opciones

Las que sí vas a usar
OpciónQué hace
-t--tcpMuestra solo conexiones TCP.
-u--udpMuestra solo conexiones UDP.
-l--listeningMuestra solo sockets que están escuchando (puertos abiertos).
-a--allMuestra todos los sockets (escuchando y no).
-n--numericMuestra los puertos como números (22 en vez de ssh). ss no resuelve nombres de host salvo que uses -r.
-p--processesMuestra qué proceso está usando cada socket.
-r--resolveResuelve nombres de host en lugar de mostrar solo IPs.
-s--summaryMuestra un resumen general de sockets.
§ 3

Fallas comunes

FallaRemedio
La columna de procesos sale vacía con -p.Sin permisos solo ves los procesos de tu usuario. Usa sudo ss -tlnp para ver todos.
Seguir buscando netstat en un sistema nuevo.ss es el reemplazo moderno de netstat y viene en el paquete iproute2, instalado por defecto en Debian y Ubuntu. netstat necesita el paquete net-tools.
Ver demasiada info sin filtros.Usa -t/-u, -l, -n para acotar. Añade un filtro por puerto cuando busques algo específico.
Pensar que UDP 'listening' es igual que TCP.UDP es sin conexión: un socket UDP puede estar 'UNCONN' y recibir datagramas. No significa que haya una conexión establecida.
§ 4

Preguntas frecuentes

¿Para qué sirve ss?
Para ver puertos abiertos, conexiones TCP/UDP activas y qué procesos los están usando. Es rápido y muestra más info que netstat.
¿Cuál es la diferencia entre ss -tln y netstat -tln?
Muestran lo mismo: puertos TCP escuchando, en formato numérico. ss es más moderno y más rápido, y viene instalado por defecto en Debian y Ubuntu; netstat requiere instalar net-tools.
¿Cómo veo qué proceso usa el puerto 8080?
Con sudo ss -tlnp 'sport = :8080'. La columna Process muestra el nombre y el PID del programa que escucha en ese puerto. También sirve sudo ss -tlnp | grep 8080.
¿Qué significa LISTEN en ss?
Que el socket está esperando conexiones entrantes en ese puerto (escuchando).
¿Cuándo usar -n con ss?
Cuando quieres ver los puertos como números (443) en vez del nombre del servicio (https). Es más claro para buscar un puerto específico. Si además quieres ver nombres de host en vez de IPs, usa -r.
§ 5

Ver también