Como instalar y usar Netcat en Linux

Como instalar y usar Netcat en Linux

En este artículo explicaremos los comandos de uso de Netcat con ejemplos. Como instalar y usar Netcat en Linux

Netcat (o nc en resumen) es una herramienta de línea de comandos de red simple pero potente que se utiliza para realizar cualquier operación en Linux relacionada con sockets de dominio TCP , UDP o UNIX .

Netcat se puede usar para escanear puertos , redireccionar puertos , como escucha de puertos (para conexiones entrantes); También se puede utilizar para abrir conexiones remotas y muchas otras cosas. Además, puede usarlo como puerta trasera para obtener acceso a un servidor de destino.

Para instalar el paquete netcat en su sistema, use el administrador de paquetes predeterminado para su distribución de Linux.

$ yum install nc [En CentOS / RHEL]

$ dnf install nc [En Fedora 22+ y RHEL 8]

$ sudo apt-get install Netcat [En Debian / Ubuntu]

Una vez instalado el paquete netcat , puede continuar para aprender el uso del comando netcat en los siguientes ejemplos.

Escaneo de puertos

Netcat se puede usar para escanear puertos: para saber qué puertos están abiertos y ejecutando servicios en una máquina de destino. Puede escanear uno o varios puertos o un rango de puertos abiertos.

Aquí hay un ejemplo, la -zopción establece nc para simplemente escanear en busca de demonios, sin enviarles ningún dato. La -vopción habilita el modo detallado y -wespecifica un tiempo de espera para la conexión que no se puede establecer.

$ nc -v -w 2 z 192.168.56.1 22 # escanea un solo puerto

O

$ nc -v -w 2 z 192.168.56.1 22 80 #scan múltiples puertos

O

$ nc -v -w 2 z 192.168.56.1 20-25 #scan rango de puertos

Transferir archivos entre servidores Linux

Netcat le permite transferir archivos entre dos computadoras o servidores Linux y ambos sistemas deben tener nc instalado.

Por ejemplo, para copiar un archivo de imagen ISO de una computadora a otra y monitorear el progreso de la transferencia (usando la utilidad pv ), ejecute el siguiente comando en la computadora del remitente / servidor (donde existe el archivo ISO).

Esto ejecutará nc en modo de escucha ( -lbandera) en el puerto 3000.

$ tar -zcf - debian-10.0.0-amd64-xfce-CD-1.iso | pv | nc -l -p 3000 -q 5

Y en la computadora del receptor / cliente, ejecute el siguiente comando para obtener el archivo.

$ nc 192.168.1.4 3000 | pv | tar -zxf -

Crear un servidor de chat de línea de comandos

También puede usar Netcat para crear un servidor de mensajería de línea de comandos simple al instante. Como en el ejemplo de uso anterior, nc debe instalarse en ambos sistemas utilizados para la sala de chat.

En un sistema, ejecute el siguiente comando para crear el servidor de chat que escucha en el puerto 5000 .

$ nc -l -vv -p 5000

En el otro sistema, ejecute el siguiente comando para iniciar una sesión de chat en una máquina donde se está ejecutando el servidor de mensajería.

$ nc 192.168.56.1 5000

Encuentre un servicio que se ejecute en el puerto

También puede usar Netcat para obtener banners de puerto. En este caso, le dirá qué servicio se está ejecutando detrás de un determinado puerto. Por ejemplo, para saber qué tipo de servicio se ejecuta detrás del puerto 22 en un servidor específico, ejecute el siguiente comando (reemplace 192.168.56.110 con la dirección IP del servidor de destino). La -nbandera significa deshabilitar DNS o búsquedas de servicio.

$ nc -v -n 192.168.56.110 80

Crear una corriente Sockets

Netcat también admite la creación de sockets de flujo de dominio UNIX. El siguiente comando creará y escuchará en un socket de flujo de dominio UNIX.

$ nc -lU / var / tmp / mysocket &

$ ss -lpn | grep "/ var / tmp /"

Crear una puerta trasera

También puede ejecutar Netcat como una puerta trasera. Sin embargo, esto requiere más trabajo. Si Netcat está instalado en un servidor de destino, puede usarlo para crear una puerta trasera y obtener un símbolo del sistema remoto.

Para actuar como puerta trasera, necesita que Netcat escuche en un puerto elegido (por ejemplo, el puerto 3001 ) en el servidor de destino y luego puede conectarse a este puerto desde su máquina de la siguiente manera.

Este es el comando destinado a ejecutarse en el servidor remoto donde la -dopción deshabilita la lectura de stdin y -eespecifica el comando que se ejecutará en el sistema de destino.

$ nc -L -p 3001 -d -e cmd.exe

Por último, pero no menos importante, Netcat se puede usar como proxy para diferentes servicios / protocolos, incluidos HTTP, SSH y muchos más. Para obtener más información, consulte su página de manual.

$ man nc

Fecha actualización el 2021-01-01. Fecha publicación el 2020-01-01. Categoría: linux Autor: Oscar olg Mapa del sitio Fuente: how2shout Version movil