linux端口监听命令 linux端口监听

Linux中如何检查开放端口

场景一:了解系统开放的端口,和正在使用的端口,在各种情况下都会有所帮助。

在吕梁等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站设计 网站设计制作定制设计,公司网站建设,企业网站建设,品牌网站设计,成都全网营销,成都外贸网站建设公司,吕梁网站建设费用合理。

比如:如果你的服务器正在运行着 Nginx,那么其端口应该为80或者443,可以检查一下。再比如你可以检查一下 SMTP、SSH或者其他服务用的是哪个端口。当有新的服务需要开放端口的时候,你需要知道目前已经被占用的,都有哪些端口。

此外,可以检查一下是否有开放的可用于入侵检测的端口。

Linux 中有多种检查端口的方法,本文将介绍两种。

使用 lsof 检查当前系统开放的端口

不管你是直接登录的系统,还是使用 ssh 连接的,都可以使用 lsof 命令来检查端口:

该命令用于查找用户使用的文件和进程。上述命令中的选项,包括:

但是,这也会展示许多计算机并没有监听的其他端口。

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

这样就只显示计算机正在监听的,以及正在运行的服务器所占用的端口。

使用 netcat 命令检查远程服务器上的端口

nc(Netcat) 是一个命令行实用程序,使用TCP和UDP协议在网络计算机之间读取和写入数据。

以下是nc命令的语法:

这个工具有一个很实用的 -z 选项,它会让 nc 命令扫描正在监听的守护进程,但是不会向端口发送任何数据。

将其与 -v 选项结合,启动详细信息,会有详细信息的输出。

losf与nc的不同点:

lsof命令简介

lsof 命令用于显示 Linux 系统当前已打开的所有文件列表。查看进程或系统打开的文件会给调试带来极大的帮助。下面简单地介绍 lsof 常使用的功能。

lsof (list open files)命令用于查看你进程打开的文件,打开文件的进程,进程打开的端口(TCP、UDP),还可以用于找回/恢复被删除的文件。lsof 命令需要访问核心内存和各种文件,所以需要具备 root 超级管理员权限的用户才能执行此命令。

linux的nc命令,NetCat,在网络工具中有“瑞士军刀”美誉“,是解决这个问题的工具。 nc命令安装: yum install nc

以上是看来一些文章的总结分享内容,欢迎补充讨论。

Linux下 netstat ps kill 命令详解及常用命令收集

前言,phper 脱离 fpm 学习 swoole GO 时 经常会用一些进程管理命令 这里熟悉下

netstat 命令

Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

常见参数

-a (all) 显示所有选项,默认不显示 LISTEN 相关

-t (tcp) 仅显示 tcp 相关选项

-u (udp) 仅显示 udp 相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服务状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如 uid 等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该 netstat 命令。

提示:LISTEN 和 LISTENING 的状态只有用 - a 或者 - l 才能看到

常见命令

列出所有端口 (包括监听和未监听的)

netstat -a #列出所有端口

netstat -at #列出所有的tcp 端口

netstat -au #列出所有的udp 端口

列出所有处于监听状态的 Sockets

netstat -l #只显示在监听的端口

netstat -lt #只显示所有的在监听的tcp 端口

netstat -lu #只显示所有的在监听的udp 端口

netstat -lx #只显示所有的在监听的unix 端口

在 netstat 输出中显示 PID 和进程名称 netstat -p

netstat -pt #显示所有tcp端口的PID 和进程名称

查找 (经常使用)

netstat -ap | grep xxx #查找程序名为xxx的运行端口

netstat -an | grep ':80' #找出运行在指定端口的进程

PS 命令

PS 是 LINUX 下最常用的也是非常强大的进程查看命令

常用命令

ps -ef | grep 进程关键字 #查找某一进程

参数解释

UID :程序被该 UID 所拥有

PID :就是这个程序的 ID

PPID :则是其上级父程序的ID

C :CPU使用的资源百分比

STIME :系统启动时间

TTY :登入者的终端机位置

TIME :使用掉的CPU时间

CMD :所下达的是什么指令

ps -ax | less # 按向下键查看进程 q 键退出

pstree 树形显示所有进程 pstree -p 9005 树形显示某个端口进程

ps -eo pid,user,args 参数 -e 显示所有进程信息,-o 参数控制输出。Pid,User 和 Args 参数显示 PID,运行应用的用户和该应用。可以查看现在有谁登入了你的服务器

kill 命令

kill -9 PID 可以彻底杀死进程

kill -9 $(ps -ef | grep xxx) 杀死 查找到的所有进程 有点危险!

常用参数

HUP 1 终端断线

INT 2 中断(同 Ctrl + C)

QUIT 3 退出(同 Ctrl + )

TERM 15 终止

KILL 9 强制终止

CONT 18 继续(与STOP相反, fg/bg命令)

STOP 19 暂停(同 Ctrl + Z)

Linux下如何查看哪些端口处于监听状态

查看某一端口的占用情况: lsof -i:端口号

前提:首先你必须知道,端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。下次若某个进程再次开启,则相应的端口也再次开启。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口。

1. 可以通过"netstat -anp" 来查看哪些端口被打开。

(注:加参数'-n'会将应用程序转为端口显示,即数字格式的地址,如:nfs-2049, ftp-21,因此可以开启两个终端,一一对应一下程序所对应的端口号)

2. 然后可以通过"lsof -i:$PORT"查看应用该端口的程序($PORT指对应的端口号)。或者你也可以查看文件/etc/services,从里面可以找出端口所对应的服务。

(注:有些端口通过netstat查不出来,更可靠的方法是"sudo nmap -sT -O localhost")

3. 若要关闭某个端口,则可以:

1)通过iptables工具将该端口禁掉,如:

"sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"

"sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"

2)或者关掉对应的应用程序,则端口就自然关闭了,如:

"kill -9 PID" (PID:进程号)

如: 通过"netstat -anp | grep ssh"

有显示: tcp 0 127.0.0.1:2121 0.0.0.0:* LISTEN 7546/ssh

则: "kill -9 7546"

很基础的linux知识,跟着《linux就该这么学》系统学习下!

Linux netstat命令详解

Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。

执行netstat后,其输出结果为

从整体上看,netstat的输出结果可以分为两个部分:

一个是Active Internet connections,称为有源TCP连接,其中"Recv-Q"和"Send-Q"指%0A的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到。

另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。

Proto显示连接使用的协议,RefCnt表示连接到本套接口上的进程号,Types显示套接口的类型,State显示套接口当前的状态,Path表示连接到套接口的其它进程使用的路径名。

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服务状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

列出所有端口 netstat -a

列出所有 tcp 端口 netstat -at

列出所有 udp 端口 netstat -au

只显示监听端口 netstat -l

只列出所有监听 tcp 端口 netstat -lt

只列出所有监听 udp 端口 netstat -lu

只列出所有监听 UNIX 端口 netstat -lx

显示所有端口的统计信息 netstat -s

显示 TCP 或 UDP 端口的统计信息 netstat -st 或 -su

netstat -p 可以与其它开关一起使用,就可以添加 “PID/进程名称” 到 netstat 输出中,这样 debugging 的时候可以很方便的发现特定端口运行的程序。

当你不想让主机,端口和用户名显示,使用 netstat -n。将会使用数字代替那些名称。

同样可以加速输出,因为不用进行比对查询。

如果只是不想让这三个名称中的一个被显示,使用以下命令

netstat 将每隔一秒输出网络信息。

在输出的末尾,会有如下的信息

注意: 使用 netstat -rn 显示数字格式,不查询主机名称。

并不是所有的进程都能找到,没有权限的会不显示,使用 root 权限查看所有的信息。

找出运行在指定端口的进程

显示详细信息,像是 ifconfig 使用 netstat -ie:

查看连接某服务端口最多的的IP地址

TCP各种状态列表

文章题目:linux端口监听命令 linux端口监听
本文地址:https://www.cdcxhl.com/article26/hhjscg.html

成都网站建设公司_创新互联,为您提供用户体验微信公众号服务器托管微信小程序静态网站定制开发

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都app开发公司