📜  nc(netcat) 命令在 Linux 中的实际使用

📅  最后修改于: 2022-05-13 01:56:18.495000             🧑  作者: Mango

nc(netcat) 命令在 Linux 中的实际使用

Netcat是强大的网络工具、安全工具或网络监控工具之一。它的作用类似于网络上的 cat 命令。它甚至被认为是网络工具的瑞士军刀。
它通常用于以下原因:

  • 与 TCP、UDP 或 UNIX 域套接字相关的操作
  • 端口扫描
  • 端口监听
  • 端口重定向
  • 打开远程连接
  • 跨网络读/写数据
  • 网络调试
  • 网络守护进程测试
  • 简单的 TCP 代理
  • 用于 ssh 的 Socks 或 HTTP 代理命令

它的设计牢记它应该是一个灵活的“后端”工具,可以直接使用或由任何其他程序驱动。

安装 netcat(nc) 进程监控工具

要安装 Netcat 工具,请根据您的 Linux 发行版使用以下命令。

如果是 Debian/Ubuntu

$sudo apt-get install netcat

在 CentOS/RHEL 的情况下

$yum install nc 

对于 Fedora 22+ 和 RHEL 8

$dnf install nc

使用 netcat 安全工具

1.要开始监听一个端口,首先打开 2 个终端窗口。

用于收听的终端 1

$nc -l -p 1234

终端 2 发送请求

$nc 127.0.0.1 1234

注意:这里的端口号是 1234,默认主机是 localhost。

使用 netcat 命令在两个终端之间发送消息

它不会显示任何内容,但会从终端 1 开始侦听 localhost 的端口 1234。在终端 2 中输入的任何内容也将反映在终端 1 中,这确认连接已成功建立。

2.传输数据。打开 2 个终端窗口。

用于收听的终端 1

$nc -l -p 1234 >output.txt

用于发送请求的终端 2

$echo "GeeksforGeeks" >input.txt
$nc 127.0.0.1 1234 

注意:这里的端口号是 1234,默认主机是 localhost。它将 input.txt 文件的数据从终端 2 发送到终端 1 的 output.txt 文件。

使用 Netcat-Command-in-Linux-1 传输数据

使用 Linux-2 中的 Netcat 命令传输数据

3.执行端口扫描。在终端上输入以下命令。

扫描单个端口

$netcat -z -v 127.0.0.1 1234

扫描多个端口

$nc -z -v 127.0.0.1 1234 1235

扫描一系列端口

$nc -z -v 127.0.0.1 1233-1240

注意:这里的端口号是 1234、1235、1233 和 1240,您可以根据需要更改它们。它将显示带有状态(打开或未打开)的端口号。

端口扫描-使用-Netcat-Command-in-Linux

4.发送 HTTP 请求

注意:这里的网站是 www.geeksfrogeeks.org,你可以选择任何一个。它将向 www.geeksfrogeeks.org 发送 HTTP 请求。

在 Linux 中使用 Netcat 命令发送 HTTP 请求

5.延迟发送线路的间隔。打开2终端如下图:

用于收听的终端 1

$nc -l -p 1234

终端 2 发送请求

$nc -i 5 127.0.0.1 1234

注意:这里的端口号是 1234,默认主机是 localhost。所用时间为 5 秒。每个将在 5 秒后发送。

在 Linux 中延迟使用 netcat 命令发送的行的间隔