Muchos programas pueden ayudar a transferir archivos entre varias computadoras, incluidos FTP, NFS, Samba y más. Sin embargo, la configuración incorrecta de esos servicios puede hacer que su servidor sea vulnerable a los ataques. Si esto le preocupa, puede usar Netcat para transferir archivos entre varios dispositivos de forma segura.
Netcat, también conocido como "navaja suiza TCP/IP", es una herramienta de red de línea de comandos que le permite transferir archivos a través de redes locales o Internet. Proporciona una forma más fácil de transferir datos sin necesidad de servicios adicionales.
En esta guía, le mostraremos cómo usar Netcat para transferir archivos en Linux.
Requisitos
- Un servidor Linux en Atlantic.Net Cloud Platform
- Una contraseña de root configurada en su servidor
A los efectos de este tutorial, utilizaremos la siguiente configuración:
- IP del host del remitente :69.87.221.67
- IP del host del receptor :45.58.46.205
Paso 1:crear el servidor en la nube de Atlantic.Net
Primero, inicie sesión en su servidor en la nube de Atlantic.Net. Cree un nuevo servidor, eligiendo Ubuntu, CentOS o Rocky Linux como sistema operativo con al menos 2 GB de RAM. Conéctese a su servidor en la nube a través de SSH e inicie sesión con las credenciales resaltadas en la parte superior de la página.
Una vez que haya iniciado sesión en su servidor, ejecute el siguiente comando para actualizar su sistema base con los últimos paquetes disponibles.
apt-get update -y
O
dnf update -y
Paso 2:instalar Netcat
Para distribuciones basadas en Ubuntu y Debian, instale Netcat usando el siguiente comando:
apt-get install netcat-openbsd pv -y
Para distribuciones basadas en CentOS y RHEL, instale Netcat usando el siguiente comando:
dnf install nmap-ncat pv -y
Paso 3:transfiera archivos entre dos máquinas Linux
Primero, cree un archivo de muestra.txt en el host del remitente.
echo "Transferring file using Netcat" > file.txt
A continuación, deberá ejecutar el comando nc en el host receptor desde donde desea recibir el archivo.
nc -l -p 8585 > file.txt
Este comando le indicará a nc que escuche las solicitudes entrantes en el puerto 8585 hasta que recibe una solicitud. Una vez recibida la solicitud, recibirá el archivo.txt archivo.
A continuación, vaya al host del remitente, ejecute el siguiente comando para enviar el archivo.txt archivo al host receptor:
nc -N 45.58.46.205 8585 < /root/file.txt
Paso 4:transfiera y comprima archivos entre dos máquinas Linux
En esta sección, le mostraremos cómo transferir y comprimir el archivo más grande usando Netcat.
En este ejemplo, transferiremos el ubuntu.iso archivo de una máquina a otra.
En la máquina del remitente desde donde desea transferir el ubuntu.iso archivo, ejecute el siguiente comando:
tar -zcf - ubuntu.iso | pv | nc -l -p 8585 -q 25
En el comando anterior, tar se usa para comprimir el archivo y el comando pv se usa para monitorear el progreso del archivo.
Luego, vaya a la máquina receptora y ejecute el siguiente comando para recibir el archivo ubuntu.iso:
nc 69.87.221.67 8585 | pv | tar -zxf -
Conclusión
¡Felicidades! Ha transferido con éxito archivos entre dos computadoras usando el comando Netcat. Ahora puede usar Netcat para transferir archivos a través de una red segura. Pruébelo en su servidor privado virtual de Atlantic.Net.