您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

6种查看Linux进程占用端口号的方法

时间:2023-02-08 14:49:20  来源:  作者:GLAB带你学网络

可以使用以下六种方法查看端口信息。

ss:可以用于转储套接字统计信息。

.NETstat:可以显示打开的套接字列表。

lsof:可以列出打开的文件。

fuser:可以列出那些打开了文件的进程的进程 ID。

nmap:是网络检测工具和端口扫描程序。

systemctl:是 systemd 系统的控制管理器和服务管理器。

以下我们将找出 sshd 守护进程所使用的端口号。

方法 1:使用 ss 命令

ss 一般用于转储套接字统计信息。它能够输出类似于 netstat 输出的信息,但它可以比其它工具显示更多的 TCP 信息和状态信息。

它还可以显示所有类型的套接字统计信息,包括 PACKET、TCP、UDP、DCCP、RAW、Unix 域等。

  1. # ss -tnlp | grep ssh
  2. LISTEN 0 128 *:22 *:* users:(("sshd",pid=997,fd=3))
  3. LISTEN 0 128 :::22 :::* users:(("sshd",pid=997,fd=4))

也可以使用端口号来检查。

  1. # ss -tnlp | grep ":22"
  2. LISTEN 0 128 *:22 *:* users:(("sshd",pid=997,fd=3))
  3. LISTEN 0 128 :::22 :::* users:(("sshd",pid=997,fd=4))

方法 2:使用 netstat 命令

netstat 能够显示网络连接、路由表、接口统计信息、伪装连接以及多播成员。

默认情况下,netstat 会列出打开的套接字。如果不指定任何地址族,则会显示所有已配置地址族的活动套接字。但 netstat 已经过时了,一般会使用 ss 来替代。

  1. # netstat -tnlp | grep ssh
  2. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 997/sshd
  3. tcp6 0 0 :::22 :::* LISTEN 997/sshd

也可以使用端口号来检查。

  1. # netstat -tnlp | grep ":22"
  2. tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1208/sshd
  3. tcp6 0 0 :::22 :::* LISTEN 1208/sshd

方法 3:使用 lsof 命令

lsof 能够列出打开的文件,并列出系统上被进程打开的文件的相关信息。

  1. # lsof -i -P | grep ssh
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. sshd 11584 root 3u IPv4 27625 0t0 TCP *:22 (LISTEN)
  4. sshd 11584 root 4u IPv6 27627 0t0 TCP *:22 (LISTEN)
  5. sshd 11592 root 3u IPv4 27744 0t0 TCP vps.2daygeek.com:ssh->103.5.134.167:49902 (ESTABLISHED)

也可以使用端口号来检查。

  1. # lsof -i tcp:22
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. sshd 1208 root 3u IPv4 20919 0t0 TCP *:ssh (LISTEN)
  4. sshd 1208 root 4u IPv6 20921 0t0 TCP *:ssh (LISTEN)
  5. sshd 11592 root 3u IPv4 27744 0t0 TCP vps.2daygeek.com:ssh->103.5.134.167:49902 (ESTABLISHED)

方法 4:使用 fuser 命令

fuser 工具会将本地系统上打开了文件的进程的进程 ID 显示在标准输出中。

  1. # fuser -v 22/tcp
  2.  USER PID ACCESS COMMAND
  3. 22/tcp: root 1208 F.... sshd
  4.  root 12388 F.... sshd
  5.  root 49339 F.... sshd

方法 5:使用 nmap 命令

nmap(“Network MApper”)是一款用于网络检测和安全审计的开源工具。它最初用于对大型网络进行快速扫描,但它对于单个主机的扫描也有很好的表现。

nmap 使用原始 IP 数据包来确定网络上可用的主机,这些主机的服务(包括应用程序名称和版本)、主机运行的操作系统(包括操作系统版本等信息)、正在使用的数据包过滤器或防火墙的类型,以及很多其它信息。

  1. # nmap -sV -p 22 localhost
  2. Starting Nmap 6.40 ( http://nmap.org ) at 2018-09-23 12:36 IST
  3. Nmap scan report for localhost (127.0.0.1)
  4. Host is up (0.000089s latency).
  5. Other addresses for localhost (not scanned): 127.0.0.1
  6. PORT STATE SERVICE VERSION
  7. 22/tcp open ssh OpenSSH 7.4 (protocol 2.0)
  8. Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
  9. Nmap done: 1 IP address (1 host up) scanned in 0.44 seconds

方法 6:使用 systemctl 命令

systemctl 是 systemd 系统的控制管理器和服务管理器。它取代了旧的 SysV 初始化系统管理,目前大多数现代 linux 操作系统都采用了 systemd。

  1. # systemctl status sshd
  2. ● sshd.service - OpenSSH server daemon
  3.  Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
  4.  Active: active (running) since Sun 2018-09-23 02:08:56 EDT; 6h 11min ago
  5.  Docs: man:sshd(8)
  6.  man:sshd_config(5)
  7.  MAIn PID: 11584 (sshd)
  8.  CGroup: /system.slice/sshd.service
  9.  └─11584 /usr/sbin/sshd -D
  10. Sep 23 02:08:56 vps.2daygeek.com systemd[1]: Starting OpenSSH server daemon...
  11. Sep 23 02:08:56 vps.2daygeek.com sshd[11584]: Server listening on 0.0.0.0 port 22.
  12. Sep 23 02:08:56 vps.2daygeek.com sshd[11584]: Server listening on :: port 22.
  13. Sep 23 02:08:56 vps.2daygeek.com systemd[1]: Started OpenSSH server daemon.
  14. Sep 23 02:09:15 vps.2daygeek.com sshd[11589]: Connection closed by 103.5.134.167 port 49899 [preauth]
  15. Sep 23 02:09:41 vps.2daygeek.com sshd[11592]: Accepted password for root from 103.5.134.167 port 49902 ssh2

以上输出的内容显示了最近一次启动 sshd 服务时 ssh 服务的监听端口。但它不会将最新日志更新到输出中。

  1. # systemctl status sshd
  2. ● sshd.service - OpenSSH server daemon
  3.  Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
  4.  Active: active (running) since Thu 2018-09-06 07:40:59 IST; 2 weeks 3 days ago
  5.  Docs: man:sshd(8)
  6.  man:sshd_config(5)
  7.  Main PID: 1208 (sshd)
  8.  CGroup: /system.slice/sshd.service
  9.  ├─ 1208 /usr/sbin/sshd -D
  10.  ├─23951 sshd: [accepted]
  11.  └─23952 sshd: [net]
  12. Sep 23 12:50:36 vps.2daygeek.com sshd[23909]: Invalid user pi from 95.210.113.142 port 51666
  13. Sep 23 12:50:36 vps.2daygeek.com sshd[23909]: input_userauth_request: invalid user pi [preauth]
  14. Sep 23 12:50:37 vps.2daygeek.com sshd[23911]: pam_unix(sshd:auth): check pass; user unknown
  15. Sep 23 12:50:37 vps.2daygeek.com sshd[23911]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=95.210.113.142
  16. Sep 23 12:50:37 vps.2daygeek.com sshd[23909]: pam_unix(sshd:auth): check pass; user unknown
  17. Sep 23 12:50:37 vps.2daygeek.com sshd[23909]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=95.210.113.142
  18. Sep 23 12:50:39 vps.2daygeek.com sshd[23911]: Failed password for invalid user pi from 95.210.113.142 port 51670 ssh2
  19. Sep 23 12:50:39 vps.2daygeek.com sshd[23909]: Failed password for invalid user pi from 95.210.113.142 port 51666 ssh2
  20. Sep 23 12:50:40 vps.2daygeek.com sshd[23911]: Connection closed by 95.210.113.142 port 51670 [preauth]
  21. Sep 23 12:50:40 vps.2daygeek.com sshd[23909]: Connection closed by 95.210.113.142 port 51666 [preauth]

大部分情况下,以上的输出不会显示进程的实际端口号。这时更建议使用以下这个 journalctl 命令检查日志文件中的详细信息。

  1. # journalctl | grep -i "openssh|sshd"
  2. Sep 23 02:08:56 vps138235.vps.ovh.ca sshd[997]: Received signal 15; terminating.
  3. Sep 23 02:08:56 vps138235.vps.ovh.ca systemd[1]: Stopping OpenSSH server daemon...
  4. Sep 23 02:08:56 vps138235.vps.ovh.ca systemd[1]: Starting OpenSSH server daemon...
  5. Sep 23 02:08:56 vps138235.vps.ovh.ca sshd[11584]: Server listening on 0.0.0.0 port 22.
  6. Sep 23 02:08:56 vps138235.vps.ovh.ca sshd[11584]: Server listening on :: port 22.
  7. Sep 23 02:08:56 vps138235.vps.ovh.ca systemd[1]: Started OpenSSH server daemon.

查看Linux系统中进程占用端口号是我们系统管理员必须掌握的一项技能,

以上查看进程端口的6种方法我们至少要会一种,希望大家熟练掌握这些内容



Tags:端口号   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
为什么不能ping端口号?如何验证端口号可用?
一、端口号为什么不能ping?Ping 是一种网络工具,经常用于测试两台计算机之间的网络连接是否正常。Ping 使用 Internet 控制消息协议(ICMP)来发送 ICMP 请求消息到目标计算机,如果...【详细内容】
2023-10-18  Search: 端口号  点击:(317)  评论:(0)  加入收藏
小白收藏啦!最全网络端口号
一、端口概念在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是...【详细内容】
2023-04-04  Search: 端口号  点击:(280)  评论:(0)  加入收藏
2023年网络端口号汇总!
端口大全(2023)转载:网络工程师俱乐部...【详细内容】
2023-02-17  Search: 端口号  点击:(175)  评论:(0)  加入收藏
6种查看Linux进程占用端口号的方法
可以使用以下六种方法查看端口信息。ss:可以用于转储套接字统计信息。netstat:可以显示打开的套接字列表。lsof:可以列出打开的文件。fuser:可以列出那些打开了文件的进程的进程...【详细内容】
2023-02-08  Search: 端口号  点击:(242)  评论:(0)  加入收藏
端口号的分类和测试方法
计算机“端口”是英文port的义译,我们可以认为是计算机与外界通讯交流的出口,分为软件端口和硬件端口。是标识某个具体的服务范围 1-65535 ,即一共有65535个端口。传输报文时,端...【详细内容】
2022-06-05  Search: 端口号  点击:(267)  评论:(0)  加入收藏
常用端口的端口号、端口说明及攻击方向
1、文件共享服务端口: 端口号 端口说明 攻击方向 21/22/69 ftp/tftp文件传输协议 允许匿名上传、下载、爆破和嗅探操作 ...【详细内容】
2021-06-21  Search: 端口号  点击:(561)  评论:(0)  加入收藏
一个端口号可以同时被两个进程绑定吗?
tcp/udp一、1个端口号可以同时被两个进程绑定吗?根据端口号的绑定我们分以下几种情况来讨论: 2个进程分别建立TCP server,使用同一个端口号8888 2个进程分别建立UDP server,使用...【详细内容】
2021-03-05  Search: 端口号  点击:(349)  评论:(0)  加入收藏
收藏备用!最全面的常用端口号介绍!
TCP/UDP常用端口号********************************************7 Echo(PING)9 丢弃13 Daytimer19 字符生成器20 /tcp FTP数据21 /tcp FTP控制 文件传输协议22 /tcp S...【详细内容】
2020-03-15  Search: 端口号  点击:(651)  评论:(0)  加入收藏
Windows服务器远程桌面端口号如何修改
一般我们远程连接一台Windows服务器时,不用加端口号,实际上用的是默认的3389端口,如下图:这个端口号经常会被人恶意扫描,因此强烈建议修改,这里介绍几种方法供参考:方法一、修改注...【详细内容】
2020-03-13  Search: 端口号  点击:(337)  评论:(0)  加入收藏
常见数据库的默认端口号整理,建议收藏!
✦ 常见关系型数据库默认端口号:Oracle:1521SQL Server:1433(TCP)、1434(UDP)MySQL:3306PostgreSQL:5432MariaDB:3308DB2:5000Sybase:2052Informix:无默认pointbase:9092Derby:1527​✦...【详细内容】
2020-03-11  Search: 端口号  点击:(1222)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(11)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(54)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(77)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(68)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条