加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

如何在Linux中查看进程占用的端口号

发布时间:2018-10-12 00:02:27 所属栏目:Windows 来源:Prakash Subramanian
导读:【新品产上线啦】51CTO播客,随时随地,碎片化学习 对于 Linux 系统管理员来说,清楚某个服务是否正确地绑定或监听某个端口,是至关重要的。如果你需要处理端口相关的问题,这篇文章可能会对你有用。 端口是 Linux 系统上特定进程之间逻辑连接的标识,包括

它还可以显示所有类型的套接字统计信息,包括 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.  
  3. Starting Nmap 6.40 ( http://nmap.org ) at 2018-09-23 12:36 IST
  4. Nmap scan report for localhost (127.0.0.1)
  5. Host is up (0.000089s latency).
  6. Other addresses for localhost (not scanned): 127.0.0.1
  7. PORT STATE SERVICE VERSION
  8. 22/tcp open ssh OpenSSH 7.4 (protocol 2.0)
  9.  
  10. Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
  11. Nmap done: 1 IP address (1 host up) scanned in 0.44 seconds

方法 6:使用 systemctl 命令

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

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读