Linux查看端口详情

article/2025/10/25 16:19:50
无论您是使用 Linux 作为服务器还是桌面环境,了解开放的端口或正在使用的端口在各种情况下都会有所帮助。哪个端口被哪个服务占用?有多少个开放端口?本文介绍如何扫描 Linux 系统或任何远程系统上开放的端口。

例如,如果您正在运行基于 Apache 或 Ngnix 的 Web 服务器,则使用的端口应该是 80 或 443。检查端口将确认这一点。同样,您可以检查 SMTP 或 SSH 或其他一些服务正在使用哪个端口。在将端口分配给新服务时,了解哪些端口正在使用是很有必要的。

您还可以检查是否有端口被用于安全入侵。在 Linux 中有多种检查端口的方法。我将在本文中分享我最喜欢的两种方法。

1、lsof命令

如果您直接或通过 SSH 登录到系统,则可以使用lsof 命令检查其端口,通过 lsof 命令可以查看当前登录的 Linux 系统中打开的端口。

sudo lsof -i -P -n

lsof 命令用于查找用户使用的文件和进程。这里用到的选项是:

  1. i:如果没有指定IP地址,这个选项选择列出所有网络文件
  1. P:禁止将端口号转换为端口名称, 如 3306 转为 MySQL
  1. n:禁止IP转换为hostname,缺省是不加上-n参数

然而,上面命令也向我们展示了许多计算机实际上并未监听的额外端口。

您可以将此命令的输出通过管道传输到 grep 命令并匹配模式“LISTEN”,如下所示:

sudo lsof -i -P -n | grep LISTEN

这样只会显示我们的计算机正在监听的端口以及哪个服务正在使用所述开放端口。

2、netcat命令

nc (Netcat) 是一个命令行实用程序,它使用 TCP 和 UDP 协议通过网络在计算机之间读取和写入数据。使用 netcat 命令可以检查任何服务器上的端口。

下面给出了 nc 命令的语法:

nc [options] host port

这个实用程序有一个 -z 标志。使用时,它将使 nc 扫描侦听守护程序而不实际向端口发送任何数据。

将此与 -v 标志结合使用,启用详细模式,您可以获得详细的输出。

以下是使用 nc 命令扫描系统开放端口的命令:

nc -z -v 1-65535 2>&1 | grep -v 'Connection refused'

将 IP-ADDRESS 替换为您正在检查端口的 Linux 系统的 IP 地址。可以是本机ip 127.0.0.1,也可以是远程机器的ip地址。

至于我为什么选择值 1 到 65535,那是因为端口范围从 1 开始,到 65535 结束。

最后,将输出通过管道传递给 grep 命令。使用 -v 选项,它会排除任何返回包括 “Connection refused” 的行。

这将显示计算机上打开的所有端口,这些端口可由网络上的另一台计算机访问(在防火墙允许的情况下)。

3、结论

在这两种方法中,我更喜欢 lsof 命令。它比 nc 命令更快。但是,您需要登录系统并拥有 sudo 访问权限。换句话说,如果您正在管理系统,则 lsof 是更合适的选择。

nc 命令具有无需登录即可扫描端口的灵活性,但当扫描远程主机时因为需要网络交互会很慢, 特别是面临超时请求时,可使用 -q secs 参数设置超时时间。

 


http://chatgpt.dhexx.cn/article/Ljro0cNP.shtml

相关文章

linux查看服务端口命令大全

目录: 零、 linux怎么查看所有服务端口一、常用命令二、lsof -i 需要 root 用户的权限来执行三、netstat命令四、扩展资料 零、 linux怎么查看所有服务端口 1、打开linux系统,在linux的桌面的空白处右击。 2、在d出的下拉选项里,点击打开终端…

linux查看端口

linux中netstat netstat -a : 将目前系统上所有的连接、监听、socket信息都列出来 -t :列出tcp网络封包的信息 -u :列出udp网络封包的信息 -n :不以进程的服务名称,以端口号来显示 -l :列出目前正在网络监听的服务 -p…

Linux如何查看端口

方法一:lsof -i:端口号 用于查看某一端口的占用情况,比如查看9092端口使用情况,lsof -i:9095 可以看到9095端口已经被nginx占用 方法二:netstat -tunlp |grep 端口号,用于查看指定的端口号的进程情况,如查…

Linux查看端口占用情况

一、查看已知端口占用情况 比如,我们想知道8080端口的使用情况,或者说被谁占用了,命令如下: netstat -anp | grep 8080 结果如下: 也可以使用命令: netstat -tln | grep 8080 结果: 和上个命…

Android系统开发篇(四) —— Samba服务器的搭建和相关配置

书接上文,上文中我们说到了Android源码的下载和编译,那么为了高效率的操作和便于在Windows系统中去读取和修改源码;我们采用了Samba文件服务器,这个在linux行业里可以必备的技能。当然Samba的作用远不止于此,但是接下来…

【Android App 开发基础】

文章目录 一、Android是什么?二、App的开发1.原生开发2.混合开发 三、App的工程结构App工程的项目结构图 一、Android是什么? Android是一款基于Linux的移动端开源操作系统。 二、App的开发 基于安卓系统的App开发主要有两大技术路线,分别…

如何深入学习Android系统

Android工程师级别和学习路线 《Android进阶指北》 Android进阶指北》是一本Android进阶图书,结合《Android进阶之光》和《Android进阶解密》两本书介绍的知识,一同建立起Android应用开发进阶知识体系。全书共分13章,主要从3个方面来组织内容…

android驱动开发从零到一

目录 安卓驱动开发过程机器介绍步骤 step1:下载android11源码一、谷歌的源码下载:二、rk3568提供的源码下载: step2:编译android源码(make命令)1.编译的几个选项2.开始编译 step3:编写驱动文件step4:开始构建镜像(buil…

移动应用开发——安卓仓储管理系统

移动应用开发系统 仓储管理系统 安卓java语言编写 安卓课设项目-仓储管理系统 需求分析 1.1项目背景。(5分) 随着计算机的应用普及,目前大多数企业的仓库管理数据资料已开始采用计算机数据系统管理,但数据还是采用先纸张记录、再…

这是一份全面详细的Android 车载系统开发入门指南

目前的就业形势越来越严峻,很多大中小厂因为业务停滞不前都选择“精简人员”,节约成本。对于Android开发来说,市场的冷静,明显可以感知到企业招聘门槛的提高。就未来发展来说,选择一个正处于时代风口的细分领域深耕最佳…

收藏这份Android Framework开发入门指南,带你步入Android系统开发的殿堂

最近发现Android应用开发者都对Framework有着浓厚的兴趣,而且很多非移动开发的也在咨询Framework相关的技术。 针对广大对Android系统充满着好奇,或迫切需要掌握底层原理但苦于自学难度太大的伙伴,这里为大家分享一份《Android Framework高级…

Android开发

一、Android 1、安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。 2、主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。 3、Android…

《应用系统开发》安卓期末结课作业

目录 一、引言... 3 1.1 设计目的... 3 1.2 项目背景... 3 二、需求分析... 3 2.1 用户需求... 3 2.2 功能要求... 4 2.项目概况... 4 三、系统设计... 4 3.1功能分析... 4 3.2 程序层次图... 4 四、功能实现... 5 4.1 注册登录模块... 5 4.2 会话模块... 9 4.3 …

【Android开发】考试系统

【Android开发】考试系统 文章目录 【Android开发】考试系统 一、开发环境需求二、系统功能设计三、运行结果1. 欢迎界面2. 主界面3. 答题界面 四、主要代码1. WelcomeActivity.java2. activity_classics.xml以上是主要代码,完整文件可点击链接下载 一、开发环境需求…

安卓进阶之android系统架构

安卓进阶之android架构 安卓进阶躲不开阅读源码和深入了解安卓的底层,这是一篇入门级别的文章,可以对安卓架构有个大体的认识。 AOSP与Android系统架构 首先要理解andriod和AOSP的关系,我们日常开发的安卓跟市面上的安卓不是一个意思&…

android开发流程

Step1:安装开发环境 下载安卓studio安装包,安装安卓的开发环境后,配置AVD和测试设备,并通过HelloWorld测试整个平台的各项功能。 Step2:开发阶段 XML文件完成用户界面的组件定义和布局。 Java源程序代码主要实现用户界面的交互功能和数台…

Android系统开发篇(二) —— 建立Android系统开发环境之Ubuntu 20.04.4 LTS

书接上文,上文中我们主要介绍了虚拟机环境的搭建,那么接下来我们继续还是来说说Android系统开发环境的搭建,Ubuntu系统的安装和配置! 上文我们说到虚拟机的新建了且已经搭载了Ubuntu 20.04.4LTS系统,当然你也可以选择…

干货|Android系统定制开发基础篇

一、Android源码目录结构 Android系统源码内容实在太广,其目录结构也实在庞大,每位开发者也无法做到对每一块都弄明白,工作中接触的也只是其中的一小部分。以下只从宏观上对系统源码的一级目录进行介绍,后续再慢慢完善更细致的内…

Android系统开发 ----- 系统服务开发

系列文章目录 Android系统启动 ---- 主要流程类_MrDarly的博客-CSDN博客Android系统启动Zygote关系主要的类https://blog.csdn.net/weixin_68948960/article/details/125310042 前言 Android系统开发之系统服务开发。 问题:用户操作无界面,但是需要An…