当前位置: 首页 > 科技观察

查看远程Linux系统中端口是否打开的3种方法

时间:2023-03-16 18:43:25 科技观察

这是一个重要的话题,不仅对于Linux管理员,而且对于我们所有人。我的意思是,对于从事IT基础设施行业的用户来说,了解这个话题也非常有用。在继续下一步之前,他们需要检查Linux服务器上的端口是否打开。如果端口没有打开,他们会直接找Linux管理员打开。如果这个端口已经打开了,我们需要和应用团队商量下一步怎么办。在本文中,我们将向您展示3种检查端口是否打开的方法。这个目标可以使用以下Linux命令来实现:nc:netcat是一个简单的Unix工具,它使用TCP或UDP协议在网络连接之间读写数据。nmap:(“NetworkMapper”)是一种用于网络探索和安全审计的开源工具,旨在快速扫描大型网络。telnet:交互地用于通过TELNET协议与另一台主机通信。如何使用nc(netcat)命令查看远程Linux系统某个端口是否打开?nc代表网猫。netcat是一个简单的Unix工具,它使用TCP或UDP协议在网络连接之间读写数据。它被设计成一个可靠的后端工具,可以直接使用或简单地被其他程序或脚本调用。同时,它也是一个功能丰富的网络调试和探索工具,因为它几乎可以创建你需要的任何类型的连接,并且还内置了几个有趣的功能。Netcat具有三种功能模式,分别是连接模式、监听模式和隧道模式。nc(netcat)命令的一般语法:$nc[-options][HostNameorIP][PortNumber]在下面的例子中,我们将检查远程Linux系统的端口22是否打开。如果端口已启用,您将获得类似于以下内容的输出。#nc-zvw3192.168.1.822连接到192.168.1.822端口[tcp/ssh]成功!命令详解:nc:执行命令的主体;z:零I/O模式(用于扫描);v:显式输出;w3:设置超时时间为3秒;192.168.1.8:目标系统的IP地址;22:需要校验的端口。当检测到端口未打开时,会得到如下输出:#nc-zvw3192.168.1.9522nc:connectto192.168.1.95port22(tcp)failed:Connectionrefusedopen?nmap(“NetworkMapper”)是一种用于网络探索和安全审计的开源工具,旨在快速扫描大型网络,尽管它也适用于单个主机。nmap以一种新颖的方式使用原始IP数据包来确定网络上的主机是否可达,这些主机正在提供什么服务(应用程序名称和版本号),它们正在运行什么操作系统(系统版本),什么是过滤软件或防火墙,以及其他附加功能。虽然nmap通常用于安全审计,但许多系统和网络管理员发现它对日常任务很有用,例如列出网络资产、管理服务升级计划以及监控主机或服务是否正常运行。nmap的一般语法:$nmap[-options][HostNameorIP][-p][PortNumber]如果端口打开,您将得到以下输出:#nmap192.168.1.8-p22StartingNmap7.70(https://nmap.org)at2019-03-1603:37ISTNmap扫描报告192.168.1.8Hostisup(0.00031slatency).PORTSTATESERVICE22/tcpopensshNmapdone:1IPaddress(1hostup)在13.06秒内扫描如果端口未打开,您将得到类似于以下的结果:#nmap192.168.1.8-p80StartingNmap7.70(https://nmap.org)at2019-03-1604:30ISTNmap192.168的扫描报告。1.8Hostisup(0.00036slatency).PORTSTATESERVICE80/tcpclosedhttpNmapdone:13.07secondsscanned:1IPaddress(1hostup)如何使用telnet命令检查远程Linux系统中的端口是否打开?telnet命令用于通过TELNET协议与另一台主机交互通信。telnet命令的一般语法:$telnet[HostNameorIP][PortNumber]如果检测成功,您将看到类似如下的输出:$telnet192.168.1.922Trying192.168.1.9...Connectedto192.168。1.9.Escape字符是'^]'.SSH-2.0-OpenSSH_5.3^]Connectionclosedbyforeignhost.如果探测失败,你会看到类似下面的输出:$telnet192.168.1.980Trying192.168.1.9...telnet:Unabletoconnecttoremotehost:Connectionrefused目前我们只找到以上3种方法来检查是否远程Linux系统中的端口已打开。如果您发现其他方法可以达到相同的目的,请在下面的评论框中告诉我们。