1.2 KiB
Purpose: You may find that you need to transfer a file, such as a public SSH key, or some other kind of file between two devices. In this scenario, we assume both devices have the netcat
command available to them. By putting a network listener on the device recieving the file, then sending the file to that device's IP and port, you can successfully transfer data between computers without needing to set up SSH, FTP, or anything else to establish initial trust between the devices. Original Reference Material.
!!! warning The data being transferred will not be encrypted. If you are transferring relatively-safe files such as public SSH keys, etc, this should be fine.
Destination Computer
Run the following command on the computer that will be recieving the file.
netcat -l <random-port> > /tmp/OUTPUT-AS-FILE.txt
Source Computer
Run the following command on the computer that will be sending the file to the destination computer.
cat INPUT-DATA.txt | netcat <IP-of-Destination-Computer> <Port-of-Destination-Computer> -q 0
!!! info
The -q 0
command argument causes the netcat connection to close itself automatically when the transfer is complete.