Las aplicaciones cliente-servidor abren puertos de comunicación en el servidor, lo que permite a las aplicaciones escuchar las solicitudes de cliente entrantes.
Dado que los puertos abiertos son vulnerables a posibles ataques de seguridad, identifique qué aplicaciones tienen puertos abiertos y cierre los puertos que están abiertos innecesariamente. Esta práctica es útil porque permite entender qué sistemas se están poniendo a disposición de cualquiera que tenga acceso a Internet.
Para determinar qué puertos están abiertos, siga estos pasos:
Identifique los servicios utilizando el mandato
netstat como se indica a continuación:
# netstat -af inet
A continuación se muestra un ejemplo de esta salida de mandato. La última columna de la salida del mandato netstat indica el estado de cada servicio. Los servicios que están a la espera de conexiones entrantes están en el estado LISTEN.
Este es un ejemplo de la salida del mandato al ejecutar el mandato netstat .
| Conexión a Internet activa (incluidos los servidores) |
| Proto |
Cola de recepción |
Cola de envío |
Dirección local |
Dirección foránea |
(estado) |
tcp4
|
0
|
0
|
*.echo
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.discard
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.daytime
|
*.*
|
LISTEN
|
tcp
|
0
|
0
|
*.chargen
|
*.*
|
LISTEN
|
tcp
|
0
|
0
|
*.ftp
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.telnet
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.smtp
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.time
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.www
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.sunrpc
|
*.*
|
LISTEN
|
tcp
|
0
|
0
|
*.smux
|
*.*
|
LISTEN
|
tcp
|
0
|
0
|
*.exec
|
*.*
|
LISTEN
|
tcp
|
0
|
0
|
*.login
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.shell
|
*.*
|
LISTEN
|
tcp4
|
0
|
0
|
*.klogin
|
*.*
|
LISTEN
|
udp4
|
0
|
0
|
*.kshell
|
*.*
|
LISTEN
|
udp4
|
0
|
0
|
*.echo
|
*.*
|
|
udp4
|
0
|
0
|
*.discard
|
*.*
|
|
udp4
|
0
|
0
|
*.daytime
|
*.*
|
|
udp4
|
0
|
0
|
*.chargen
|
*.*
|
|
udp4
|
0
|
0
|
*.time
|
*.*
|
|
udp4
|
0
|
0
|
*.bootpc
|
*.*
|
|
udp4
|
0
|
0
|
*.sunrpc
|
*.*
|
|
udp4
|
0
|
0
|
255.255.255.255.ntp
|
*.*
|
|
udp4
|
0
|
0
|
1.23.123.234.ntp
|
*.*
|
|
udp4
|
0
|
0
|
localhost.domain.ntp
|
*.*
|
|
udp4
|
0
|
0
|
name.domain..ntp
|
*.*
|
|
| .................................... |
Abra el archivo
/etc/services y compruebe los servicios de Internet Assigned Numbers Authority (IANA) para correlacionar el servicio con los números de puerto del sistema operativo.
A continuación se muestra un fragmento de ejemplo del archivo
/etc/services:
tcpmux 1/tcp # TCP Port Service Multiplexer
tcpmux 1/tcp # TCP Port Service Multiplexer
Compressnet 2/tcp # Management Utility
Compressnet 2/udp # Management Utility
Compressnet 3/tcp # Compression Process
Compressnet 3/udp Compression Process
Echo 7/tcp
Echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
..............
rfe 5002/tcp # Radio Free Ethernet
rfe 5002/udp # Radio Free Ethernet
rmonitor_secure 5145/tcp
rmonitor_secure 5145/udp
pad12sim 5236/tcp
pad12sim 5236/udp
sub-process 6111/tcp # HP SoftBench Sub-Process Cntl.
sub-process 6111/udp # HP SoftBench Sub-Process Cntl.
xdsxdm 6558/ucp
xdsxdm 6558/tcp
afs3-fileserver 7000/tcp # File Server Itself
afs3-fileserver 7000/udp # File Server Itself
af3-callback 7001/tcp # Callbacks to Cache Managers
af3-callback 7001/udp # Callbacks to Cache Managers
- Cierre los puertos innecesarios eliminando los servicios en ejecución.
Nota: RMC (Resource Monitoring and Control) utiliza el puerto 657 para la comunicación entre nodos. No puede bloquear o restringir de otro modo este puerto.