标签: netcat

使用 netcat 作为代理记录流量

我想使用 netcat 作为代理来记录 http 请求和对文件的响应,然后跟踪这些以检查流量。想想wireshark。

尝试了以下其中“fifo”是命名管道,“in”和“out”是文件,端口 8080 上的 netcat 代理,端口 8081 上的服务器。

虽然是真的;做猫fifo | nc -l -p 8080 | tee -a in | nc 本地主机 8081 | tee -a out 1>fifo; 完毕

问题:

  • Netcat 在第一次请求后停止响应(忽略循环?)。

  • localhost [127.0.0.1] 8081 (tproxy) : Connection refused如果服务器在 8081 上不可用,Netcat 将失败并显示 msg 。 问:是否可以在发出请求时“延迟”连接到 8081?即我不想让 8081 在 netcat 启动时运行。

linux bash netcat tee named-pipe

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

多个 unix 管道不工作

第一个管道工作正常(打印“c”):

echo "a" | sed 's/a/b/' | sed 's/b/c/'
Run Code Online (Sandbox Code Playgroud)

这个不符合我的预期(当我将“a”输入到我的 fifo 中时没有打印任何内容):

mkfifo fifo;
cat fifo | sed 's/a/b/' | sed 's/b/c/' 
Run Code Online (Sandbox Code Playgroud)

但是,如果我从后一个管道中删除第二个“sed”命令,则会打印“b”。我认为我对管道和重定向的理解太简单了。有人可以向我解释如何解决第二种情况,以便我可以对 fifo 的内容运行两个连续的命令吗?

(请注意,这不是特定于 fifo 的问题,netcat 也会出现相同的行为。我发布了一个关于 netcat的类似问题,但没有得到答案)

unix netcat pipe fifo

7
推荐指数
1
解决办法
801
查看次数

如何netcat我目录中的所有文件?

我有一个文件目录,我想将其 netcat 到另一台机器。

一方面,我使用

nc <ip> <port> < sample.fls
Run Code Online (Sandbox Code Playgroud)

但是如果我有一个目录

sample1.fls
sample2.fls
sample3.fls
sample4.fls
sample5.fls
sample6.fls
Run Code Online (Sandbox Code Playgroud)

如何使用一个命令对所有这些文件进行网络跟踪?

linux command-line netcat

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

与命令“nc [server_name] [port]”等效的 Windows 是什么?

在 linux 上,可以通过键入连接到服务器 nc pwnable.kr 9000 在终端上。

在 Windows 上,这在 Powershell 或 cmd 中都不起作用,而且在使用 Telnet 时,Putty 最初看起来像是已连接,然后每当我输入某些内容时它就会退出,这不是 Linux 上的行为。那么在 Windows 上访问此服务器并向其发送命令的正确方法是什么?

netcat internet-connection

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

如何在不设置 SO_REUSEPORT 的情况下使 nc 监听端口

我想让一个nc命令监听 TCP 端口,所以我这样做了:

nc -lv 8888
Run Code Online (Sandbox Code Playgroud)

然后在另一个控制台中,我检查尝试侦听同一端口的另一个程序是否会收到某种Address already in use类型的错误,因此我再次发出相同的命令:

nc -lv 8888
Run Code Online (Sandbox Code Playgroud)

令我惊讶的是第二个命令也成功了。研究两个程序如何在同一个 TCP 端口上侦听,我发现如果使用选项打开侦听套接字SO_REUSEPORT,这是可能的,所以我 nc正在使用它。

如何禁止nc其他程序使用其同一端口?我希望它侦听端口 8888 并确保这是唯一侦听该端口的程序。

到目前为止,我已经能够通过这样的介绍来完成我想做的socat事情nc

socat TCP-LISTEN:8888,fork TCP:localhost:4444
nc -lv 4444
Run Code Online (Sandbox Code Playgroud)

因为socat不允许任何其他程序侦听同一端口。

但仅用 就可以实现这一点吗nc

port tcpip netcat socat

6
推荐指数
1
解决办法
8180
查看次数

Ubuntu 与 RedHat 上 nc (netcat) 选项的差异

nc -q -1 local host ${PORT} ${CMD}
Run Code Online (Sandbox Code Playgroud)

在 Ubuntu 中,nc可以如上使用,带-q选项。请参阅联机帮助页

  • -q在 stdin 上的 EOF 之后,等待指定的秒数,然后退出。如果秒为负,则永远等待。

但是,此选项在 Redhat 5 中不可用。请参阅联机帮助页。我如何实现nc -q在 Redhat 5 中的等价物?

netcat ubuntu redhat-enterprise-linux

5
推荐指数
1
解决办法
4182
查看次数

通过 SSH 连接的 DNS 隧道失去连接

在 Super User question UDP traffic through SSH tunnel 中,它描述了如何通过 SSH隧道建立 DNS 隧道:

首先,在客户端,执行以下操作:

ssh -N -L 6667:localhost:6667 user@server
Run Code Online (Sandbox Code Playgroud)

然后,在服务器端执行以下操作:

mkfifo /tmp/fifo
nc -k -l 6667 < /tmp/fifo | nc -u ip_of_dns_server 53 > /tmp/fifo
Run Code Online (Sandbox Code Playgroud)

最后,回到客户端执行以下操作:

mkfifo /tmp/fifo
nc -k -l -u 53 < /tmp/fifo | nc 127.0.0.1 6667 > /tmp/fifo
Run Code Online (Sandbox Code Playgroud)

之后,我可以按预期进行 DNS 查询,但仅限于单个请求

client# host m6.fr 127.0.0.1
Run Code Online (Sandbox Code Playgroud)

如何让连接保持活动状态以接收更多请求?

linux dns netcat ssh-tunnel

5
推荐指数
1
解决办法
926
查看次数

netcat over UDP 的问题

在对此处描述的问题进行故障排除时,我尝试了一些非常基本的方法:我尝试通过 UDP 设置一个非常基本的 netcat 连接,但我发现它没有按预期工作。

与下面的 TCP 插图一样,我希望 UDP 案例在窗口 2 中输入时在窗口 1 上回显相同的输出;相反,在 UDP 情况下,我在窗口 1 中没有输出。

我在笔记本电脑上运行 Debian Jessie,并且使用以下捕获过滤器运行 Wireshark:

udp and not (port 123 or port 5353 or port 1900)
Run Code Online (Sandbox Code Playgroud)

在一个终端窗口中,我通过运行以下命令开始了 TCP 测试:

$ nc -l 6900
Run Code Online (Sandbox Code Playgroud)

在第二个终端窗口中,我运行了以下命令:

$ nc localhost 6900
Run Code Online (Sandbox Code Playgroud)

在窗口 2 中,我键入“one”并按 Enter,然后键入“two”并按 Enter,最后按 Ctrl+D 退出。

在“one”上按 Enter 后,我看到“one”在窗口 1 中回显。在“two”上按 Enter 后,我看到“two”在窗口 1 中回显。当我按下 Ctrl+D 时,两个 netcat 实例都退出并返回到提示。

这表明我可以毫无问题地建立 TCP 连接。接下来,我尝试了UDP。

窗口 1:

$ nc -l -u 6900
Run Code Online (Sandbox Code Playgroud)

窗口 2:

$ …
Run Code Online (Sandbox Code Playgroud)

networking udp netcat debian-jessie

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

使用 rsync 和 nc 作为传输层

默认情况下,rsync 使用 ssh 作为传输层。不幸的是,对于快速的本地网络,ssh 非常慢。是否可以将 rsync 与 netcat / nc 一起使用?

我做了一些实验,但它对我不起作用。我想消除 ssh,因为它是瓶颈。

当然,我想在 Linux 上使用它。

ssh rsync netcat

5
推荐指数
1
解决办法
4777
查看次数

保存通过 Netcat 接收的实时视频

我正在使用以下命令来流式传输我通过 Netcat 收到的视频。

nc -l -p 5001 | mplayer -fps 31 -cache 1024 -
Run Code Online (Sandbox Code Playgroud)

(在 Windows CMD 上)

此命令打开 MPlayer 并播放实时流。

你能告诉我如何在直播时保存这个视频的副本吗?

谢谢你。

streaming mplayer netcat

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