Linux 檢視開啟的網路埠
阿新 • • 發佈:2018-12-12
使用netstat
netstat -nape 可以列出所有已經建立連線和listening狀態的埠
對於嵌入式busybox,可能不支援列出開啟埠的程式名,方法有兩個:
- 配置busybox
重新編譯busybox,支援-p選項列出程式名
- 通過/proc檔案系統查詢
檢視系統開啟的所有tcp埠
a)cat /proc/net/tcp
local_address 列就是ip:port ,這裡都是16進位制的
inode: 開啟的socket對於的inode
b)查詢inodeno對應的程序號
for dir in `find /proc/ -name "fd"`; do ls -l $dir | grep 'socket\:\[13849\]' && echo $dir;done
c)根據程序號得到程序的名字
head -n 1 /proc/2135/status
可以看出3841,對於的10進製為14401,開啟該埠的程式名為sshd
通過該方法同樣可以檢視udp開啟的埠,netstat程式實際上就是通過過程顯示的開啟埠資訊
對於client端,該方法並不適用,這時就要用到iptables的log功能,iptables invalid output會打印出所有被丟棄的資料包,其中會看到對於的埠號