lunes, 24 de febrero de 2014

Comandos para comprobar si un puerto está abierto en nuestra PC/Servidor

En caso de que no deseen hacer todo un scan, sino que simplemente deseen saber si en X ordenador/servidor está abierto un determinado puerto, sería así:
nmap {IP_O_DOMINIO} -p {PUERTO} | grep -i tcp
Ejemplo:
nmap localhost -p 22 | grep -i tcp
O bien:
nmap 127.0.0.1 -p 22 | grep -i tcp
Lo que hace esto es simple, pregunta a la IP o Host si el puerto dado está abierto o no, luego el grep filtra y solo muestra la línea que desean leer, la que les indica si está abierto (open) o cerrado (closed) ese puerto:
nmap
Pues… sí, nmap (Herramienta de exploración de redes y de sondeo de puertos) nos sirve pero, hay aún otras variantes donde hay que teclear menos :)

nc

nc o netcat, es una opción mucho más simple para saber si un puerto está o no abierto:
nc -zv {IP_O_DOMINIO} {PUERTO}
O sea:
nc -zv 192.168.122.88 80
Aquí tienen un screenshot haciendo una prueba a un puerto que sí está abierto (80) y otra a otro puerto que no lo está (53):
nc
El -zv lo que hace es simple, la v nos permite ver si está abierto o no el puerto, mientras que la z cierra la conexión tan pronto se comprueba el puerto, de no poner la z entonces tendríamos que hacer un Ctrl + C para cerrar el nc.

telnet

Esta es la variante que hace un tiempo usaba (por desconocimiento de las antes mencionadas), a su vez telnet nos sirve para mucho más que solo saber si un puerto está abierto o no.
telnet {IP_O_HOST} {PUERTO}
Aquí un ejemplo:
telnet 192.168.122.88 80
El problema de telnet es el cierre de la conexión. O sea, en determinadas ocasiones no podremos cerrar la solicitud de telnet y nos veremos obligados a cerrar esa terminal, o de lo contrario en otra terminal hacer un killall telnet o algo similar. Es por eso que evito usar telnet a no ser que me sea muy necesario.

No hay comentarios:

Publicar un comentario