Cómo encontrar la lista de todos los puertos abiertos en Linux
En este artículo, hablaremos brevemente sobre los puertos en las redes de computadoras y pasaremos a cómo puede enumerar todos los puertos abiertos en Linux.
En las redes de computadoras, y más definitivamente en términos de software, un puerto es una entidad lógica que actúa como un punto final de comunicación para identificar una aplicación o proceso determinado en un sistema operativo Linux. Es un número de 16 bits ( 0. a 65535. que diferencia una aplicación de otra en los sistemas finales.
Los dos protocolos de transporte de Internet más populares, el Protocolo de control de transmisión. ( TCP. y el Protocolo de datagramas de usuario. ( UDP. y otros protocolos menos conocidos utilizan el puerto números para sesiones de comunicación (números de puerto de origen y destino junto con las direcciones IP de origen y destino).
Además, una combinación de una dirección IP, puerto y protocolo como TCP/UDP. se conoce como socket, y cada servicio debe tener un socket único.
A continuación se muestran las diferentes categorías de puertos:
- 0-1023. los puertos bien conocidos, también denominados puertos del sistema.
- 1024-49151. los puertos registrados, también conocidos como puertos de usuario.
- 49152-65535. los puertos dinámicos, también denominados Priva te Ports.
freestar.config.enabled_slots.push
Puedes ver una lista de diferentes aplicaciones y combinación de puerto/protocolo en el archivo/etc/services en Linux usando el comando cat:
$ cat/etc/services O $ cat/etc/services | less Network Services and Ports #/etc/services: # $ Id: services, v 1.48 2009/11/11 14:32:31 ovasik Exp $ # # Network services, Internet style # IANA services version: last updated 2009-11-10 # # Tenga en cuenta que actualmente es política de IANA asignar un único número de # puerto bien conocido para TCP y UDP; por lo tanto, la mayoría de las entradas aquí tienen dos entradas # incluso si el protocolo no admite operaciones UDP. # Actualizado de RFC 1700, “ Assigned Numbers ” (octubre de 1994). No se incluyen todos los puertos #, solo los más comunes. # # Las últimas asignaciones de puertos de IANA se pueden obtener en # http://www.iana.org/assignments/port-numbers # Los puertos bien conocidos son los del 0 al 1023. # Los puertos registrados son los del 1024 al 49151 # Los puertos dinámicos y/o privados son los del 49152 al 65535 # # Cada línea describe un servicio y tiene la forma: # # nombre-servicio puerto/protocolo [alias …] [# comentario] tcpmux 1/tcp # Multiplexor de servicio de puerto TCP tcpmux 1/udp # Multiplexor de servicio de puerto TCP rje 5/tcp # Entrada de trabajo remoto rje 5/udp # Entrada de trabajo remota echo 7/tcp echo 7/udp discard 9/tcp sink null descartar 9/udp sink null systat 11/tcp users systat 11/udp users daytime 13/tcp daytime 13/udp qotd 17/tcp citar qotd 17/udp citar msp 18/tcp # protocolo de envío de mensajes msp 18/udp # protocolo de envío de mensajes chargen 19/tcp ttytst fuente chargen 19/udp ttytst fuente ftp-data 20/tcp ftp-data 20/udp # 21 está registrado a ftp, pero también utilizado por fsp ftp 21/tcp ftp 21/udp fsp fspd ssh 22/tcp # El protocolo Secure Shell (SSH) ssh 22/udp # El protocolo Secure Shell (SSH) telnet 23/tcp telnet 23/udp
Para enumerar todos los puertos abiertos o puertos que se ejecutan actualmente, incluidos TCP. y UDP. en Linux, usaremos netstat, una poderosa herramienta para monitorear conexiones de red y estadísticas.
Lista de todos los puertos de red usando el comando Netstat $ netstat-lntu. Proto Recv-Q Send-Q Dirección local Dirección extranjera Estado tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN tcp 0 0 ::: 22 ::: * ESCUCHAR tcp 0 0 ::: 80 ::: * ESCUCHAR tcp 0 0 ::: 25 ::: * ESCUCHAR udp 0 0 0.0.0.0:68 0.0.0.0:*
Dónde,
- -l-imprime solo sockets de escucha
- -n-muestra el número de puerto
- -t-habilita la lista de puertos tcp
- -u-habilita la lista de puertos udp
También puede usar el comando ss. una utilidad útil bien conocida para examinar sockets en un sistema Linux. Ejecute el siguiente comando para enumerar todos sus puertos TCP y UCP abiertos:
Enumere todos los puertos de red utilizando el comando ss $ ss-lntu. Estado de Netid Recv-Q Send-Q Dirección local: Port Peer Address: Port udp UNCONN 0 0 *: 68 *: * tcp LISTEN 0128 ::: 22 ::: * tcp LISTEN 0128 *: 22 *: * tcp LISTEN 0 50 *: 3306 * : * tcp LISTEN 0128 ::: 80 :: * tcp LISTEN 0100 ::: 25 ::: * tcp LISTEN 0100 *: 25
Asegúrese de leer las páginas de manual de los comandos anteriores para más información de uso.
En resumen, comprender el concepto de puertos en las redes informáticas es muy vital para el sistema y la red administradores. También puede consultar esta guía de netstat con ejemplos simples, precisos y bien explicados.
Por último, pero no menos importante, póngase en contacto con nosotros compartiendo otros métodos para enumerar puertos abiertos en Linux o haciendo una pregunta a través de el formulario de respuesta a continuación.