Solución de problemas de Linux: configuración de un oyente 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 salen mal. Una de estas herramientas es el ncat pedido.

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 de la que no puedo prescindir. Sígalo y vea si decide agregarlo también a su caja de herramientas.

Desde página de manual de ncat:

Ncat es una utilidad de red rica en funciones que lee y escribe datos a través de 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 proporcionará al usuario un número prácticamente ilimitado de usos potenciales.

Entre la gran cantidad de características de Ncat, existe la posibilidad de encadenar Ncats; redirección de puertos TCP, UDP y SCTP a otros sitios; soporte SSL; y conexiones de proxy a través de SOCKS4, SOCKS5 o proxy HTTP (también con autenticación de proxy opcional).

Índice

    ¿Problema de cortafuegos o algo más?

    acabas de instalar y no puede conectarse a él desde otra ordenador en la misma red. Es frustrante. El servicio está activado. Se inicia el servicio. Cree que creó la excepción de firewall adecuada para él, pero no responde.

    Comienza tu vida de resolución de problemas. En lo que puede variar desde unos pocos minutos a unos pocos días hasta el infinito y más allá, está tratando de solucionar el problema. Pueden ser varias cosas: una excepción de firewall mal configurada (o desconfigurada), un problema de enlace de la tarjeta de red, un problema de software en algún lugar del código del servicio, una configuración incorrecta del servicio, un problema de compatibilidad extraño o algo más no relacionado con la red o bloqueando el servicio de acceso. Este es tu escenario. ¿Por dónde empiezas cuando has comprobado todos los lugares obvios?

    El comando ncat al rescate

    el ncat debe ser parte de su distribución base de Linux, pero si no, instale el nmap-ncat paquete y tendrás la última versión. Compruebe el ncat página del manual del usuario, si está interesado en sus muchas características más allá de este simple ejercicio de solución de problemas.

    Utilizando 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 "bloqueará" su terminal. Puede colocar el comando en segundo plano, para que funcione igual que un demonio de servicio usando el & señal (ampersand). Tu invitación volverá.

    $ 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 debe fallar como se muestra:

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

    Esto puede ser similar al mensaje que recibe cuando intenta iniciar sesión en 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 vayan a un demonio de escucha en el puerto 9999.

    Vuelva a intentar la conexión con el 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 desconectar, utilice la combinación de teclas, CTRL+]. Pegar 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 matará el puerto de escucha TCP en el sistema remoto (ncat), así que no intente otra conexión hasta que haya vuelto a emitir ncat pedido. Si desea mantener abierto el puerto de escucha en lugar de dejarlo morir cada vez que se desconecta, ejecute la opción -k (mantener abierto). Esta opción mantiene activo el puerto de escucha. Algunos administradores de sistemas no usan esta opción porque pueden dejar un puerto de escucha abierto, lo que puede causar problemas de seguridad o conflictos de puertos con otros servicios.

    $ sudo ncat -k -l 9999 &

    lo que te dice ncat

    La conexión exitosa al puerto de escucha del ncat sistema significa que puede vincular un puerto a la tarjeta de red de su sistema. Puede crear con éxito una excepción de firewall. Y puede conectarse con éxito a este puerto de escucha desde un sistema remoto. Las fallas en el camino ayudarán a identificar su 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 las excepciones de vinculación, escucha de puertos o 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 próximo 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. Trate de revisar al menos dos revisiones hasta que encuentre una que funcione. Siempre puede actualizar a la última versión una vez que tenga un servicio en funcionamiento.

    Conclusión

    el ncat El comando es una herramienta útil para solucionar problemas. Este artículo solo se ha centrado en un aspecto muy pequeño de los muchos usos de ncat. La solución de problemas es tanto un arte como una ciencia. Necesitas saber qué respuestas tienes y cuáles no. No necesita solucionar problemas o probar cosas que ya están funcionando. Para explorar ncaty vea si sus problemas de conectividad desaparecen más rápido que antes.

    Artículos de interés

    Subir