使用netcat [nc]命令对Linux和Unix进行端口扫描

简介:

我如何在自己的服务器上找出哪些端口是开放的?如何使用 nc 命令进行端口扫描来替换Linux 或类 Unix 中的 nmap 命令?

nmap (“Network Mapper”)是一个用于网络探测和安全审核的开源工具。如果 nmap 没有安装或者你不希望使用 nmap,那你可以用 netcat/nc 命令进行端口扫描。它对于查看目标计算机上哪些端口是开放的或者运行着服务是非常有用的。你也可以使用 nmap 命令进行端口扫描。

如何使用 nc 来扫描 Linux,UNIX 和 Windows 服务器的端口呢?

如果未安装 nmap,试试 nc/netcat 命令,如下所示。-z 参数用来告诉 nc 报告开放的端口,而不是启动连接。在 nc 命令中使用 -z 参数时,你需要在主机名/ip 后面限定端口的范围和加速其运行:

 
 
  1. ### 语法 ### 
  2. ### nc -z -v {host-name-here} {port-range-here} 
  3. nc -z -v host-name-here ssh 
  4. nc -z -v host-name-here 22 
  5. nc -w 1 -z -v server-name-here port-Number-her 
  6. ### 扫描 1 to 1023 端口 ### 
  7. nc -zv vip-1.vsnl.nixcraft.in 1-1023 

输出示例:

 
 
  1. Connection to localhost 25 port [tcp/smtp] succeeded! 
  2. Connection to vip-1.vsnl.nixcraft.in 25 port [tcp/smtp] succeeded! 
  3. Connection to vip-1.vsnl.nixcraft.in 80 port [tcp/http] succeeded! 
  4. Connection to vip-1.vsnl.nixcraft.in 143 port [tcp/imap] succeeded! 
  5. Connection to vip-1.vsnl.nixcraft.in 199 port [tcp/smux] succeeded! 
  6. Connection to vip-1.vsnl.nixcraft.in 783 port [tcp/*] succeeded! 
  7. Connection to vip-1.vsnl.nixcraft.in 904 port [tcp/vmware-authd] succeeded! 
  8. Connection to vip-1.vsnl.nixcraft.in 993 port [tcp/imaps] succeeded! 

你也可以扫描单个端口:

 
 
  1. nc -zv v.txvip1 443 
  2. nc -zv v.txvip1 80 
  3. nc -zv v.txvip1 22 
  4. nc -zv v.txvip1 21 
  5. nc -zv v.txvip1 smtp 
  6. nc -zvn v.txvip1 ftp 
  7. ### 使用1秒的超时值来更快的扫描 ### 
  8. netcat -v -z -n -w 1 v.txvip1 1-1023 

输出示例:

图01:Linux/Unix:使用 Netcat 来测试 TCP 和 UDP 与服务器建立连接

◆-z:端口扫描模式即零 I/O 模式。

◆-v:显示详细信息 [使用 -vv 来输出更详细的信息]。

◆-n:使用纯数字 IP 地址,即不用 DNS 来解析 IP 地址。

◆-w 1:设置超时值设置为1。

更多例子:

 
 
  1. $ netcat -z -vv www.cyberciti.biz http 
  2. www.cyberciti.biz [75.126.153.206] 80 (http) open 
  3.  sent 0, rcvd 0 
  4. $ netcat -z -vv google.com https 
  5. DNS fwd/rev mismatch: google.com != maa03s16-in-f2.1e100.net 
  6. DNS fwd/rev mismatch: google.com != maa03s16-in-f6.1e100.net 
  7. DNS fwd/rev mismatch: google.com != maa03s16-in-f5.1e100.net 
  8. DNS fwd/rev mismatch: google.com != maa03s16-in-f3.1e100.net 
  9. DNS fwd/rev mismatch: google.com != maa03s16-in-f8.1e100.net 
  10. DNS fwd/rev mismatch: google.com != maa03s16-in-f0.1e100.net 
  11. DNS fwd/rev mismatch: google.com != maa03s16-in-f7.1e100.net 
  12. DNS fwd/rev mismatch: google.com != maa03s16-in-f4.1e100.net 
  13. google.com [74.125.236.162] 443 (https) open 
  14.  sent 0, rcvd 0 
  15. $ netcat -v -z -n -w 1 192.168.1.254 1-1023 
  16. (UNKNOWN) [192.168.1.254] 989 (ftps-data) open 
  17. (UNKNOWN) [192.168.1.254] 443 (https) open 
  18. (UNKNOWN) [192.168.1.254] 53 (domain) open 




作者:Vivek Gite
来源:51CTO
目录
相关文章
|
4天前
|
安全 网络协议 Linux
linux必学的60个命令
Linux是一个功能强大的操作系统,提供了许多常用的命令行工具,用于管理文件、目录、进程、网络和系统配置等。以下是Linux必学的60个命令的概览,但请注意,这里可能无法列出所有命令的完整语法和选项,仅作为参考
197 2
|
22小时前
|
NoSQL Linux Shell
Linux MongoDB重启命令
【5月更文挑战第8天】
|
2天前
|
存储 Linux Shell
YUM管理器的命令列表-Linux
YUM管理器的命令列表-Linux
8 0
|
4天前
|
Linux 程序员 计算机视觉
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
【linux 学习】在Linux中经常用到的cmake、make、make install等命令解析
16 0
|
4天前
|
Linux
Linux的find命令使用
【5月更文挑战第11天】Linux的find命令使用
15 3
|
4天前
|
安全 Linux Shell
|
4天前
|
监控 Linux 数据处理
|
4天前
|
编解码 Ubuntu Linux
|
4天前
|
缓存 网络协议 Unix
Linux(UNIX)五种网络I/O模型与IO多路复用
Linux(UNIX)五种网络I/O模型与IO多路复用
116 0