Pruebe si un puerto en un sistema remoto es accesible

Pruebe si un puerto en un sistema remoto es accesible
El monitoreo de un puerto abierto es una medida de seguridad clave para asegurar un servidor remoto. Los piratas informáticos generalmente se dirigen a los servidores comprometidos al analizar puertos abiertos críticos. Si un hacker logra encontrar dicho puerto, puede usarlo para enviar tráfico ilegítimo o usarlo para obtener acceso no autorizado en servidores remotos.

Muchas aplicaciones importantes como servidores de bases de datos, servidores web, servicios de transferencia de archivos, etc., Use puertos dedicados. Para endurecer la seguridad del sistema/servidores, los administradores del sistema generalmente aseguran estos puertos al negarles el acceso a ellos por usuarios/servicios desconocidos o cambiar el número de puerto predeterminado a algún otro valor.

En las redes informáticas, el conocimiento de la administración de puertos es una tarea muy vital para administrar la seguridad del servidor. Esta guía estudiará varios métodos para analizar un puerto en un Linux Ubuntu 20.04 sistema.

¿Qué cubriremos??

En esta guía, utilizaremos las siguientes herramientas para analizar puertos en nuestro servidor Ubuntu.

  1. Telnet
  2. Nmap
  3. Netcat

Utilizaremos un servidor Ubuntu para actuar como un servidor remoto y una estación de trabajo Fedora 34 como una máquina cliente para conectarse al servidor. Empecemos ahora.

Requisitos previos

  1. Cuenta de usuario con acceso 'sudo'.
  2. Conocimientos básicos de las redes de computadora.
  3. acceso a Internet

1. Uso del comando Telnet para verificar el puerto abierto

Telnet es una aplicación cliente/servidor para inicio de sesión remoto en un servidor con capacidad de terminal virtual en una red. Utiliza el puerto de TCP número 23 a través de una red TCP/IP. RFC 854 define la especificación para el protocolo Telnet.

Para instalar el servidor Telnet en nuestro servidor Ubuntu, use el siguiente comando:

sudo apt install telnetd

Daemon 'Telnetd' es un programa de servidor de Telnet que se inicia por el inetd demonio.

Usaremos la estación de trabajo Fedora 34 como cliente de Telnet. Para instalar Telnet Client en Fedora, use el comando:

$ sudo dnf instalación telnet

Ahora usaremos el cliente Telnet en Fedora 34 para verificar los puertos abiertos en el sistema Ubuntu que ejecuta el servidor Telnet. Vaya a la estación de trabajo Fedora 34 y abra el terminal y escriba el comando:

$ Telnet 192.168.43.216 23

Aquí '192.168.43.216 'es la IP del servidor Ubuntu y' 23 'es el puerto predeterminado para el demonio Telnet que se ejecuta en este servidor.

Un inicio de sesión exitoso significa que el puerto 23 es un puerto abierto en nuestro servidor Ubuntu. Ahora probemos otro número de puerto '80' con Telnet:

$ Telnet 192.168.43.216 80

Podemos ver que el puerto 80 no está abierto para hacer una conexión Telnet; Por lo tanto, está cerrado ahora mismo.

Permítanos instalar el servidor web de Apache en el servidor Ubuntu. Apache, por defecto, usa el puerto 80 para sus servicios HTTP. Nuevamente ejecuta el comando:

$ Telnet 192.168.43.216 80

Desde la etiqueta 2 en la figura anterior, el puerto 80 ahora está escuchando y abierto para la conexión HTTP pero cerrada para otros tipos de conexión.

Telnet no proporciona cifrado para los datos que se transfieren; La contraseña se transmitirá en formato de texto plano.

2. Uso de NMAP para verificar el puerto abierto

NMAP es una de las herramientas de escáner de red más populares y avanzadas. Es de código abierto y está disponible gratuitamente para sistemas UNIX y Windows. NMAPFE es una versión gráfica del comando NMAP basado en terminal. Tiene un amplio conjunto de operaciones de operaciones como escaneo de puertos, escaneo de protocolos, huellas digitales del sistema operativo (detección de sistemas operativos), etc.
Permítanos instalar NMAP en nuestra máquina cliente Fedora 34 y escanear los puertos en el servidor Ubuntu. Para instalar NMAP en Fedora 34, use el comando:

$ sudo dnf instalación nmap

Después de instalar NMAP, abra un terminal en el sistema Fedora y escanea los puertos utilizando:

$ sudo nmap -f [IP del servidor remoto]

Delantero.gramo., En nuestro caso, la IP del servidor remoto (Ubuntu) es 192.168.43.216, entonces el comando será:

$ sudo nmap -f 192.168.43.216

La salida del comando anterior muestra que el puerto 23 y el puerto 80 están en estado abierto. También podemos usar el siguiente comando para la detección de puertos abiertos:

$ sudo nmap -st 192.168.43.216

Con NMAP, también podemos verificar si hay un estado de puerto específico. Para verificar el estado del puerto 80 en ejecución del servicio Apache y un puerto aleatorio 83, use el comando:

$ sudo nmap 192.168.43.216 -P 83
$ sudo nmap 192.168.43.216 -P 80

De la imagen de arriba, el puerto 83 está cerrado y el puerto abierto 80 está abierto para escuchar las solicitudes de Apache HTTP.

3. Uso del comando NC (NetCat) para verificar el puerto abierto

NetCat es otra herramienta que se puede utilizar para el escaneo de puertos. También se puede usar para abrir conexiones TCP, enviar paquetes UDP, etc. Netcat viene enviado con NMAP:

Para verificar un puerto con NetCat, ejecute el siguiente comando:

$ sudo nc -zvw ip_address puerto

Por ejemplo, para verificar el puerto 22 y el puerto 80, usaremos:

$ sudo nc -zvw 100ms 192.168.43.216 22
$ sudo nc -zvw 100ms 192.168.43.216 80

Podemos ver que el puerto 22 está cerrado a medida que se rechaza la conexión. En el caso del puerto 80, la conexión NetCat es exitosa porque Apache está instalado en el servidor Ubuntu.

Conclusión

En esta guía, hemos explorado varios métodos de escaneo de puertos en un sistema remoto. Tenga cuidado mientras ejecuta estos comandos porque escanear otras redes sin su permiso es un delito legal.