Probar la conectividad de puertos con nc -zv
En los pasos anteriores, aprendiste cómo listar los puertos abiertos utilizando netstat
y ss
. Ahora, usemos el comando nc
(netcat) para probar si realmente puedes conectarte a un puerto específico. nc
es una utilidad de red versátil que puede leer y escribir en conexiones de red utilizando TCP o UDP.
Utilizaremos nc
con las siguientes opciones:
-z
: Especifica que nc
solo debe escanear los demonios en escucha, sin enviar ningún dato a ellos. Esto es útil para comprobar si un puerto está abierto.
-v
: Habilita la salida detallada, mostrando más detalles sobre el intento de conexión.
Probaremos la conectividad al puerto 22 (SSH), que vimos estaba en escucha en los pasos anteriores. Probaremos la conexión a la máquina local, que se puede referir por la dirección IP 127.0.0.1
o el nombre de host localhost
.
Abre tu terminal si no está abierta.
Escribe el siguiente comando y presiona Enter:
nc -zv 127.0.0.1 22
Deberías ver una salida similar a esta:
Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!
Esta salida confirma que nc
pudo conectarse exitosamente al puerto 22 en tu máquina local.
Ahora, intentemos probar un puerto que probablemente no esté abierto, por ejemplo, el puerto 80 (HTTP), ya que no hay un servidor web en ejecución por defecto en este entorno.
Escribe el siguiente comando y presiona Enter:
nc -zv 127.0.0.1 80
Probablemente verás una salida que indique que la conexión fue rechazada o que hubo un tiempo de espera, similar a esta:
nc: connect to 127.0.0.1 port 80 (tcp) failed: Connection refused
Esta salida muestra que nc
no pudo conectarse al puerto 80, lo cual es esperado ya que ningún servicio está escuchando en ese puerto.
Usar nc -zv
es una forma rápida y fácil de verificar si un puerto específico es alcanzable y está abierto desde tu ubicación actual.
Haz clic en Continuar para completar este laboratorio.