5 formas de comprobar si un puerto está abierto en una PC Linux remota
TAquí hay una amplia cantidad de formas de verificar si hay puertos abiertos en una PC Linux remota. Conocer los puertos abiertos en una máquina Linux ayuda a los administradores del sistema a conectarse a la PC remota para solucionar problemas del sistema y del servidor en la nube.
Puertos TCP y UDP
TCP significa Protocolo de control de transmisión. En este método, las computadoras se conectan directamente hasta que se realiza la transferencia de datos. Por lo tanto, con este método, la transferencia de datos está garantizada y es confiable, pero impone una mayor carga al servidor, ya que tiene que monitorear la conexión y la transferencia de datos también.
UDP son las siglas de User Datagram Protocol. Con este método, los datos se envían en forma de pequeños paquetes a la red con la esperanza de que lleguen al destino final. Significa que las dos computadoras no están conectadas directamente entre sí. Este método no ofrece ninguna garantía de que los datos que envíe lleguen alguna vez a su destino. La carga en el servidor es menor, por lo que los administradores del sistema suelen utilizar este método primero para probar algo que no es tan importante.
Ahora que sabe que los tipos son puertos en un sistema Linux, comencemos con las formas de encontrar los que están abiertos.
Las mejores formas de comprobar si un puerto está abierto en una PC con Linux
Hay varias formas de hacerlo. Sin embargo, la forma más confiable de hacerlo es mediante los siguientes comandos:
- nc: comando netcat
- nmap: herramienta de mapeo de redes
- telnet: comando telnet
- echo> / dev / tcp / ..
- netstat - tuplen
Repasemos cada método uno por uno.
1. comando netcat
netcat es una sencilla utilidad de Unix que se puede utilizar para escribir y leer datos utilizando los protocolos UDP y TCP a través de conexiones de red.
La razón principal de su diseño es proporcionar una herramienta de back-end que funcione con los scripts y programas. También es una herramienta de exploración y depuración de redes que ofrece toneladas de funciones.
Para usarlo, debe instalarlo en su distribución usando los respectivos comandos de instalación.
Para Ubuntu / Debian:
sudo apt-get install netcat
Para Fedora 22+
dnf install nc
Para RHEL / CentOS
yum install nc
Al hacerlo, puede realizar las siguientes operaciones con él.
- enviar paquetes UDP
- escuchar puertos UDP y TCP arbitrarios
- Utilice IPv4 e IPv6 para escanear puertos
Además, también tiene tres modos
La sintaxis del comando es la siguiente.
nc [-options] host-ip-adress port-number
Intentemos usarlo en una computadora remota.
$ nc -zvw10 192.168.0.1 22
Como puede ver, la conexión se realizó correctamente. Esto significa que el puerto 22 está abierto. Si la conexión falla, recibirá un mensaje de error de "fallido: conexión rechazada"
En el comando anterior, también usamos diferentes opciones. Vamos a enumerarlos a continuación.
- z: modo de E / S cero que se utiliza para escanear
- v: para salida detallada
- w10: tiempo de espera, segundos de espera
2. comando nmap
El comando Nmap es un comando popular de exploración, auditoría y seguridad de red. Nmap son las siglas de Network Mapper.
También tiene una forma de verificar puertos abiertos. Para hacerlo, utiliza un enfoque novedoso para usar paquetes IP. También se puede utilizar para conocer los servicios que proporciona el anfitrión. Otros aspectos vitales que puede detectar incluyen la versión del sistema operativo, los cortafuegos / filtros de paquetes, etc. Es una herramienta útil.
Veamos la sintaxis de nmap a continuación.
nmap [-options] [IP or Hostname] [-p] [PortNumber]
Como puede ver, su sintaxis coincide con la del comando nc. Ejecútelo para comprenderlo mejor.
nmap 192.168.0.1 -p 22
Si el puerto está cerrado, mostrará que el estado está cerrado.
$ nmap 192.168.0.2 -p 103
3. comando telnet
El siguiente comando por el que pasaremos es el comando telnet. Es un antiguo comando de comunicación interactiva.
Está especialmente creado para la interacción con la computadora remota, y es por eso que lo usaremos para verificar si hay puertos abiertos en una computadora remota. El comando está disponible en los sistemas Windows y Linux, pero en un sistema Windows, debe habilitarse antes de su uso. Se ejecuta en una red TCP / IP. Además, se conecta a través de una computadora remota o equipo de red a través del puerto 23.
Una cosa más que debe saber es que no es un protocolo seguro y debe usarse con SSH si desea estar encriptado y seguro.
Para instalar telnet en RHEL 7 o CentOS 7, debe usar el siguiente comando.
# yum install telnet telnet-server -y
Para Ubuntu, use el siguiente comando
$ sudo apt install telnetd -y
La sintaxis del comando es la siguiente.
$ telnet [IP or Hostname] [PortNumber]
Si la conexión falla, el puerto no está abierto y obtendrá el siguiente resultado.
4. echo> / dev / tcp /…
Hay otra forma de comprobar si hay puertos abiertos. En Linux, todo es un archivo, incluido el estado del host y la disponibilidad de su puerto. Esto puede resultar útil en los casos en los que ningún comando esté funcionando en el host remoto.
La sintaxis del comando es la siguiente
echo > /dev/tcp/[host]/[port] && echo "Port is open"
o
echo > /dev/udp/[host]/[port] && echo "Port is open"
5. netstat -tuplen
El último comando que vamos a discutir es el netstat mando. Es un comando TCP / IP de utilidad de red. Se utiliza para imprimir conexiones, estadísticas de interfaz, membresía de multidifusión y otras tareas relacionadas con la red.
La sintaxis del comando es la siguiente.
netstat -tuplen
Generará la lista completa de direcciones IP. Las entradas que tienen "Escuchar" en la columna "Estado" son los puertos abiertos.
Conclusión
Esto nos lleva al final de nuestras cinco formas de verificar si un puerto está abierto en una PC Linux remota. Entonces, ¿qué forma vas a utilizar para conectarte a tu PC Linux remota? Comenta a continuación y háznoslo saber.
Deja una respuesta