如何监听某个端口命令 linux

如何监听某个端口命令 linux,第1张

使用tcpdump命令来抓取监听端口数据:

tcpdump tcp port 5555 host 210.27.48.1

该命令作用为监听主机210.27.48.1端口5555上的通讯包。

查看某一端口的占用情况: 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就该这么学》系统学习下!

用 oracle:~ # lsof -i:1521 如果有返回信息,就说明侦听是启用的,如果没有返回任何信息说明侦听是停用的,或者你用 lsnrctl start。

oracle@oracle:~>lsnrctl start

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 04-JUL-2014 18:28:35

Copyright (c) 1991, 2011, Oracle. All rights reserved.

TNS-01106: Listener using listener name LISTENER has already been started

返回以上信息,说明是启用的。

方法1::

看 oracle监听是否启动 在CMD下运行如下命令就可以  lsnrctl status

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=spcc)(PORT=1525)))

TNS-12541: TNS:无监听器

TNS-12560: TNS: 协议适配器错误

TNS-00511: 无监听器

32-bit Windows Error: 61: Unknown error

LSNRCTL>start listener1

启动tnslsnr:请稍候...

这表示没有启动。。

方法2:

如果是LINUX系统可以通过如下命令看进程在不在

ps -ef|grep lsn

看 oracle监听是否启动 在CMD下运行如下命令就可以

lsnrctl status

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=spcc)(PORT=1525)))

TNS-12541: TNS:无监听器。TNS-12560: TNS: 协议适配器错误。TNS-00511: 无监听器

32-bit Windows Error: 61: Unknown error

LSNRCTL>start listener1

启动tnslsnr:请稍候...。这表示没有启动。。

如果是LINUX系统可以通过如下命令看进程在不在

ps -ef|grep lsn


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存