linux监听端口
1. linux 查询哪些端口被监听
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"
2. Linux中如何查看服务及监听端口
可以通过netstat命令进行简单查询
netstat命令各个参数说明如下:
-t : 指明显示TCP端口
-u : 指明显示UDP端口
-l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
-n : 不进行DNS轮询,显示IP(可以加速操作)
3
即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况··
netstat -ntlp //查看当前所有tcp端口·
netstat -ntulp |grep 80 //查看所有80端口使用情况·
netstat -an | grep 3306 //查看所有3306端口使用情况·
3. Linux下如何通过监听的端口号,获取对应的pid号
比如,在我机器上,用下面的命令发现是 pid=773 这个ssh进程在占用 8000 端口。
netstat -nlp | grep 8000
tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 773/ssh
tcp6 0 0 :::8000 :::* LISTEN 773/ssh
4. 怎样查看Linux监听端口
netstat -ntlpd |grep nginx 接应用名称
5. linux有没有监听端口关闭的命令
"linux 启动服务 默认监听ipv6端口"相关的详细问题如下: 在centos下,执行命令 openssl ocsp -ndays 1 -index demoCA/index.txt -port 33904 -CA demoCA/cacert.pem -text -rkey ./ocsp/private/ocsp_srv_key.pem -rsigner ocsp/ocsp_srv_cert.pem 后,用netstat命令查看,默认监听的是localhost6的端口,而没有监听ipv4的端口。 试一下netstat -tlnp grep '条件'
6. linux 查看哪些端口被监听
最常用的方法:
1,netstat -an
2,lsof -i
以上两个命令通过查询网络堆栈列举正在监听网络的端口。
eg:检查某一端口的监听信息
netstat -anp | grep 端口号
lsof -i | grep 端口号
7. 怎么让linux服务器监听某一个端口
如果是web服务器,比如apache,或者tomcat,nginx这种,有相应的配置文件的,比如xxx.conf,这个配置文件中可以设定监听的端口。
8. linux 监听端口连不上,已关闭防火墙。
本地能否访问8000端口(浏览器:http://<ip地址>:8000/,ip地址不要用localhost或127.0.0.1,要用外部IP)?不能访问就是网站本身的问题。
9. linux查看哪个端口可以使用
1)使用lsof命令 lsof是一个非常强大的linux工具,她被用来查找哪些程序使用了那些文件。在linux系统下,基本上所有的东西都可以被当作文件来用。socket当然也是一种文件了。所以lsof可以用来查找谁用了某一个端口。具体方法: lsof -i :port_number grep "(LISTEN)" -i是用来查找和网络相关的文件,":"号是必须的,它是标志你查找的是一个端口。port_number就是你要查找的端口号,譬如你要查找是否 有程序占用了oracle的监听端口1521,就可以使用lsof -i :1521 |grep "(LISTEN)"。如果有程序已经占用了,那么下面打印的第二个字段就是该程序的进程id,第一个字段是进程的名字。 如果只有losf -i :port_number可能会查到很多应用程序,但这些程序实际并没有占用你指定的端口,这些端口只是连接到本机器或者别的机器的该端口。所以要grep "(LISTEN)“,因为一个端口只可能被一个程序占用的,所以这种方法是可靠的。 2)使用netstat 命令 大家一定对这个命令比较熟悉了,可能你从没有想到用到来查找哪一个程序的占用了指定的端口。但是netstat -an 的确提供了这种功能。所以有问题了一定要想到先去查找man手册,不过说实话,某些man手册写得让中国人看不懂,那没有办法了,就googe或者 一下吧。 执行man netstat命令,你会发现netstat 提供了'-p'的选项,这个选项的功能是告诉你哪个程序占用了该端口,但是她提供的形式比较古怪是以pid/process_name提供的。pid当然 是进程id了,process_name是进程的命令,中间以'/'号分隔。 和上面的原因一样,我们只查找listen的端口,netstat 给我们提供了-l的选项,这个选项不是默认的选项。 下面以1521端口来看怎么查找到该程序,我们使用下面的命令: netstat -lnpawk 'BEGIN{prt=":1521$"}{if ($4 ~ prt) print $0}' 在这里使用awk来匹配第4个字段的模式是为了避免误判。