标签: netcat

探测 RDP 端口

我使用 ssh 隧道通过 RDP 进入我的家庭计算机(“家庭”)。

有时,在家庭中运行的隧道软件会崩溃并且 RDP 端口停止建立隧道。我尝试通过在家里安排一个脚本每 15 分钟运行一次来​​解决此问题,该脚本在我的路由器上运行“netstat -tln”,并在隧道 RDP 端口不再打开时重新启动隧道软件。

不幸的是,偶尔会发生崩溃,导致 RDP 端口保持打开状态并接受连接,但不传输任何流量。例如,根据 netstat,端口保持打开状态,如果我尝试远程登录到该端口,它会连接并显示一个空白屏幕。如果我尝试通过隧道进行 RDP,会话会连接,但会在“配置远程会话”上旋转。

底线:我希望我的“看门狗”脚本实际尝试连接到 RDP 端口以确定隧道是否仍然良好。如何探测端口以测试它是否是开放的 RDP 端口?

我认为理想的测试实际上是探测 RDP 端口,但我也愿意接受其他想法。

networking remote-desktop bash netcat ssh-tunnel

4
推荐指数
1
解决办法
6588
查看次数

将命令通过管道传输到 nc

我似乎搜索了许多非常相似的问题,但从未找到有用的东西。我正在尝试使用树莓派(第二代)与 Wifi OBDII 传感器进行通信。我可以使用以下命令

nc -C 192.168.0.10 35000
Run Code Online (Sandbox Code Playgroud)

192.168.0.10 是汽车传感器,35000 是端口。这并不重要,因为连接似乎没问题。无论如何,我可以打开一个 nc 实例,然后键入,例如“0145”(传感器代码),作为回报,我在 nc 会话的输出上得到该传感器的值(例如,我的引擎的 RPM) )。效果很好。我想做的是将命令从文本文件传输到 nc 会话中以进行绘图。因此,我的理想结果是将 RPM 值和相关时间的恒定流转储到文本文件中。我可以从那里工作。但是,我并不完全知道该怎么做。我已经设置了一个commands.txt,其中有数千行“0145”,我想读取该文件并将其逐行传递给nc(我可能可以通过睡眠来控制采样间隔),然后读取输出并将其存储到文本文件中。我知道这个问题与标准输入和标准输出以及管道有关,但无论出于何种原因,我一直无法完全理解它。我绝不是其中任何一个的大师。我还想编写整个过程的脚本。

现在,如果我跑

cat <(echo 0145) - | nc -C 192.168.0.10 35000
Run Code Online (Sandbox Code Playgroud)

这为我提供了我想要的终端输出,但仅适用于单个值。但是,一旦我尝试将其放入循环中,将 0145 放入脚本中的 $commands 中,并从 txt 文件中逐行获取 $commands ,它就停止工作。事实上,即使我将其保留为 0145 并且不使用变量,它也会在任何循环或 if 块内停止工作。

所以,长话短说,我想编写脚本将 txt 文件逐行发送到 nc 连接,然后我想将每个响应提取到另一个文件中。如果它是无脚本的,我可以打开该 nc 连接并每 1 秒发送 0145 并获取这些响应(仍然不知道如何将它们传递到文件),但这几乎没有效率。我觉得应该有一种更简单的方法来做到这一点。我有点菜鸟,但我想我可以在这里尝试一下。任何帮助是极大的赞赏

linux bash cat netcat stdin

4
推荐指数
2
解决办法
1万
查看次数

带有 nc 的双向 socat 功能

这个问题与https://superuser.com/questions/270698/how-is-it-called-when-listeningconnecting-two-sockets-and-exchanged-data-betw有某种关系

在测试设置中,我打开了三个终端窗口

Term1: "nc -l 55545"
Term2: "nc -l 55546"
Term3: "socat tcp:localhost:55545 tcp:localhost:55546"
Run Code Online (Sandbox Code Playgroud)

Term1 的输入现在出现在 Term2 中,Term2 的输入出现在 Term1 中。

这是所需的行为。如何仅使用 nc 来实现此行为?

当我跑进去

Term3: "nc localhost 55545 | nc localhost 55546"
Run Code Online (Sandbox Code Playgroud)

然后 Term1 的输入出现在 Term2 中,但 Term2 的输入出现在 Term3 中。我怎样才能使管道双向?如果可能,没有临时文件。

netcat socat

3
推荐指数
1
解决办法
9536
查看次数

如何通过netcat从互联网下载URL?

我可以用来netcat在两台计算机之间传输文件。

# Server
nc -l -p 8080 < file

# client
nc 192.168.1.101 8080 > file
Run Code Online (Sandbox Code Playgroud)

我可以使用netcat从 Internet 下载 URL 之类的wget吗?

netcat

3
推荐指数
1
解决办法
1万
查看次数

BusyBox下如何使用NC命令等待socket入站端的响应?

我在使用 BusyBox 1.1.3 附带的 Netcat 发出 HTTP 请求然后接收响应时遇到问题。NC 命令似乎在到达我发送的请求文件末尾时立即退出。-w 选项似乎是为这种情况设计的,但是查看源代码,-w 选项似乎不可能对接收行为产生任何影响。

BusyBox 上此版本 NC 的源代码在这里...

http://git.busybox.net/busybox/tree/networking/nc.c?id=5cbe2519d8776bc15e0bc4dc7aeb6adc53e50b81

我究竟做错了什么?有没有办法通过这个版本的 NC 将文件发送到服务器,然后等待接收响应?关于在脚本中执行此操作的其他可能方法的任何创意?

请注意,这是一个嵌入式系统,我无法升级 BusyBox 版本或上传新的​​可执行文件 - 我只能使用脚本文件和已经可用的 BusyBox 可执行文件。另请注意,系统上没有可用的 WGET。

谢谢!

-乔希

linux busybox netcat

3
推荐指数
2
解决办法
8881
查看次数

使用 netcat 侦听端口并在客户端连接时发送命令的输出

我有一个连接到 LAN 的 Raspberry Pi (Debian Linux),它可以从某些连接的设备读取数据并将其输出到 STDOUT。

假设该程序在“服务器”上运行,我想将脚本的输出提供/usr/bin/data给端口 1234。

我希望任何客户端通过连接到该端口来提取该脚本的输出,使用类似

nc Server 1234 > ServerData.txt

我希望服务器保持活动状态,为每个连接运行脚本,提供数据,然后关闭与客户端的连接。服务器需要保持活动状态并等待下一个连接。

在服务器上运行的 netcat 命令是什么?

networking linux tcp netcat

3
推荐指数
1
解决办法
1万
查看次数

列出 nc (netcat) 上的传入连接

我在办公室的一些计算机上设置了 nc。他们像这样连接到我们的服务器:

nc 192.168.1.2 3291 -e cmd

有谁知道如何列出传入的连接尝试而不是接受连接尝试?不是:

nc -l 192.168.1.2 3291

编辑:使用 tcpdump 解决了列表部分。问题的剩余部分:

如何在 nc 中仅接受来自特定主机的连接?即、192.168.1.6192.168.1.7、 和192.168.1.8都要求连接,而我们只想与 交谈192.168.1.7。有什么办法可以用 nc 做到这一点吗?

networking windows linux command-line netcat

2
推荐指数
1
解决办法
6888
查看次数

NetCat 命令危险吗?

我是服务器端开发人员,习惯调用命令nc来检查远程端口是否打开。

突然,安全人员禁止了该命令,一旦我使用该nc命令,我对 EC 实例的访问权限就会丢失。

他们说

使用telnet

我的问题是

  • nc命令危险吗?
  • 有安全漏洞吗?
  • 是否有任何功能可以以危险的方式使用?

security netcat

2
推荐指数
1
解决办法
4259
查看次数