🗣 Wd提问: 用云服务器搭建内网穿透
🤖 Ai回答: 使用云服务器搭建内网穿透(NAT穿透)是一种常见的技术手段,用于将内网服务暴露到公网,让外部用户可以通过公网访问内网服务。以下是详细的搭建步骤和常用方案。
一、内网穿透原理
内网穿透的核心思想是:通过公网服务器作为中转,实现外网与内网之间的通信。
内网服务无法直接被公网访问(因为没有公网IP或防火墙限制)。
云服务器有公网IP,可以作为“桥梁”。
内网机器与云服务器建立连接(如SSH隧道、反向代理等),外部请求通过云服务器转发到内网服务。
二、常用方案
方案1:使用 `frp`(Fast Reverse Proxy)搭建内网穿透
`frp` 是一个开源的高性能内网穿透工具,支持 TCP、UDP、HTTP、HTTPS 等协议,使用简单,适合个人和企业使用。
1、准备工作
一台云服务器(公网IP,如阿里云、腾讯云、AWS等)
一台内网设备(如家庭电脑、树莓派等)
服务器系统:Linux(推荐 Ubuntu/Debian/CentOS)
内网设备系统:Windows/Linux/macOS
2、安装 frp
2.1 在云服务器上安装 frp 服务端
bash
下载 frp 最新版本(以 Linux 64位为例)
wget https://github.com/fatedier/frp/releases/download/v0.53.0/frp_0.53.0_linux_amd64.tar.gz
解压
tar -zxvf frp_0.53.0_linux_amd64.tar.gz
进入目录
cd frp_0.53.0_linux_amd64
复制示例配置文件
cp frps.ini.example frps.ini
2.2 修改 `frps.ini` 配置文件
ini
[common]
bind_port = 7000
vhost_http_port = 8080
vhost_https_port = 8443
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
`bind_port`: frp 服务端监听端口(用于客户端连接)
`vhost_http_port`: HTTP 服务端口(用于反向代理 HTTP)
`dashboard_port`: 管理后台端口(可选)
2.3 启动 frp 服务端
bash
./frps -c frps.ini
可以使用 `nohup` 或 `systemd` 持久化运行。
3、在内网设备上安装 frp 客户端
bash
下载 frp 客户端
wget https://github.com/fatedier/frp/releases/download/v0.53.0/frp_0.53.0_linux_amd64.tar.gz
解压
tar -zxvf frp_0.53.0_linux_amd64.tar.gz
cd frp_0.53.0_linux_amd64
3.1 配置 `frpc.ini`
ini
[common]
server_addr = your_server_ip
server_port = 7000
[web]
type = http
local_port = 80
remote_port = 8081
`server_addr`: 云服务器公网IP
`server_port`: frps 监听端口(7000)
`type`: 协议类型(http、tcp、https 等)
`local_port`: 内网服务端口(如 Web 服务 80)
`remote_port`: 外网访问端口(如 8081)
3.2 启动 frp 客户端
bash
./frpc -c frpc.ini
4、外网访问
访问以下地址即可:
http://your_server_ip:8081
如果配置了 `vhost_http_port`,也可以直接使用 `http://your_server_ip`(需域名绑定)。
方案2:使用 `ngrok`(适合快速测试)
`ngrok` 是一个简单易用的内网穿透工具,支持 HTTP/HTTPS 和 TCP。
1、注册并获取 token
访问 [https://ngrok.com](https://ngrok.com)
注册账号,获取 `authtoken`
2、安装 ngrok
bash
下载 Linux 版本
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
unzip ngrok-stable-linux-amd64.zip
3、配置并启动
bash
使用 token 登录
./ngrok authtoken your_token_here
映射本地 80 端口
./ngrok http 80
4、获取公网地址
成功后会返回一个公网地址,如:
https://abc123.ngrok.io
方案3:使用 SSH 隧道(适合临时访问)
如果只是临时需要访问内网服务,可以使用 SSH 隧道。
1、在内网设备上建立 SSH 隧道
bash
ssh -R 8080:localhost:80 user@your_server_ip
`-R`: 反向隧道,将服务器的 8080 端口映射到内网的 80 端口
`user`: 云服务器用户名
`your_server_ip`: 云服务器公网IP
2、外网访问
访问:
http://your_server_ip:8080
三、安全建议
1、限制访问权限:
使用 `frp` 的 `dashboard_user` 和 `dashboard_pwd`
配置防火墙(如 `ufw`)只允许必要端口
使用 SSH 密钥登录,禁用密码登录
2、使用 HTTPS:
为 Web 服务配置 SSL 证书(如 Let's Encrypt)
使用 `frp` 的 `https` 类型或反向代理(Nginx)
3、避免暴露敏感服务:
不要直接暴露数据库、SSH、RDP 等服务
使用 `frp` 的 `tcp` 类型并配合白名单或认证
四、常见问题
Q1:为什么连接不上?
检查云服务器防火墙是否开放端口(如 7000、8080)
检查内网设备是否能访问云服务器
检查 `frpc.ini` 配置是否正确
Q2:如何使用域名?
在域名服务商绑定域名到云服务器 IP
在 `frp` 配置中使用 `subdomain` 或 `host` 字段
配置 Nginx 或 `frp` 的 `vhost` 支持 HTTPS
Q3:如何持久化运行?
使用 `systemd` 创建服务(推荐)
或使用 `nohup` + `&` 后台运行
五、总结
| 方案 | 优点 | 缺点 |
|
| `frp` | 功能强大,支持多种协议,可自建 | 需要配置,略复杂 |
| `ngrok` | 快速上手,无需配置 | 免费版有延迟,不适合生产 |
| `SSH 隧道` | 简单,无需额外工具 | 仅支持临时访问 |
✅ 推荐使用 frp 搭建内网穿透,适合长期使用和生产环境。
如果你需要我提供完整的 `frp` 配置文件模板或 `systemd` 服务脚本,也可以告诉我你的具体需求(如内网服务类型、是否需要 HTTPS 等)。
📣 商家广告:





0
IP地址: 226.160.124.139
搜索次数: 0
提问时间: 2025-11-11 01:52:41
🛒 域名购买:
72.gs
vg.gs
lb.gs
s-k.com.cn
363.net.cn
ty.gs
83.gs
vj.gs
lansou.cn
287.net.cn
❓️ 热门提问:
ip地址重新获取
网上加速器下载
b2b网站建设报价
360服务器杀毒软件
pythonwebsocket服务器
爱尚托管
服务主机:网络服务
网吧电脑主机
云主机 速度
机箱的价位
豌豆Ai站群搜索引擎系统
🌐 域名评估:
tesla.ln.cn
catl.tj.cn
oo.nx.cn
xc6.net
su.bj.cn
evtol.fan
dd.nm.cn
rzy.gs
trump.tj.cn
ee.js.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
网站搜索
一站式搜索平台
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。