基于服務(wù)器安全性維護(hù)的目的,查看所有開(kāi)放的端口是通常采取的第一步,從中檢查出可疑或者不必要的端口并將其關(guān)掉。關(guān)于查看開(kāi)放的端口,方法不止一種,比如lsof 命令,還可以使用 ss 命令。 查看開(kāi)放的端口今天我們就介紹一下如何使用 ss 命令來(lái)查看 Linux 系統(tǒng)中開(kāi)放的端口。獲取所有正在監(jiān)聽(tīng)的接口,可以使用 -l 選項(xiàng),不過(guò)我們可以再額外增加使用另外一個(gè)選項(xiàng) t 來(lái)監(jiān)聽(tīng)所有 TCP 端口,如下: ss -tl 如果希望同時(shí)監(jiān)聽(tīng) TCP 和 UDP 端口,可以使用如下選項(xiàng)組合命令:
要獲取每個(gè)服務(wù)監(jiān)聽(tīng)的端口,可以使用 -n 選項(xiàng),然后結(jié)合grep 命令來(lái)過(guò)濾結(jié)果,如下所示: ss -tuln | grep LISTEN 找到開(kāi)放的端口后,就可以選擇性地關(guān)閉它們。 關(guān)閉端口要關(guān)閉端口,首先你需要找到位于該端口的服務(wù)名稱(chēng)并停掉該服務(wù),可以使用 ss 命令的 -p 選項(xiàng),如下所示:
上圖所示的例子中,端口號(hào) 80 被 nginx 服務(wù)所占據(jù),如果我們想要關(guān)閉該端口,可以使用如下命令停止 nginx 服務(wù): sudo systemctl stop nginx 如果 nginx 服務(wù)被設(shè)置了自啟動(dòng)(即每次服務(wù)器重啟時(shí),nginx 都會(huì)自動(dòng)啟動(dòng)),那么我們可以使用如下命令來(lái)禁用該服務(wù):
不過(guò)最好還是更改防火墻規(guī)則,比如在 Ubuntu 中,可以阻止 UFW 中的端口號(hào) 80(即 nginx 所使用的端口)。 首先,檢查 UFW 的狀態(tài): sudo ufw status 如果其狀態(tài)為 inactive,可以使用如下命令啟用:
然后使用 deny 選項(xiàng) 來(lái)阻止某個(gè)端口號(hào): sudo ufw deny 80 這里由于我們的服務(wù)器是云服務(wù)器,所以基本上防火墻都放在了云防火墻的配置中,這里就不演示了。 |
|
來(lái)自: copy_left > 《linux相關(guān)》