你是不是也遇到过这种情况:本地开发好了一个网页、接口或者服务,想让朋友访问一下、测试一下,结果对方根本连不上?明明你 localhost 跑得好好的,别人却打不开。
别急,这种时候就该用上一个神器级操作:内网穿透 + 云服务器中转。
小编今天就来手把手教你,如何用一台云服务器,实现内网穿透,让你本地的项目跑到公网可访问!
一、什么是内网穿透?为啥要用云服务器?
简单来说,内网穿透就是把你电脑里本地运行的服务(比如网站、API、数据库管理面板),映射到公网可访问的地址上。
而云服务器正好有公网IP和稳定带宽,我们可以把它作为“中转跳板”,来完成穿透动作。
你可以用这个方法实现:
- 让公网访问你本地的 Web 项目
- 把本地的接口开放给远程设备调用
- 远程调试内网的服务(比如手机、树莓派、NAS)
核心原理: 本地启动一个客户端,连接到云服务器;云服务器转发外网请求给你本地,从而实现“穿透”。
二、内网穿透实现流程(以 frp 为例)
我们用开源项目 FRP(Fast Reverse Proxy) 来做穿透,支持 TCP、HTTP、HTTPS 多种协议,非常轻量,部署简单,适合 VPS 用户。
👇下面是详细步骤,建议收藏!
第 1 步:准备一台云服务器
推荐使用轻量型 VPS,例如:
要求:
- 已开通公网IP
- 能开放端口(firewall 或安全组要放行)
建议使用 Ubuntu 系统,方便演示操作。
第 2 步:在 VPS 上部署 frps(服务端)
登录你的云服务器:
ssh root@你的服务器IP
下载并解压 FRP(以 Linux x86_64 为例):
wget https://github.com/fatedier/frp/releases/download/v0.58.0/frp_0.58.0_linux_amd64.tar.gz
tar -zxvf frp_0.58.0_linux_amd64.tar.gz
cd frp_0.58.0_linux_amd64
修改服务端配置 frps.ini
:
[common]
bind_port = 7000
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin
运行 frps:
./frps -c frps.ini
🧠 记得开放服务器的 7000 和 7500 端口!
第 3 步:在你本地电脑上配置 frpc(客户端)
Windows / macOS / Linux 都支持,用法类似。
下载同版本的客户端(https://github.com/fatedier/frp/releases)
解压后,修改 frpc.ini
文件:
[common]
server_addr = 你的云服务器IP
server_port = 7000
[web]
type = http
local_port = 8080
custom_domains = yourname.example.com
或使用 TCP 转发:
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
运行:
./frpc -c frpc.ini
此时你就可以通过 http://yourdomain
或 http://云服务器IP:remote_port
来访问你本地服务!
三、用 Cloudflare Tunnel 实现免服务器内网穿透(进阶可选)
如果你不想买云服务器,也可以直接用 Cloudflare Tunnel 实现免公网IP访问:
# 安装 cloudflared
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64
chmod +x cloudflared-linux-amd64
mv cloudflared-linux-amd64 /usr/local/bin/cloudflared
# 登录 Cloudflare
cloudflared login
# 启动隧道,将本地 8080 映射出去
cloudflared tunnel --url http://localhost:8080
适合临时测试、无需配置端口!
四、小编的实测建议与避坑提醒
- 推荐用 frp+VPS 的方式,控制力更强,适合长期运行;
- VPS 不建议用最低配,如果你穿透多个服务或多线程项目,建议至少 1 核 2G;
- 记得开放服务器防火墙端口!没开 7000、7500 会连不上;
- 本地程序必须监听 0.0.0.0 或 localhost,否则穿透后可能访问不到;
- frp 支持 TLS、认证、压缩、日志,可以配置得很强大,但别一开始就全开,先跑起来再调。
五、常见问题解答
1. 内网穿透安全吗?
合理配置下是安全的,建议启用密码验证 + TLS 加密。
2. 用云服务器做跳板会被封吗?
只要不做违法用途(如搭建代理服务),普通穿透完全没问题。
3. frp 支持哪些协议?
HTTP、HTTPS、TCP、UDP、STCP、自定义域名等都支持。
4. 穿透后的访问速度快吗?
主要取决于你本地网络和 VPS 带宽,建议选延迟低的节点(如邻近地区)。
5. 可以绑定域名吗?
可以,将你的域名 A 记录指向 VPS IP,再在 frp 配置中写 custom_domains
。
过去内网穿透听起来像很高级的操作,现在有了 frp + VPS,普通用户也能轻松实现。
它可以让你:
- 远程访问你家 NAS / 路由器面板
- 让朋友体验你本地做的小网站
- 在公网远程调试你正在开发的项目
只需要一台 VPS,一段配置文件,你就能让你的服务穿透“防火墙”,进入真正的互联网!