nc
( netcat ) 命令可用于通过网络传输任意数据。
它代表了 Linux 管理员无需另外数据传输服务(如 FTP、HTTP、SCP 等)即可快速传输数据的方法。
此配置将向我们展示如何在网络主机之间传输数据的示例。
我们会将数据“myfile.txt”文件从本地主机传输到 IP 地址为“10.1.1.2”的目标主机。
故障排除
问题
Ncat: Connection refused.
检查我们是否在源主机上指定了正确的端口号。
此外,请确保该端口可访问且未被防火墙阻止:
$ nmap -p 7555 10.1.1.2 Starting Nmap 6.45 ( http://nmap.org ) at 2014-03-28 09:25 AEDT Nmap scan report for thebeast (10.1.1.2) Host is up (0.00097s latency). PORT STATE SERVICE 7555/tcp open unknown
最后,确保 nc
正在侦听目标主机:
# netstat -ant | grep 7555 tcp 0 0 0.0.0.0:7555 0.0.0.0:* LISTEN
源主机
要接收 myfile.txt
文件,我们需要使用 IP 地址(例如 10.1.1.2 )或者目标主机的主机名和给定端口发起数据传输请求:
$ nc 10.1.1.2 7555 < myfile.txt
目标主机
nc
命令首先需要在我们需要传输数据的网络主机上启动。
我们将指示 nc
侦听用户定义的端口号上的传入请求,一旦客户端请求来接收所需的数据。
选择我们选择的端口号,以确保它不会被防火墙阻止并且可以从源主机访问。
$ nc -l -p 7555 > myfile.txt
上面的命令指示 nc
继续监听 7555 端口,直到它收到请求。
获得请求后,它将收到“myfile.txt”文件的传输。
日期:2020-07-07 20:54:45 来源:oir作者:oir