Linux如何查询哪些端口被占用

Linux如何查询哪些端口被占用,第1张

前言

如何确定端口是否在Linux或类unix系统下占用?怎么检查哪些端口正在Linux服务器上被占用?Linux系统如何使用命令行检查端口是否已经在占用?

查询哪些端口正在服务器的网络接口上被占用是非常重要的工作。您需要查询打开端口以检测入侵。除了入侵之外,出于故障排除的目的,可能有必要检查服务器上的其他应用程序是否已经使用了某个端口。例如,您可以在同一系统上安装Apache和Nginx服务器。因此,有必要了解Apache或Nginx是否使用TCP端口80或443。本教程提供了使用netstat、nmap和lsof命令查询正在使用的端口并查看正在使用该端口的应用程序的步骤。

如何查询端口是否在使用中:

检查Linux上被占用的端口和应用程序:

Step1: 打开终端

Step2: 执行以下任意一条命令查看被占用的端口

查看端口22是否被占用:

较新版本的Linux使用以下查询命令:

方法1: 使用lsof命令查询占用端口

先安装lsof命令

RHEL/CentOS系统:

Debian/Ubuntu系统安装lsof命令

使用语法如下

OpenBSD

看到类似这样的输出结果:

sshd是进程名字

TCP 22表示sshd进程占用了TCP 22端口,正在监听中(LISTEN)

1243表示sshd进程号

方法二:使用netstat查询被占用的端口号

较新的Linux发行版已经不再默认集成netstat命令,而是使用新命令ss取代了。

如果要使用netstat命令,需要手动安装net-tools套件:

RHEL/CentOS系统安装net-tools套件,执行以下命令:

Debian/Ubuntu系统执行以下命令:

您可以使用netstat查询被占用的端口和应用程序,如下所示。

执行以下命令查询:

在Linux上,netstat命令已经废弃了一段时间。因此,你需要使用ss命令如下:

或者:

其中ss命令选项如下:

-t : 只显示Linux上的TCP套接字

-u : 在Linux上只显示UDP套接字

-l : 监听套接字。例如,TCP端口22由SSHD服务器打开。

-p : 列出打开套接字的进程名

-n : 不要解析服务名称,即不要使用DNS

FreeBSD/MacOS X netstat 语法

FreeBSD/MacOS X查询被占用的端口

或者

OpenBSD netstat 语法

OpenBSD查询被占用的端口

或者

方法三:使用`nmap`命令查询Linux被占用的端口

默认情况下,Linux发行版并没有默认安装nmap命令,

CentOS系统安装nmap

Ubuntu系统安装nmap

使用nmap查询本机被占用的端口

查询Linux系统被占用的UDP端口

查询Linux系统被占用的TCP端口

你可以同时查询被占用的TCP和UDP端口

结论:

本教程解释了如何在Linux系统上使用命令行查询TCP或者UDP端口是否被占用。有关更多信息,请参见nmap命令和lsof命令页面

 Linux服务器如何查看CPU占用率、内存占用、带宽占用的命令图中红色部分即为占用百分率,下面是每个进程的CPU占用率,如果服务器是多核CPU可能在下方看到有些进程CPU占用超过100%,这种一般是该进程使用了多核。 内存占用率:free -m 图中红色部分即为占用,即used、free即为剩余。(注意中在第二行数字中找哦。) 带宽占用: 使用vmstat命令,输入命令:vmstatlinux服务器的相关信息查看(端口占用,cpu、内存占用,防火墙,系统信息,vim编辑器使用等)一、端口占用情况 (1)查看所有端口、进程的使用情况: netstat -tunlp (2)查看某一端口的使用情况: netstat -tunlp|grep 5560 二、查看内存使用情况(1)查看占用情况(动态):top 按下P(大写)可以找到占用内存最大的进程 (2)查看占用情况(总的):free (3)查看占用内存最多的N个进程: ps -aux | sort -k4nr | head -K如果是10个进程,K=10,如果是最高的三个,K=3 (4)查看硬盘空间大小:df -lh三、防火墙防火墙iptables和firewall (1)查看防火墙状态: firewall-cmd --state (2)开启、关闭防火墙: 开启: systemctl start firewalld 关闭:systemctl stop firewalld.service 或者 service firewalld stop (3)重启防火墙:firewall-cmd --reload(重新载入配置,在添加规则之后,需要执行此命令) (4)防火墙是否开机启动:禁止防火墙开机启动:systemctl disable firewalld.service设置防火墙开机启动:systemctl enable firewalld.service四、查看系统信息(1)查看系统位数:getconf LONG_BIT (2)查看内存信息:查看所有内存信息: cat /proc/meminfo查看内存容量: grep "MemTotal" /proc/meminfo  (3)查看CPU信息:查看cpu个数(几核):cat /proc/cpuinfo |grep "processor"|wc -l五、linux中文乱码:我只是用了第三部,更改了ssh客户端属性配置就可以了  1. 配置SSH 终端 (以xshell为例): 打开“文件”(File)- “属性” (Properties), 在“终端”(Terminal),将“编码”(Encoding)改为UTF-8 即可。六、Xshell远程连接Linux时无法使用小键盘的解决方式: 七、linux中vi编辑器的退出 *** 作保存,但不退出vi             :w 保存并退出vi                    :wq 退出vi,但不保存更改      :q! 用其他文件名保存            :w filename 在现有文件中保存并覆盖该文件    :w! filename 查找文字:在一般模式下输入/和你要查找的文字单词,例如/port,此时再按下 n 会跳转至改文字所在的下一处。

     linux端口被占用怎么解决呢,下面就让我们来看看吧。

      1、打开linux系统,在linux的桌面的空白处右击。

      2、在d出的下拉选项里,点击打开终端。

      3、在终端窗口中输入netstat-tln|grep+被占用的端口命令。

      4、输入lsof-i:+被占端口命令,回车后可查看端口被哪个进程占用。

      5、输入kill-9+进程id命令,回车后即可杀死占用端口的进程。

      以上就是的分享,希望能帮助的大家。

      本文章基于ThinkpadE15品牌、centos7系统撰写的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7672735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存