在CentOS系統(tǒng)中,查看端口信息是一項(xiàng)常見(jiàn)的任務(wù)。無(wú)論是用于安全審計(jì)、網(wǎng)絡(luò)調(diào)試還是其他目的,了解已打開(kāi)的端口非常重要。本文將介紹如何通過(guò)命令查看CentOS端口,幫助您快速獲取所需的信息。
1. 使用 netstat 命令查看開(kāi)放端口
netstat 命令是 Linux 系統(tǒng)中用于查看網(wǎng)絡(luò)連接和端口信息的常用工具。通過(guò)運(yùn)行 netstat 命令,你可以列出系統(tǒng)上當(dāng)前的網(wǎng)絡(luò)連接,包括正在監(jiān)聽(tīng)的端口。要查看所有打開(kāi)的端口,可以使用以下命令:
netstat -antp
這個(gè)命令會(huì)輸出系統(tǒng)上所有正在監(jiān)聽(tīng)的端口,包括端口號(hào)、協(xié)議類型以及進(jìn)程 ID 和進(jìn)程名稱。如果只想查看特定的端口,可以加上 grep 命令進(jìn)行過(guò)濾,例如:
netstat -antp | grep 80
這個(gè)命令會(huì)列出所有監(jiān)聽(tīng) 80 端口的進(jìn)程。
2. 使用 ss 命令查看開(kāi)放端口
ss 命令是 netstat 的替代工具,提供了更快速和更詳細(xì)的端口信息查看功能。使用 ss 命令查看開(kāi)放端口的示例如下:
ss -antp
這個(gè)命令會(huì)輸出系統(tǒng)上所有正在監(jiān)聽(tīng)的端口,包括端口號(hào)、協(xié)議類型以及進(jìn)程 ID 和進(jìn)程名稱。如果只想查看特定的端口,可以再次使用 grep 命令進(jìn)行過(guò)濾,例如:
ss -antp | grep 22
這個(gè)命令會(huì)列出所有監(jiān)聽(tīng) 22 端口的進(jìn)程。
3. 使用 lsof 命令查看開(kāi)放端口
lsof (list open files) 命令是另一個(gè)強(qiáng)大的工具,可以用于查看系統(tǒng)上打開(kāi)的文件和網(wǎng)絡(luò)連接。要使用 lsof 查看開(kāi)放端口,可以執(zhí)行以下命令:
lsof -i -P -n | grep LISTEN
這個(gè)命令會(huì)列出所有正在監(jiān)聽(tīng)的端口,包括端口號(hào)、協(xié)議類型和進(jìn)程信息。如果只想查看特定的端口,可以再次使用 grep 命令進(jìn)行過(guò)濾,例如:
lsof -i :80 -P -n
這個(gè)命令會(huì)列出所有監(jiān)聽(tīng) 80 端口的進(jìn)程。
4. 使用 nmap 掃描開(kāi)放端口
nmap (Network Mapper) 是一款強(qiáng)大的網(wǎng)絡(luò)探測(cè)和安全審計(jì)工具,可用于掃描系統(tǒng)上的開(kāi)放端口。要使用 nmap 掃描 CentOS 系統(tǒng)上的開(kāi)放端口,可以執(zhí)行以下命令:
nmap -sT -O localhost
這個(gè)命令會(huì)掃描本地主機(jī)(localhost)上的所有開(kāi)放端口,并輸出端口號(hào)、協(xié)議類型和操作系統(tǒng)信息。如果想掃描遠(yuǎn)程主機(jī),可以將 localhost 替換為目標(biāo)主機(jī)的 IP 地址或域名。
5. 使用 iptables 查看防火墻規(guī)則
iptables 是 Linux 中用于配置防火墻的工具。通過(guò)查看 iptables 規(guī)則,你可以了解哪些端口被防火墻允許或阻止。要查看當(dāng)前的 iptables 規(guī)則,可以執(zhí)行以下命令:
iptables -L
這個(gè)命令會(huì)列出所有的 iptables 規(guī)則,包括允許和拒絕的端口。如果你只想查看某個(gè)特定鏈(如 INPUT 鏈)的規(guī)則,可以使用以下命令:
iptables -L INPUT
這個(gè)命令會(huì)列出 INPUT 鏈上的所有規(guī)則。
6. 使用 firewall-cmd 查看防火墻狀態(tài)
從 CentOS7 開(kāi)始,firewalld 取代了 iptables 成為默認(rèn)的防火墻管理工具。要使用 firewall-cmd 查看開(kāi)放的端口,可以執(zhí)行以下命令:
firewall-cmd --list-ports
這個(gè)命令會(huì)列出所有被防火墻允許的端口。如果你想查看具體的防火墻狀態(tài)和規(guī)則,可以使用以下命令:
firewall-cmd --state firewall-cmd --list-all
前者會(huì)輸出防火墻的當(dāng)前狀態(tài),后者會(huì)列出所有的防火墻規(guī)則,包括允許和拒絕的端口。
7. 使用 tcpdump 監(jiān)控網(wǎng)絡(luò)流量
tcpdump 是一款強(qiáng)大的網(wǎng)絡(luò)數(shù)據(jù)包捕獲和分析工具,可用于監(jiān)控系統(tǒng)上的網(wǎng)絡(luò)流量和端口活動(dòng)。要使用 tcpdump 監(jiān)控特定端口的流量,可以執(zhí)行以下命令:
tcpdump -i any -n port 80
這個(gè)命令會(huì)捕獲所有發(fā)送到或從 80 端口進(jìn)出的數(shù)據(jù)包。你可以根據(jù)需要調(diào)整端口號(hào)或使用其他過(guò)濾選項(xiàng)來(lái)定制 tcpdump 的輸出。
總之,CentOS 系統(tǒng)上有多種命令可用于查看和監(jiān)控開(kāi)放端口,包括 netstat、ss、lsof、nmap、iptables、firewall-cmd 和 tcpdump。每個(gè)工具都有自己的優(yōu)勢(shì)和特點(diǎn),可以根據(jù)具體需求選擇合適的工具進(jìn)行端口查看和網(wǎng)絡(luò)監(jiān)控。通過(guò)掌握這些命令,你可以更好地了解 CentOS 系統(tǒng)的網(wǎng)絡(luò)狀態(tài),并及時(shí)發(fā)現(xiàn)和解決可能存在的安全隱患。