您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# 如何使用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
# 使用Homebrew安装
brew install ngrok/ngrok/ngrok
# 或手动下载
curl -O https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-darwin-amd64.zip
unzip ngrok-stable-*.zip
Your Authtoken
ngrok config add-authtoken <你的令牌>
假设本地运行着localhost:8080
的Web服务:
ngrok http 8080
Forwarding https://a1b2-34-56-78-90.ngrok.io -> http://localhost:8080
ngrok http 8080 --subdomain=myapp
→ 生成专属地址:https://myapp.ngrok.io
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
# 只允许特定IP访问
ngrok http 8080 --allow-ip=203.0.113.1
ngrok http 8080 --auth="username:password"
webhooks:
- name: github
addr: 8080
proto: http
oauth:
provider: github
allow-email: user@example.com
访问Ngrok控制台:
http://127.0.0.1:4040
ngrok tcp --region=eu 1883 # MQTT协议转发
# 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作为开发者利器,能快速解决以下痛点: - 客户演示临时访问 - 第三方服务回调测试 - 跨地域团队协作调试
注意:生产环境建议使用付费版或自建内网穿透方案,免费版仅适合临时测试。
通过本文介绍,您应该已经掌握从安装配置到高级应用的完整流程。现在就可以尝试将您的本地服务发布到公网了! “`
(全文约1600字,实际字数可能因Markdown渲染略有差异)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。