linux nc(Netcat)的详细使用教程

7 min read

Netcat,也被称为nc,是一个功能强大的网络工具,它可以用于创建 TCP 或 UDP 连接,发送或接收数据。

在 Linux 上,Netcat 通常预装在大多数发行版中,你可以在终端中使用 nc 命令来调用它。以下是一些常用的 nc 命令示例和用法:

  1. 创建一个 TCP 连接:

    nc -v <host> <port>
    

    替换 <host><port> 为你要连接的主机和端口。使用 -v 参数可以显示连接过程中的详细输出信息。

  2. 在终端之间发送数据:

    • 发送数据:

      nc -v <host> <port>
      <data>
      

      在连接建立后,你可以直接输入数据,并按下 Enter 键发送。数据将被发送到另一端。

    • 接收数据:

      nc -l -v <port>
      

      使用 -l 参数创建一个监听端口,并在连接建立后接收数据。

  3. 文件传输:

    nc -w3 <host> <port> < file.txt
    

    将文件 file.txt 的内容通过 TCP 连接发送到 <host>:<port>

  4. 监听端口并执行命令:

    nc -l -v -p <port> -e <command>
    

    使用 -e 参数可以在连接建立后执行指定的命令。

  5. 扫描主机端口:

    nc -zv <host> <start-port>-<end-port>
    

    替换 <start-port><end-port> 为要扫描的端口范围。使用 -z 参数可以禁止发送任何数据,仅进行连接测试。

这些只是 nc 命令的一些简单示例和常见用法。你可以使用 nc --help 命令查看 nc 支持的所有选项和参数。同时,还可以查阅 nc 的手册页 (man nc) 以获取更详细的信息和使用方法。