溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用Ngrok將局域網服務映射到公網

發布時間:2021-11-10 18:59:41 來源:億速云 閱讀:189 作者:柒染 欄目:大數據
# 如何使用Ngrok將局域網服務映射到公網

## 什么是Ngrok?

Ngrok是一個輕量級的反向代理工具,能夠將本地局域網服務(如開發中的Web應用、數據庫服務等)通過安全隧道暴露到公網。它支持HTTP、HTTPS、TCP等多種協議,并自動生成可公開訪問的URL,極大簡化了內網穿透的流程。

### 核心功能
- **即時公網訪問**:無需配置路由器或購買云服務器
- **HTTPS支持**:自動為服務提供SSL加密
- **請求監控**:可視化查看所有經過隧道的請求
- **多協議支持**:適用于Web服務、SSH、游戲服務器等

---

## 為什么選擇Ngrok?

### 傳統方案的痛點
1. **路由器配置復雜**:需要DDNS、端口轉發等操作
2. **ISP限制**:家庭寬帶通常沒有固定公網IP
3. **安全風險**:直接暴露內網服務可能被攻擊

### Ngrok的優勢
? 三分鐘快速部署  
? 免費基礎版可用  
? 無需運維知識  
? 企業級數據加密(TLS 1.3)

---

## 安裝指南

### Windows系統
1. 訪問[ngrok官網](https://ngrok.com/)
2. 下載`ngrok.zip`并解壓
3. (可選)將解壓路徑添加到系統環境變量

```powershell
# 驗證安裝
.\ngrok.exe version

macOS/Linux

# 使用Homebrew安裝
brew install ngrok/ngrok/ngrok

# 或手動下載
curl -O https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-darwin-amd64.zip
unzip ngrok-stable-*.zip

基礎使用教程

步驟1:獲取認證令牌

  1. 注冊Ngrok賬戶
  2. 在Dashboard找到Your Authtoken
  3. 運行認證命令:
ngrok config add-authtoken <你的令牌>

步驟2:啟動HTTP隧道

假設本地運行著localhost:8080的Web服務:

ngrok http 8080

關鍵輸出解析

Forwarding    https://a1b2-34-56-78-90.ngrok.io -> http://localhost:8080
  • 左側URL即為公網訪問地址
  • 右側為映射的本地服務

高級配置技巧

自定義子域名(付費功能)

ngrok http 8080 --subdomain=myapp

→ 生成專屬地址:https://myapp.ngrok.io

TCP端口轉發(適合MySQL/SSH)

ngrok tcp 22  # 轉發SSH服務

配置文件進階

創建~/.ngrok2/ngrok.yml

tunnels:
  webapp:
    addr: 3000
    proto: http
    hostname: myapp.ngrok.io
  database:
    addr: 3306
    proto: tcp

啟動指定隧道:

ngrok start --all

安全防護建議

1. 訪問限制

# 只允許特定IP訪問
ngrok http 8080 --allow-ip=203.0.113.1

2. 基礎認證

ngrok http 8080 --auth="username:password"

3. Webhook驗證

webhooks:
  - name: github
    addr: 8080
    proto: http
    oauth:
      provider: github
      allow-email: user@example.com

常見問題排查

Q1: 連接超時怎么辦?

  • 檢查本地服務是否正常運行
  • 關閉防火墻臨時測試
  • 嘗試更換協議(HTTP/HTTPS)

Q2: 如何查看流量統計?

訪問Ngrok控制臺:

http://127.0.0.1:4040

Q3: 免費版限制有哪些?

  • 每個隧道4小時自動重置
  • 并發連接數限制
  • 無法保留固定域名

企業級應用場景

案例1:微信開發調試

  1. 啟動本地微信回調服務
  2. 創建HTTPS隧道
  3. 將ngrok地址配置到公眾號后臺

案例2:IoT設備遠程訪問

ngrok tcp --region=eu 1883  # MQTT協議轉發

案例3:CI/CD集成

# GitHub Actions示例
- name: Expose preview
  run: |
    ngrok http 3000 --auth=${{ secrets.NGROK_AUTH }} &

替代方案對比

工具 協議支持 免費額度 自托管
Ngrok HTTP/TCP 有限 ?
frp 全協議 100% ?
Cloudflare HTTP only 充足 ?
Localtunnel HTTP only 有限 ?

結語

Ngrok作為開發者利器,能快速解決以下痛點: - 客戶演示臨時訪問 - 第三方服務回調測試 - 跨地域團隊協作調試

注意:生產環境建議使用付費版或自建內網穿透方案,免費版僅適合臨時測試。

通過本文介紹,您應該已經掌握從安裝配置到高級應用的完整流程?,F在就可以嘗試將您的本地服務發布到公網了! “`

(全文約1600字,實際字數可能因Markdown渲染略有差異)

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女