GNU/Linux >> Tutoriales Linux >  >> Linux

Solución de problemas de Linux:configuración de un agente de escucha TCP con ncat

La vida de un administrador de sistemas es agitada, apresurada y, a menudo, frustrante. Entonces, lo que realmente necesita es una caja de herramientas llena de herramientas que reconozca fácilmente y pueda usar rápidamente sin otra curva de aprendizaje cuando las cosas van mal. Una de esas herramientas es el ncat comando.

ncat - Concatenate and redirect sockets

El ncat El comando tiene muchos usos, pero yo lo uso para solucionar problemas de conectividad de red. Es una herramienta práctica, rápida y fácil de usar sin la que no puedo vivir. Siga y vea si decide agregarlo también a su caja de herramientas.

Desde la página man de ncat:

Ncat es una utilidad de red repleta de funciones que lee y escribe datos en redes desde la línea de comandos. Ncat fue escrito para el Proyecto Nmap y es la culminación de la familia actualmente dividida de encarnaciones de Netcat. Está diseñado para ser una herramienta de back-end confiable para proporcionar instantáneamente conectividad de red a otras aplicaciones y usuarios. Ncat no solo funcionará con IPv4 e IPv6, sino que ofrece al usuario una cantidad virtualmente ilimitada de usos potenciales.

Entre la gran cantidad de funciones de Ncat se encuentra la capacidad de encadenar Ncat; redirección de puertos TCP, UDP y SCTP a otros sitios; soporte SSL; y conexiones de proxy a través de SOCKS4, SOCKS5 o proxies HTTP (también con autenticación de proxy opcional).

¿Problema de cortafuegos o algo más?

Acaba de instalar y no puede conectarse desde otra computadora en la misma red. Es frustrante. El servicio está habilitado. Se inicia el servicio. Cree que ha creado la excepción de firewall correcta para él, pero aún así no responde.

Comienza tu vida de resolución de problemas. En lo que puede extenderse desde minutos a días hasta el infinito y más allá, intenta solucionar el problema. Podrían ser muchas cosas:una excepción de firewall configurada (o no configurada) incorrectamente, un problema de vinculación de NIC, un problema de software en algún lugar del código del servicio, una configuración incorrecta del servicio, algún problema de compatibilidad extraño o algo más no relacionado con la red o el bloqueo del servicio. acceso. Este es tu escenario. ¿Por dónde empiezas cuando has marcado todos los lugares obvios?

El comando ncat al rescate

El ncat El comando debe ser parte de su distribución básica de Linux, pero si no lo es, instale el nmap-ncat paquete y tendrá la última versión del mismo. Compruebe el ncat man para el uso, si está interesado en sus muchas capacidades más allá de este simple ejercicio de solución de problemas.

Usando el ncat comando, configurará un escucha TCP, que es un servicio TCP que espera una conexión desde un sistema remoto en un puerto específico. El siguiente comando inicia un socket de escucha en el puerto TCP 9999.

$ sudo ncat -l 9999

Este comando "colgará" su terminal. Puede colocar el comando en modo de fondo, para operar de manera similar a un demonio de servicio usando el & (ampersand) señal. Su aviso regresará.

$ sudo ncat -l 8080 &

Desde un sistema remoto, use el siguiente comando para intentar una conexión:

$ telnet <IP address of ncat system> 9999

El intento debería fallar como se muestra:

Trying <IP address of ncat system>...
telnet: connect to address <IP address of ncat system>: No route to host

Esto podría ser similar al mensaje que recibe cuando intenta conectarse a su servicio original. Lo primero que debe intentar es agregar una excepción de firewall al ncat sistema:

$ sudo firewall-cmd --add-port=9999/tcp

Este comando permite que las solicitudes de TCP en el puerto 9999 pasen a un demonio de escucha en el puerto 9999.

Vuelva a intentar la conexión al ncat sistema:

$ telnet <IP address of ncat system> 9999

Trying <IP address of ncat system>...
Connected to <IP address of ncat system>.
Escape character is '^]'.

Este mensaje significa que ahora está conectado al puerto de escucha, 9999, en el sistema remoto. Para desconectarse, use la combinación de teclado, CTRL + ] . Escribe salir para volver a un aviso.

$ telnet <IP address of ncat system> 9999

Trying <IP address of ncat system>...
Connected to <IP address of ncat system>.
Escape character is '^]'.
^]
telnet>quit
Connection closed.
$

La desconexión también eliminará el puerto de escucha TCP en el sistema remoto (ncat), así que no intente otra conexión hasta que vuelva a emitir el ncat dominio. Si desea mantener el puerto de escucha abierto en lugar de dejarlo morir cada vez que se desconecta, emita la opción -k (mantener abierto). Esta opción mantiene vivo el puerto de escucha. Algunos administradores de sistemas no usan esta opción porque pueden dejar un puerto de escucha abierto y causar problemas de seguridad o conflictos de puertos con otros servicios.

$ sudo ncat -k -l 9999 &

Qué te dice ncat

El éxito de conectarse al puerto de escucha del ncat sistema significa que puede vincular un puerto a la NIC de su sistema. Puede crear con éxito una excepción de firewall. Y puede conectarse con éxito a ese puerto de escucha desde un sistema remoto. Las fallas a lo largo del camino ayudarán a reducir dónde está tu problema.

Lo que ncat no te dice

Desafortunadamente, no existe una solución para los problemas de conectividad en esta técnica de solución de problemas que no esté relacionada con el enlace, la escucha de puertos o las excepciones del firewall. Esta es una sesión de solución de problemas de alcance limitado, pero es rápida, fácil y definitiva. Lo que encontré es que la mayoría de los problemas de conectividad se reducen a uno de estos tres. Mi siguiente paso en el proceso sería eliminar y reinstalar el paquete de servicios. Si eso no funciona, descargue una versión diferente del paquete y vea si funciona para usted. Intenta retroceder al menos dos revisiones hasta que encuentres una que funcione. Siempre puede actualizar a la última versión después de tener un servicio en funcionamiento.

Resumir

El ncat El comando es una herramienta útil para solucionar problemas. Este artículo solo se centró en un pequeño aspecto de los muchos usos de ncat . La solución de problemas es tanto un arte como una ciencia. Tienes que saber qué respuestas tienes y cuáles no. No tiene que solucionar problemas ni probar cosas que ya funcionan. Explora ncat Los diversos usos de y vea si sus problemas de conectividad desaparecen más rápido que antes.

[ ¿La red se sale de control? Consulte Automatización de redes para todos, un libro gratuito de Red Hat. ]


Linux
  1. Programación de tareas del sistema con Cron en Linux

  2. Configuración de redirecciones de puertos en Linux con ncat

  3. Equilibrar la seguridad de Linux con la usabilidad

  4. Howto:programación en C con directorios en Linux

  5. Configuración de un subdominio con Apache en Linux

Comando Uptime de Linux con ejemplos

Primeros pasos con el sistema operativo Linux

Encuentre información de hardware del sistema Linux con Hwinfo

Cómo ver las estadísticas del sistema Linux con Saidar

Mis comandos de solución de problemas de red de Linux

Configuración de un clúster de Linux con Keepalived:configuración básica