0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在Linux或類Unix系統(tǒng)下如何確定端口是否正在使用?

冬至子 ? 來源:坐望云起時 ? 作者:坐望云起時 ? 2023-09-14 16:22 ? 次閱讀

Linux或類Unix系統(tǒng)下如何確定端口是否正在使用?如何驗證 Linux 服務(wù)器上正在偵聽哪些端口?如何使用 CLI 檢查 Linux 操作系統(tǒng)上的端口是否正在使用?

驗證哪些端口正在服務(wù)器網(wǎng)絡(luò)接口上偵聽非常重要。您需要注意開放端口以檢測入侵。除了入侵之外,出于故障排除的目的,可能有必要檢查端口是否已被服務(wù)器上的其他應(yīng)用程序使用。

例如,您可以在同一系統(tǒng)上安裝 Apache 和 Nginx 服務(wù)器。因此有必要知道 Apache 或 Nginx 是否正在使用 TCP 端口#80/443。本快速教程提供了使用 netstat、nmap 和 lsof 命令檢查正在使用的端口并查看正在使用該端口的應(yīng)用程序的步驟。

如何檢查端口是否被使用

查看Linux上的監(jiān)聽端口和應(yīng)用程序:

1.打開終端應(yīng)用程序,即 shell 提示符。
2.在 Linux 上運(yùn)行以下任一命令來查看開放端口:

1.jpg

3.對于最新版本的 Linux,請使用 ss 命令。例如,ss -tulw

讓我們詳細(xì)看看命令及其輸出。

選項#1:lsof 命令

語法為: 示例輸出:

1.jpg

考慮上面輸出的最后一行:

sshd 85379 root 3u IPv4 0xffff80000039e000 0t0 TCP 10.86.128.138:22(監(jiān)聽)
  • sshd是應(yīng)用程序的名稱。
  • 10.86.128.138是 sshd 應(yīng)用程序綁定到的 IP 地址(監(jiān)聽)
  • 22是正在使用的 TCP 端口 (LISTEN)
  • 85379是sshd進(jìn)程的進(jìn)程ID

查看 Internet 網(wǎng)絡(luò)服務(wù)列表

/ etc/services是互聯(lián)網(wǎng)服務(wù)的友好文本名稱與其底層分配的端口號和協(xié)議類型之間的文本文件映射。使用cat命令或者more命令/ less命令查看:
$less /etc/services

選項#2:netstat 或 ss 命令

您可以使用netstat檢查監(jiān)聽端口和應(yīng)用程序,如下所示。

Linux netstat 語法

運(yùn)行 netstat 命令和grep 命令來過濾掉處于 LISTEN 狀態(tài)的端口: 或過濾掉特定的 TCP 端口,例如 443: 其中 netstat 命令選項為:

1.jpg

  • -t :選擇所有TCP端口
  • -u :選擇所有UDP端口
  • -l :顯示監(jiān)聽服務(wù)器套接字(在列表狀態(tài)下打開TCP和UDP端口)
  • -p :顯示套接字的 PID/程序名稱。換句話說,該選項告訴誰打開了 TCP 或 UDP 端口。例如,在我的系統(tǒng)上,Nginx 打開了 TCP 端口 80/443,因此我將 /usr/sbin/nginx 或其 PID。
  • -n :不解析名稱(避免 dns 查找,這可以加快繁忙的 Linux/Unix 服務(wù)器上的 netstat 速度)

Linux 上的netstat 命令已棄用一段時間。因此,需要使用ss命令,如下:

1.jpg

其中,ss命令選項如下:

  • -t :在 Linux 上僅顯示 TCP 套接字
  • -u :在Linux上僅顯示UDP套接字
  • -l :顯示監(jiān)聽套接字。例如,SSHD 服務(wù)器打開 TCP 端口 22。
  • -p :列出打開套接字的進(jìn)程名稱
  • -n :不解析服務(wù)名稱,即不使用 DNS

FreeBSD/macOS (OS X) netstat 語法

語法如下: 您也可以在 macOS 或 FreeBSD 上使用 sockstat 命令來顯示打開的 TCP 或 UDP 端口。例如:我的FreeBSD 服務(wù)器版本13.xx 的輸出:

1.jpg

OpenBSD netstat 語法

1.jpg

選項#3:nmap 命令

語法是:

1.jpg

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux系統(tǒng)
    +關(guān)注

    關(guān)注

    4

    文章

    593

    瀏覽量

    27403
  • PID控制
    +關(guān)注

    關(guān)注

    10

    文章

    460

    瀏覽量

    40100
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    365

    瀏覽量

    23379
  • TCP通信
    +關(guān)注

    關(guān)注

    0

    文章

    146

    瀏覽量

    4223
收藏 人收藏

    評論

    相關(guān)推薦

    Linux中檢查端口的方法

    無論你的服務(wù)器是用的Linux還是桌面系統(tǒng),了解系統(tǒng)開放的端口,和正在使用的端口,
    發(fā)表于 11-25 15:32 ?4472次閱讀
    <b class='flag-5'>Linux</b>中檢查<b class='flag-5'>端口</b>的方法

    LinuxUnix有哪些不同之處?

    硬件平臺上;Unix操作系統(tǒng)跨平臺性能較弱,大多需與硬件配套使用。3. 可視化界面Linux除了進(jìn)行命令行操作,還有窗體管理系統(tǒng);Unix
    發(fā)表于 03-02 18:51

    什么是UNIX操作系統(tǒng)

    @TOC嵌入式方向在校目前所學(xué)到的知識**歡迎使用Markdown編輯器Linux概述linux是一套免費(fèi)使用和自由傳播的UNIX操作系統(tǒng)
    發(fā)表于 11-04 07:29

    unixlinux的區(qū)別

    Linux是一套免費(fèi)使用和自由傳播的Unix操作系統(tǒng),是一個基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作
    發(fā)表于 11-14 10:08 ?6642次閱讀
    <b class='flag-5'>unix</b>和<b class='flag-5'>linux</b>的區(qū)別

    10 個增加 UNIX/Linux Shell 腳本趣味的工具

    制作 GUI 應(yīng)用不是一項困難的任務(wù),但需要時間和耐心。幸運(yùn)的是,UNIXLinux 都帶有大量編寫漂亮 GUI 腳本的工具。以下工具是基于 FreeBSD 和 Linux 操作系統(tǒng)
    的頭像 發(fā)表于 04-11 16:21 ?4910次閱讀

    怎樣Linux中列出顯示開放端口

    端口是16-位號(0到65535),以幫助識別LinuxUnix)操作系統(tǒng)上的給定應(yīng)用程序進(jìn)程。端口
    的頭像 發(fā)表于 07-26 08:45 ?6189次閱讀
    怎樣<b class='flag-5'>在</b><b class='flag-5'>Linux</b>中列出<b class='flag-5'>或</b>顯示開放<b class='flag-5'>端口</b>

    LinuxUNIX到底有關(guān)系和區(qū)別

    UNIXLinux 之間的關(guān)系是一個很有意思的話題。目前主流的服務(wù)器端操作系統(tǒng)中,UNIX 誕生于 20 世紀(jì) 60 年代末,Win
    的頭像 發(fā)表于 02-18 11:56 ?3390次閱讀
    <b class='flag-5'>Linux</b>與<b class='flag-5'>UNIX</b>到底有關(guān)系和區(qū)別

    linuxunix有什么區(qū)別

    UNIXLinux之間的關(guān)系是一個很有意思的話題。目前主流的服務(wù)器端操作系統(tǒng)中,UNIX誕生于20世紀(jì)60年代末,Windows誕生于2
    發(fā)表于 06-08 09:12 ?1.3w次閱讀

    Windows比UnixLinux到底有什么優(yōu)劣勢

    大多數(shù)情況,Windows甚至優(yōu)于Unix / Linux。 對于某些專業(yè)技術(shù)人員來說,Unix /
    的頭像 發(fā)表于 07-04 11:13 ?4337次閱讀

    UNIXLinux有什么區(qū)別聯(lián)系

     UNIXLinux 之間的關(guān)系是一個很有意思的話題。目前主流的服務(wù)器端操作系統(tǒng)中,UNIX 誕生于 20 世紀(jì) 60 年代末,Wi
    發(fā)表于 07-15 16:02 ?682次閱讀

    UnixLinux、ios和Android四大系統(tǒng)的發(fā)展及關(guān)系

    Unix, 簡化形成了Linux,Linux則是Android的內(nèi)核,而蘋果則是使用unix系統(tǒng)作為iOS和MacOS的內(nèi)核。
    的頭像 發(fā)表于 08-24 16:35 ?4450次閱讀
    <b class='flag-5'>Unix</b>、<b class='flag-5'>Linux</b>、ios和Android四大<b class='flag-5'>系統(tǒng)</b>的發(fā)展及關(guān)系

    Linux是否已經(jīng)殺死了它的祖先Unix?

    商用 Unix 的銷售量已經(jīng)斷崖式下跌。這種急劇下降的背后一定有什么原因。Linux 是否已經(jīng)殺死了它的祖先,成為了一個完全可行的替代品,就像操作系統(tǒng)版的《天外魔花》(Invasion
    的頭像 發(fā)表于 03-10 10:52 ?1900次閱讀

    linux查看端口被進(jìn)程占用的方法 Linux與windows的區(qū)別

    Linux的全稱為GNU/Linux,是一種免費(fèi)使用和自由傳播的UNIX操作系統(tǒng),其內(nèi)核由林納斯·本納第克特·托瓦茲于1991年10月5日
    的頭像 發(fā)表于 08-22 14:23 ?2374次閱讀

    如何驗證Linux系統(tǒng)中網(wǎng)絡(luò)端口通不通

    我們 linux 系統(tǒng)網(wǎng)絡(luò)調(diào)試中經(jīng)常會遇到需要測試驗證對應(yīng)的端口是否正常的場景, 接下來講解一
    的頭像 發(fā)表于 05-12 10:28 ?2019次閱讀
    如何驗證<b class='flag-5'>Linux</b><b class='flag-5'>系統(tǒng)</b>中網(wǎng)絡(luò)<b class='flag-5'>端口</b>通不通

    UnixLinux的差異

    摘要:程序員都知道,Linux 不是 Unix,不過二者之間確實存在關(guān)系,即 Linux 系統(tǒng)是從 Unix 派生出來的,而
    發(fā)表于 09-04 12:42 ?624次閱讀