多起村干部被灭门案,需要反思了!

高铁打人者身份被曝光,人脉资源碾压普通人!却遇到了硬茬

OPPO芯片业务解散不一定是坏事

明确了!任期届满后,他不再寻求连任!

去泰国看了一场“成人秀”,画面尴尬到让人窒息.....

生成图片,分享到微信朋友圈

自由微信安卓APP发布,立即下载! | 提交文章网址
查看原文

在 Linux 中使用 netcat 命令扫描端口

聆听世界的鱼 Linux公社 2023-01-15

点击上方蓝字 ● 关注Linux公社     

无论您是要在备用端口上使用 SSH 还是要将Web 应用程序部署到特定端口,第一步始终是检查该端口是否正在使用。
netcat 实用程序是排除网络故障的首选工具之一,也可用于扫描端口。
例如,如果我想检查我的本地 VM 上的端口号 22 是否打开,我将使用 netcat 命令,如下所示:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ nc -zvn 192.168.174.170 22
如您所见,端口号 22 已打开供连接使用。那很简单。
但是等等,您可以使用 netcat 命令做更多的事情。

使用 netcat 命令扫描端口

您需要先安装 netcat 命令,因为它没有预装在许多发行版中。
对于基于 Debian/Ubuntu 的发行版:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ sudo apt install netcat
 对于 Fedora 和 RHEL:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ sudo dnf install netcat
现在,让我们开始扫描多个端口。

使用netcat命令扫描多个端口

要使用 netcat 一次扫描多个端口,您需要遵循给定的命令语法:
nc -zvn <target> port1 port2 port3
这里,
  • -z用于指示 netcat 在不建立连接的情况下扫描端口。
  • -v产生更详细的输出。
  • -n停止netcat进行域名解析。

使用netcat命令扫描特定范围内的端口

确实,您可以使用前面的方法扫描多个端口,但是如果您想扫描超过 50 个或 100 个端口怎么办?您可以定义范围。
例如,如果我想扫描 1 到 100 之间的端口,这将是我的命令:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ nc -vz -w3 bing.com 1-100
你不能指望让他们给你开放端口。但是你可以将它用于你的服务器并且可能会找到开放端口
不可用端口列表似乎很长,对吗?在这种情况下,您可以使用 grep 命令仅获取打开的端口:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ netcat -w1 -znv 192.168.174.170 1-100 2>&1 | grep succeededConnection to 192.168.174.170 22 port [tcp/*] succeeded!Connection to 192.168.174.170 23 port [tcp/*] succeeded!Connection to 192.168.174.170 25 port [tcp/*] succeeded!
这里,
  • -w1将强制 netcat 命令为每个端口等待 1 秒。
  • 2&1重定向标准错误。

总结

这是使用 netcat 命令扫描开放端口的快速指南。既然你已经找到了打开的端口,也许你想知道如何关闭这些端口。
我希望本指南可以解决您之前的任何疑问,如果还有,请在评论中告诉我。

感谢 Linux迷 www.linuxmi.com 的精彩分享。
OK,这就是本文的内容。如果还有什么疑问,请在下面的评论区告诉我们。
需要 Linux 精美艺术壁纸的朋友请加小编微信linuxgs(口令壁纸)。
来自:Linux迷
链接:https://www.linuxmi.com/gcc-flags.html
关注我们

长按或扫描下面二维码关注 Linux公社



关注 Linux公社,添加“ 星标 

每天 获取 技术干货,让我们一起成长

合作联系:root@linuxidc.net

文章有问题?点此查看未经处理的缓存