Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux 服務器配置路由器端口映射實現外網訪問內網服務

編輯:關於 Linux

將內網 Linux 服務器(如 Web、SSH、FTP)暴露到公網,核心是在路由器上配置 端口映射(Port Forwarding / NAT)。本文以常見家用/中小企業路由器為例,圖解從獲取公網 IP 到驗證連通的完整步驟。

前置條件

  • 路由器通過 PPPoE 撥號上網,已獲取公網 IP(或動態域名 DDNS)。
  • Linux 服務器通過有線/無線連接路由器 LAN 口,獲得固定內網 IP(建議綁定 MAC 地址或在路由器設置靜態 DHCP 租約)。
  • 服務器防火牆已放行目標端口(如 firewall-cmd --add-port=80/tcp --permanent)。

步驟 1:登錄路由器管理界面

  1. 電腦連接路由器網絡,瀏覽器輸入網關地址(常見 192.168.1.1、192.168.0.1、192.168.8.1)。
  2. 輸入管理員帳號密碼登錄。

路由器 WAN 口公網 IP

步驟 2:確認 WAN 口公網 IP

在路由器狀態/網絡信息頁面,記錄 WAN IP 地址(如 123.45.67.89)。若為動態 IP,建議配置 DDNS(花生殼、No-IP、路由器自帶)獲取固定域名。

步驟 3:查找 Linux 服務器內網 IP

在路由器「設備列表」/「DHCP 客戶端列表」中找到目標服務器,記錄其內網 IP(如 192.168.8.100)。

內網設備列表

步驟 4:添加端口映射規則

進入 轉發規則 → 虛擬服務器 / 端口映射,添加條目:

字段示例值說明
服務名稱Web_Server自定義標識
外部端口80公網訪問端口,建議 >1024 避免 ISP 封鎖(如 8080、8443)
內部端口80服務器實際服務端口
內部 IP 地址192.168.8.100Linux 服務器內網 IP
協議TCP / ALLWeb 選 TCP,FTP 需 TCP+UDP
狀態啟用生效

點擊保存/應用。

步驟 5:驗證外網連通性

  1. 在外網環境(如 4G 手機、其他寬帶)瀏覽器輸入 https://WAN_IP:外部端口(如 https://123.45.67.89:8080)。
  2. 或使用線上工具(站長工具、端口掃描器)檢測端口開放狀態。
  3. 服務器端抓包確認:tcpdump -i eth0 port 80 觀察是否收到 SYN 包。

常見問題與進階技巧

問題原因解決
外網無法訪問ISP 封鎖 80/443/22/3389 等常用端口映射到非常用高端口(如 18080、2222),或使用 frp/nps 內網穿透
路由器無公網 IP(CGNAT)運營商分配私有 IP(100.64.x.x、10.x.x.x)聯繫運營商申請公網 IP,或使用 IPv6、內網穿透方案
服務器防火牆攔截iptables/firewalld/ufw 未放行firewall-cmd --add-port=8080/tcp --permanent && firewall-cmd --reload
多服務共用 80 端口需根據域名分流Nginx 反向代理(虛擬主機)或使用 SNI Proxy

安全加固建議

  • 修改默認端口:SSH 改 2222、RDP 改 33389、資料庫端口不直接映射。
  • 啟用密鑰認證/雙因子認證:禁用密碼登錄 SSH。
  • 限制來源 IP:路由器/防火牆僅允許可信 IP 段訪問管理端口。
  • 使用 VPN/Zero Trust:WireGuard、Tailscale、Cloudflare Tunnel 替代直接端口映射。

端口映射是讓內網服務觸達公網的基礎技能,但暴露端口即意味著風險。生產環境請優先考慮 VPN、內網穿透、雲端部署等更安全的架構。

Copyright © Windows教程網 All Rights Reserved