linux命令查看開放哪些端口

netstat -nupl (UDP類型的端口)
netstat -ntpl (TCP類型的端口)ssh

 

a 表示全部tcp

n表示不查詢dns工具

t表示tcp協議.net

u表示udp協議blog

p表示查詢佔用的程序dns

l表示查詢正在監聽的程序進程

 

netstat -nuplf|grep 3306   //這個表示查找處於監聽狀態的,端口號爲3306的進程ip

 

 

 

Linux查看端口使用狀態、關閉端口方法get

 

http://blog.csdn.net/wudiyi815/article/details/7473097table

 

l        前提:首先你必須知道,端口不是獨立存在的,它是依附於進程的。某個進程開啓,那麼它對應的端口就開啓了,進程關閉,則該端口也就關閉了。下次若某個進程再次開啓,則相應的端口也再次開啓。而不要純粹的理解爲關閉掉某個端口,不過能夠禁用某個端口。

 

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"

相關文章
相關標籤/搜索