涵蓋 80+ 常見連接埠 · TCP/UDP 篩選 · 安全建議

Port Number Lookup 連接埠號碼查詢對照表

快速查詢 TCP/UDP Port 的用途、常見服務與安全建議。 適用於 網路管理防火牆設定DockerNAS自架服務

Filter:

❓ 常見問題 FAQ

關於網路連接埠(Port)的常見疑問與解答

什麼是 Port(連接埠)?為什麼重要?

Port(連接埠 / 埠號) 是網路通訊中用來識別特定應用程式或服務的數字標籤。可以想像 IP 地址是「大樓地址」,而 Port 就是「大樓內的房間號碼」。

當您的電腦與伺服器通訊時,除了要知道對方的 IP 地址,還要指定連接埠號碼,才能讓資料正確送達對應的應用程式(例如瀏覽器用 Port 80 存取 Web 伺服器)。

Port 範圍:

  • Well Known Ports(0–1023) — 系統保留,由 IANA 分配給知名服務(HTTP、SSH、FTP 等)
  • Registered Ports(1024–49151) — 可註冊,供應用程式與資料庫使用(MySQL 3306、Redis 6379 等)
  • Dynamic / Private Ports(49152–65535) — 動態分配,用於暫存連線與自訂服務
TCP 與 UDP 有什麼不同?

TCP 與 UDP 是傳輸層的兩種核心協定,最大的差異在於 可靠性效率

TCP(傳輸控制協定) — 可靠但較慢

🔹 建立連線(三次握手)
🔹 保證資料送達(確認機制 Auto-Retry)
🔹 保證資料順序(序列號)
🔹 適用:網頁瀏覽(HTTP)、Email(SMTP)、檔案傳輸(FTP)、SSH

UDP(使用者資料包協定) — 快速但不可靠

🔹 無連線(發送即走)
🔹 不保證送達(可能遺失封包)
🔹 不保證順序
🔹 適用:DNS 查詢、影片串流、線上遊戲、VoIP 語音通話

💡 選擇原則:需要資料完整 → TCP;需要即時性 → UDP。許多服務同時支援兩種協定(如 DNS 使用 UDP 為主,但超過 512 位元組會切換到 TCP)。

Docker Port Mapping 是什麼?如何運作?

Docker Port Mapping(連接埠映射) 是將 Docker 容器內部的連接埠映射到主機(Host)上的連接埠,讓外部可以透過主機 IP 存取容器內的服務。

語法:docker run -p 主機埠:容器埠

實際範例:

docker run -p 8080:80 nginx

→ 將容器內的 Port 80(Nginx)映射到主機的 Port 8080

→ 外部可透過 http://主機IP:8080 存取

⚠️ 安全提醒:

  • 避免將資料庫埠(如 3306)直接暴露到主機(除非必要)
  • 使用 Docker 內部網路(bridge network)讓容器間通訊,不暴露埠
  • 僅映射需要的埠,不要使用 -p 0.0.0.0:80:80 暴露到所有介面
哪些 Port 最常見的安全風險?如何防護?

開放不必要的 Port 是網路安全中最常見的風險之一。以下是常被攻擊的目標與防護建議:

🔴 高風險 Port

  • Port 22 (SSH) — 禁止密碼登入,使用 SSH Key,改用非標準埠
  • Port 23 (Telnet) — 完全不建議使用,改用 SSH
  • Port 445 (SMB) — 不應對外開放(WannaCry 勒索軟體即透過此埠擴散)
  • Port 3306 (MySQL) — 僅限內部網路存取,不應暴露到網際網路
  • Port 3389 (RDP) — 使用 VPN 連線後再存取,或啟用 NLA 認證

🛡️ 通用防護原則:

  • 防火牆只開放必要 Port(最小權限原則)
  • 使用 VPN 存取內部管理介面
  • 定期掃描對外開放的 Port(使用 nmap 等工具)
  • 啟用 Fail2Ban 等入侵預防機制
  • 保持服務版本更新(修補已知漏洞)
什麼是 NAT / Port Forwarding?如何在路由器設定?

Port Forwarding(連接埠轉發) 是 NAT(網路地址轉換)的一種功能,讓外部網路可以透過路由器的 IP 存取內部區域網路中的服務。

典型使用情境:

  • 在家架設 Web 伺服器(轉發 Port 80/443 到內部主機)
  • 遠端存取 NAS(轉發特定管理埠)
  • 遠端桌面連線到公司電腦(轉發 Port 3389)
  • 自架 Minecraft 伺服器(轉發 Port 25565)

⚠️ 安全提醒:

  • 只轉發必要的 Port(不要全部轉發)
  • 盡量使用非標準埠(如將 SSH 設在 Port 2222 而非 22)
  • 搭配防火牆規則限制來源 IP
  • 考慮使用反向代理(如 Nginx Proxy Manager)統一管理對外服務
  • 定期檢查路由器轉發規則
NAS 常見服務使用哪些 Port?

NAS(網路附加儲存)裝置使用多種連接埠來提供檔案分享、媒體串流與管理功能:

Synology / QNAP 常見 Port

  • 5000 / 5001 — DSM / QTS Web 管理介面(HTTP/HTTPS)
  • 21 — FTP 檔案傳輸
  • 137-139 — NetBIOS / SMB 檔案分享(Windows)
  • 443 — HTTPS 安全連線
  • 548 — AFP(Apple 檔案分享)
  • 2049 — NFS(Linux 檔案分享)
  • 9091 — Transmission BT 下載管理
  • 32400 — Plex Media Server

💡 建議:NAS 管理介面不要直接暴露到網際網路,建議透過 VPN 連線後再存取。如果必須遠端存取,請啟用 HTTPS(Port 5001)並使用強密碼。

如何檢查 Port 是否開放?

檢查連接埠是否開放有多種方法,從簡單到進階:

1️⃣ 使用 nmap(最強大)

nmap -sT -p 80,443 目標IP

掃描指定 IP 的特定 Port

2️⃣ 使用 telnet(簡單測試 TCP)

telnet 目標IP 埠號

連線成功表示 Port 有開放

3️⃣ 使用 nc(netcat)

nc -zv 目標IP 埠號

-z 僅掃描不發送資料,-v 顯示詳細資訊

4️⃣ 線上工具

  • YouGetSignal — 線上 Port 掃描工具
  • CanYouSeeMe — 檢查外部是否可看到您的 Port

💡 注意:掃描不屬於自己的伺服器前,請先取得授權。未經授權的掃描可能違反法律。

📖 網路連接埠(Port)完全指南

深入了解網路連接埠的運作原理、分類與最佳實踐

什麼是網路連接埠(Port)?

網路連接埠(Network Port) 是 TCP/IP 協定中用來區分不同網路服務的邏輯編號。它的概念類似於公寓大樓的門牌號碼 — IP 地址是「大樓地址」,而 Port 就是「房間號碼」,確保資料送達正確的應用程式。

連接埠號碼是一個 16 位元的無符號整數,範圍從 0 到 65535。網際網路號碼分配局(IANA)將 Port 分為三個範圍:

  • Well Known Ports(0–1023) — 系統保留,需要 root/管理員權限才能使用。分配給最常見的網路服務(HTTP、FTP、SSH、DNS 等)
  • Registered Ports(1024–49151) — 可供應用程式註冊使用。資料庫、遊戲伺服器、企業軟體等使用此範圍
  • Dynamic / Private Ports(49152–65535) — 用於暫時連線(如瀏覽器連線 Web 伺服器時使用的隨機埠)

TCP 與 UDP 的差異

在理解連接埠之前,必須先了解 TCP 與 UDP 這兩種傳輸層協定的差異:

TCP(Transmission Control Protocol)

TCP 是一種連線導向可靠的傳輸協定。在傳輸資料前,客戶端與伺服器需要透過「三次握手」(Three-Way Handshake)建立連線。TCP 確保資料完整送達、順序正確,並在封包遺失時自動重傳。

適用於需要資料完整性的應用:網頁瀏覽(HTTP/HTTPS)Email(SMTP、IMAP)檔案傳輸(FTP、SFTP)遠端連線(SSH、Telnet)

UDP(User Datagram Protocol)

UDP 是一種無連線不可靠的傳輸協定。它直接發送資料包,不建立連線、不確認送達、不保證順序。但正因為沒有這些開銷,UDP 的延遲極低。

適用於需要即時性的應用:DNS 查詢影片串流線上遊戲VoIP 語音通話DHCP

選擇原則:

資料完整性 > 速度 → TCP
即時性 > 完整性 → UDP

許多服務會同時支援 TCP 和 UDP(如 DNS 預設使用 UDP,但需要時會切換到 TCP)。

常見服務與對應 Port

以下是最常使用的網路服務與其預設連接埠:

  • 20/21 (FTP) — 檔案傳輸協定(20 為資料,21 為控制)
  • 22 (SSH) — 安全 Shell,加密遠端連線
  • 25 (SMTP) — 郵件傳送協定
  • 53 (DNS) — 域名解析系統(UDP 為主)
  • 80 (HTTP) — 全球資訊網,未加密網頁瀏覽
  • 443 (HTTPS) — 加密網頁瀏覽(TLS/SSL)
  • 3306 (MySQL) — MySQL 資料庫
  • 5432 (PostgreSQL) — PostgreSQL 資料庫
  • 6379 (Redis) — Redis 快取資料庫
  • 27017 (MongoDB) — MongoDB 資料庫

防火牆與 Port 管理最佳實踐

正確管理對外開放的 Port 是網路安全的第一道防線:

  • 最小權限原則 — 只開放必要的 Port,關閉所有不在白名單中的 Port
  • 變更預設埠 — 將 SSH、資料庫等服務移到非標準埠(如 SSH 改為 2222)
  • 使用 VPN — 管理介面(NAS、路由器、資料庫)透過 VPN 存取
  • 防火牆規則 — 限制特定來源 IP 存取管理 Port
  • Fail2Ban — 自動封鎖嘗試暴力破解的 IP
  • 定期掃描 — 使用 nmap 等工具檢查哪些 Port 對外開放
  • Docker 注意 — 不要將容器埠直接 mapping 到主機 0.0.0.0 除非必要

Docker Port Mapping 深入解析

在 Docker 環境中,連接埠管理變得更加複雜:

每個容器有自己的內部網路,容器內的服務監聽在特定埠號。要讓外部存取這些服務,需要使用 -p 參數進行連接埠映射:

docker run -p 8080:80 nginx

主機 Port 8080 → 容器 Port 80

建議:使用 Docker Compose 時,在 ports: 區段中明確定義映射關係。使用 127.0.0.1:8080:80 可讓 Port 僅監聽本機,再透過反向代理(如 Nginx Proxy Manager、Traefik)統一管理對外服務。

總結:網路連接埠是網路通訊的基礎設施,了解每個 Port 的用途、選擇正確的協定(TCP/UDP)、實施適當的安全措施,是每位系統管理員與開發者必備的技能。使用 ToolHub 的 Port Number Lookup 工具,隨時查詢任何連接埠的資訊與安全建議。

操作成功