Usando SS para monitorear conexiones en GNU / Linux para nuevos usuarios

La siempre popular herramienta Netstat, ha sido depricado durante bastantes años y se han desarrollado herramientas más nuevas para que la línea de comandos lo reemplace; a saber, ss.

Usar ss es extremadamente simple, dado el poder detrás del comando y la cantidad de información que puede obtener mientras lo usa, como información para TCP, UDP, PACKET, RAW, DCCP y UNIX Sockets.



Usando ss

ss

Como se dijo, usar ss es relativamente fácil cuando se trata de utilidades de línea de comandos. Las páginas de manual también están bien documentadas para cualquier persona que tenga problemas.



Uso básico de ss

Simplemente escribiendo ss le dará una lista de todos los sockets que actualmente tienen conexiones.

Para enumerar solo los sockets que están escuchando actualmente: ss -l

Pero, ¿qué pasa si queremos filtrar ciertos tipos de conexiones y solo enumerar algunos otros, como solo mostrar conexiones TCP, UDP o UNIX?

  • Utilice ss -t para conexiones TCP
  • Utilice ss -u para conexiones UDP
  • Utilice ss -x para conexiones UNIX

Sin embargo, tenga en cuenta que al usar los comandos anteriores, solo se le mostrarán las conexiones que están actualmente totalmente establecidas, y también debe agregar el -a opción, si desea enumerar los sockets establecidos y de escucha.

los -norte opción, desactiva la resolución del nombre de host, por lo que solo verá las direcciones IP, lo que puede acelerar un poco las cosas si realmente no le importa ver el nombre de host.

Otra forma práctica de utilizar ss es mediante el uso de estados. Esto le permite usar ss específicamente para apuntar solo a sockets en el estado exacto que está buscando.

Filtrado de estado

El uso de ss con filtrado de estado es: ss [opciones] [estado] [filtro]

Según las páginas de manual, los filtros / identificadores disponibles son:

Todos los estados de TCP estándar: establecido, syn-sent, syn-recv, fin-wait-1, fin-wait-2, time-wait, closed, close-wait, last-ack, listen y cerrando.

  • todos - para todos los estados
  • conectado: todos los estados excepto escuchar y cerrado
  • sincronizado: todos los estados conectados excepto el enviado sincrónico
  • bucket: estados, que se mantienen como minisockets, es decir, time-wait y syn-recv
  • grande - opuesto al cubo

Algunos ejemplos simples de uso de estados:

  • ss -t estado tiempo-espera
  • ss -t estado establecido

También puede filtrar IPv4 e IPv6:

  • ss -4
  • ss -6

o combinarlos:

  • segmento de estado ss -t4

Por supuesto, es posible que no le resulte muy útil usar ss para observar ciertos estados, ya que detectar el momento específico en el que un socket está enviando o recibiendo datos puede ser tedioso, y es mejor usar el comando 'watch' para este propósito:

  • ver -n 1 'ss -t4 estado sincronizado recibido'

Este comando le mostrará un informe de actualización de un segundo, en sockets TCP IPv4 a medida que reciben sus datos.

Palabras de cierre

Usar ss es increíblemente simple una vez que lo dominas, y para los usuarios que desean profundizar en las redes, los servidores o incluso simplemente el alojamiento de juegos, ¡puede ser útil aprender!