入門實例
端口 80 上的所有連接
$.NETstat -anp | grep :80
網絡統計幫助
$ netstat -h
監聽
netstat -ltunp |
所有監聽端口 |
netstat -ltn |
監聽 TCP 端口 |
netstat -lun |
監聽 UDP 端口 |
netstat -lx |
監聽 Unix 端口 |
netstat -lt |
僅列出偵聽 TCP 端口 |
netstat -lu |
僅列出偵聽 UDP 端口 |
netstat -l |
列出所有監聽條件 |
連接
netstat -a |
所有連接 |
netstat -at |
所有 TCP 連接 |
netstat -au |
所有 UDP 連接 |
netstat -ant |
顯示沒有反向 DNS 查找的 IP 地址 |
netstat |
活動連接 |
netstat -a |
所有連接 |
netstat -at |
所有 TCP 連接 |
netstat -au |
所有 UDP 連接 |
netstat -ant |
顯示沒有反向 DNS 查找的 IP 地址 |
netstat -tnl |
監聽 TCP 端口 |
netstat -unl |
監聽 UDP 端口 |
網絡
netstat -i |
顯示網絡接口 |
netstat -ie |
顯示網絡接口擴展信息 |
netstat -n |
僅顯示 IP 地址 |
netstat -F |
盡可能顯示 IP 地址的域名 |
路由
netstat -r |
顯示路由表 |
netstat -rn |
顯示路由表,不解析主機 |
統計數據
netstat -s |
顯示統計信息 |
netstat -st |
顯示 TCP 統計信息 |
netstat -su |
顯示 UDP 統計信息 |
netstat -ltpe |
使用進程信息和擴展信息顯示 TCP 的偵聽連接 |
netstat -tp |
顯示帶有 PID 編號的服務名稱 |
sudo netstat -nlpt |
列出進程名稱/PID 和用戶 ID |
netstat -nlptue |
所有帶有 PID 和擴展信息的偵聽端口 |
netstat -M |
顯示偽裝的連接 |
顯示沒有域名的 TCP 連接
$ netstat --tcp --numeric
顯示活動/已建立的連接
$ netstat -atnp | grep ESTA
獲取活動連接的連續列表
$ watch -d -n0 "netstat -atnp | grep ESTA"
顯示到特定端口的所有打開連接
$ netstat -anp | grep":"
插入端口號(上圖)代替冒號 :
檢查服務是否正在運行
$ sudo netstat -aple | grep ntp
你可以用http、smtp代替ntp
Netstat – 安全命令
顯示具有大量連接的 IP
$ netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head
連接到端口 80 的 IP 地址
$ netstat -tn 2>/dev/null | grep ':80 ' | awk '{print $5}' |sed -e 's/::ffff://' | cut -f1 -d: | sort | uniq -c | sort -rn | head
顯示端口 80 上的活動連接數
$ netstat -an |grep :80 |wc -l
僅顯示外部 IP 地址
$ netstat -antu | grep :80 | grep -v LISTEN | awk '{print $5}'
顯示活動 SYNC_REC
以下命令將輸出服務器上正在發生和正在發生的活動 SYNC_REC 數量。數量應該很低(小于 5)。如果該數字為兩位數,則您可能正在遭受 DoS 攻擊或被郵件轟炸。
$ netstat -n -p|grep SYN_REC | wc -l
列出發送 SYN_REC 連接的唯一 IP 地址
$ netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'
與上面的命令一樣,該命令也列出了發送 SYN_REC 連接狀態的節點的所有唯一 IP 地址
每個遠程 IP 的連接數
$ netstat -antu | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -n
或者
$ netstat -antu | awk '$5 ~ /[0-9]:/{split($5, a, ":"); ips[a[1]]++} END {for (ip in ips) print ips[ip], ip | "sort -k1 -nr"}'
檢查開放端口(ipv4 和 ipv6)
$ netstat -plntu
檢查開放端口(ipv4 和 ipv6)
$ netstat -plnt
每個 IP 的打開連接數
$ netstat -an | grep 80 | wc -l
活躍的互聯網連接
$ netstat -pnut -w | column -t -s $'t'