我想了解为什么 netcat 监听器无法在我的 Kali Linux VM 中工作。据我了解,我打开了一个终端并打开了端口。
数控-l 155
然后,我在我的 VM 中打开另一个终端并使用以下命令连接到该端口号。
nc 127.0.0.1 155(环回IP地址和相同的端口号)
它没有成功,因为我只是这个领域的新手,我希望在这个问题上得到一些帮助。但是,我找到了一种执行此命令的新方法,但我不理解为什么这种新方法起作用背后的逻辑,而不是我在类里面学到的原始方法。提前谢谢你的帮助!
最佳答案
首先,要从新手身份提升自己,您必须了解错误的含义。 “它不成功”是对任何实际调试结果的不充分描述。可能发生的事情是解决问题的重要线索 - 您应该包含该信息。此外,您确实必须完全正确地在问题中获取命令。不要说你做了一件事,然后发布另一件事的截图。我不确定 -e 应该做什么,但我没有在我的 osx 实现或在线手册页中找到它的任何记录。
netcat 的不同构建或实现可能不同,但从我在 osx 机器上的 netcat 看到的情况来看,-p
不是指定的正确方式目的端口。
$ nc localhost -p 1055
nc: missing hostname and port
usage: nc [-46AacCDdEFhklMnOortUuvz] [-K tc] [-b boundif] [-i interval] [-p source_port] [--apple-delegate-pid pid] [--apple-delegate-uuid uuid]
[-s source_ip_address] [-w timeout] [-X proxy_version]
[-x proxy_address[:port]] [hostname] [port[s]]
-p
指定源端口。您通常不需要指定它。此外,您不能在同一个端口的同一个盒子上拥有套接字的源和目标。通常不需要指定源端口。
最后,1024以下的端口只能分配为root。与大多数 Linux 专业人士一样,除非万不得已,否则我不会以 root 身份运行任何东西,因此我将此演示更改为 1055。一个 nc 每个在终端窗口中,在一个打印出另一侧的消息。观察:
$ nc -l 1055
hi world
hi yourself, world!
$ nc localhost 1055
hi world
hi yourself, world!
关于Linux 网络监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43018688/