服务器大本营

 找回密码
 我要入营

微信扫码 , 快速开始

QQ登录

只需一步,快速开始

查看: 2279|回复: 0

Linux系统如何查看某个端口是否开启?nc、nmap、telnet命令用法

[复制链接]
回帖奖励 1 金币 回复本帖可获得 1 金币奖励! 每人限 1 次

3359

敬重

427

主题

207

精华

管理员

积分
6157

启航之章进阶之印里程之碑突破之证飞跃之星蜕变之勋卓越之路龙年行大运

QQ
发表于 2023-5-18 11:55:46 | 显示全部楼层 |阅读模式

我要入营,结交更多好友,开启更多功能,轻松玩转服务器大本营!

您需要 登录 才可以下载或查看,没有账号?我要入营

x
这是一个很重要的话题,不仅对 Linux 管理员而言,对于我们大家而言也非常有帮助。我的意思是说对于工作在 IT 基础设施行业的用户来说,了解这个话题也是非常有用的。他们需要在执行下一步操作前,检查 Linux 服务器上某个端口是否开启。

假如这个端口没有被开启,则他们会直接找 Linux 管理员去开启它。如果这个端口已经开启了,则我们需要和应用团队来商量下一步要做的事。

在本篇文章中,我们将向你展示如何检查某个端口是否开启的 3 种方法。

这个目标可以使用下面的 Linux 命令来达成:

●nc:netcat 是一个简单的 Unix 工具,它使用 TCP 或 UDP 协议去读写网络连接间的数据。
●nmap:(“Network Mapper”)是一个用于网络探索和安全审计的开源工具,被设计用来快速地扫描大规模网络。
●telnet:被用来交互地通过 TELNET 协议与另一台主机通信。

如何使用 nc(netcat)命令来查看远程 Linux 系统中某个端口是否开启?

nc 即 netcat。netcat 是一个简单的 Unix 工具,它使用 TCP 或 UDP 协议去读写网络连接间的数据。

它被设计成为一个可信赖的后端工具,可被直接使用或者简单地被其他程序或脚本调用。

与此同时,它也是一个富含功能的网络调试和探索工具,因为它可以创建你所需的几乎所有类型的连接,并且还拥有几个内置的有趣功能。

netcat 有三类功能模式,它们分别为连接模式、监听模式和隧道模式。

nc(netcat)命令的一般语法:

  1. $ nc [-options] [HostName or IP] [PortNumber]
复制代码


在下面的例子中,我们将检查远程 Linux 系统中的 22 端口是否开启。

假如端口是开启的,你将获得类似下面的输出。

  1. # nc -zvw3 192.168.1.8 22
  2. Connection to 192.168.1.8 22 port [tcp/ssh] succeeded!
复制代码


命令详解
●nc:即执行的命令主体;
●z:零 I/O 模式(被用来扫描);
●v:显式地输出;
●w3:设置超时时间为 3 秒;
●192.168.1.8:目标系统的 IP 地址;
●22:需要验证的端口。

当检测到端口没有开启,你将获得如下输出:

  1. # nc -zvw3 192.168.1.95 22
  2. nc: connect to 192.168.1.95 port 22 (tcp) failed: Connection refused
复制代码


如何使用 nmap 命令来查看远程 Linux 系统中某个端口是否开启?

nmap(“Network Mapper”)是一个用于网络探索和安全审计的开源工具,被设计用来快速地扫描大规模网络,尽管对于单个主机它也同样能够正常工作。

nmap 以一种新颖的方式,使用裸 IP 包来决定网络中的主机是否可达,这些主机正提供什么服务(应用名和版本号),它们运行的操作系统(系统的版本),它们正在使用的是什么包过滤软件或者防火墙,以及其他额外的特性。

尽管 nmap 通常被用于安全审计,许多系统和网络管理员发现在一些日常任务(例如罗列网络资产、管理服务升级的计划、监视主机或者服务是否正常运行)中,它也同样十分有用。

nmap 的一般语法:

  1. $ nmap [-options] [HostName or IP] [-p] [PortNumber]
复制代码


假如端口是开启的,你将获得如下的输出:

  1. 1.# nmap 192.168.1.8 -p 22
  2. 2.
  3. 3.Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-16 03:37 IST Nmap scan report for 192.168.1.8 Host is up (0.00031s latency).
  4. 4.
  5. 5.PORT STATE SERVICE
  6. 6.
  7. 7.22/tcp open ssh
  8. 8.
  9. 9.Nmap done: 1 IP address (1 host up) scanned in 13.06 seconds
复制代码


假如端口没有开启,你将得到类似下面的结果:

  1. 1.# nmap 192.168.1.8 -p 80
  2. 2.Starting Nmap 7.70 ( https://nmap.org ) at 2019-03-16 04:30 IST
  3. 3.Nmap scan report for 192.168.1.8
  4. 4.Host is up (0.00036s latency).
  5. 5.
  6. 6.PORT STATE SERVICE
  7. 7.80/tcp closed http
  8. 8.
  9. 9.Nmap done: 1 IP address (1 host up) scanned in 13.07 seconds
复制代码


如何使用 telnet 命令来查看远程 Linux 系统中某个端口是否开启?

telnet 命令被用来交互地通过 TELNET 协议与另一台主机通信。

telnet 命令的一般语法:

  1. $ telnet [HostName or IP] [PortNumber]
复制代码


假如探测成功,你将看到类似下面的输出:

  1. 1.$ telnet 192.168.1.9 22
  2. 2.Trying 192.168.1.9...
  3. 3.Connected to 192.168.1.9.
  4. 4.Escape character is '^]'.
  5. 5.SSH-2.0-OpenSSH_5.3
  6. 6.^]
  7. 7.Connection closed by foreign host.
复制代码


假如探测失败,你将看到类似下面的输出:

  1. 1.$ telnet 192.168.1.9 80
  2. 2.Trying 192.168.1.9...
  3. 3.telnet: Unable to connect to remote host: Connection refused
复制代码


以上是飞飞的分享,如果你有其他方法可以达到相同的目的,可以在下面的评论区留言~

感谢您的阅读,服务器大本营助您成为更专业的服务器管理员!
一入IDC深似海,从此你我是良人!
您需要登录后才可以回帖 登录 | 我要入营

本版积分规则

Loading...

QQ|Archiver|手机版|小黑屋|服务器大本营 ( 赣ICP备2021009089号 )

GMT+8, 2024-6-20 16:59 , Processed in 0.082778 second(s), 26 queries .

Powered by 服务器大本营

© 2021-2023 联系飞飞

快速回复 返回顶部 返回列表