‘壹’ linux下怎样查看某一端口是否开放
可以通过telnet进行排查,首先确定端口是否开启x0dx0a[root@localhost xly]# netstat -tpln|grep 3306x0dx0atcp 0 0 :::3306 :::* LISTEN 3034/mysqld x0dx0a然后再从其他机器进行telnet,如果通畅,则说明开放了,如果没有,说明有防火墙、网络不通、配置限制等情况x0dx0a[root@localhost xly]# telnet 192.168.1.1 3306x0dx0aTrying 192.168.1.1...x0dx0aConnected to 192.168.1.1.x0dx0aEscape character is '^]'.x0dx0aNx0dx0a5.6.39-loge9+kZc`;!
‘贰’ 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如何查看端口
x使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询
netstat命令各个参数说明如下:
-t : 指明显示TCP端口
-u : 指明显示UDP端口
-l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
-n : 不进行DNS轮询,显示IP(可以加速操作)
即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况··
netstat -ntlp //查看当前所有tcp端口·
netstat -ntulp |grep 80 //查看所有80端口使用情况·
netstat -ntulp | grep 3306 //查看所有3306端口使用情况·
Linux查看程序端口占用情况
使用命令:
ps -aux | grep tomcat
发现并没有8080端口的Tomcat进程。
使用命令:netstat –apn
查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name
发现8080端口被PID为9658的java进程占用。
进一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看
就可以明确知道8080端口是被哪个程序占用了!然后判断是否使用KILL命令干掉!
方法二:直接使用 netstat -anp | grep portno
即:netstat -anp|grep 8080
netstat -anp|grep 8080 --> tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 28500/java
ps -aux | grep 28500 --> r/local/tomcat9-jforum/tomcat
安装lsof list open files//---也可以 netstat -tunlp|grep 端口号 netstat -anp|grep 端口号
yum install lsof
lsof -i:8080 查看8080端口占用
lsof abc.txt 显示开启文件abc.txt的进程
lsof -c abc 显示abc进程现在打开的文件
lsof -c -p 1234 列出进程号为1234的进程所打开的文件
lsof -g gid 显示归属gid的进程情况
lsof +d /usr/local/ 显示目录下被进程开启的文件
lsof +D /usr/local/ 同上,但是会搜索目录下的目录,时间较长
lsof -d 4 显示使用fd为4的进程
lsof -i 用以显示符合条件的进程情况
lsof -i[46] [protocol][@hostname|hostaddr][:service|port]
46 --> IPv4 or IPv6
protocol --> TCP or UDP
hostname --> Internet host name
hostaddr --> IPv4地址
service --> /etc/service中的 service name (可以不止一个)
port --> 端口号 (可以不止一个)
lsof -i //显示所有打开的端口
lsof -i:80 //显示所有打开80端口的进程
lsof -i -U //显示所有打开的端口和UNIX domain文件
其实我一般这样用:
[root@VM_39_230_centos bin]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 16422 mysql 19u IPv6 148794 0t0 TCP *:mysql (LISTEN)
mysqld 16422 mysql 39u IPv6 643698 0t0 TCP localhost:mysql->localhost:36582 (ESTABLISHED)
mysqld 16422 mysql 45u IPv6 643699 0t0 TCP localhost:mysql->localhost:36584 (ESTABLISHED)
mysql
‘肆’ linux查看端口是否开启
Linux怎么查看端口是否开启?我们一起来了解一下吧。‘伍’ linux查看服务端口
linux怎么查看服务端口呢,下面就让我们来看看吧。