内网穿透核心作用:把公司局域网内无公网 IP 的服务,映射到公网,居家 / 外出设备通过公网地址直达公司内网资源。
下面分3 类主流方案,从简单免费到企业稳定级,附带部署步骤、安全规范、适用场景。
一、方案选型对比(快速选)
二、方案 1:FRP 自建内网穿透(企业首选,最推荐)
FRP 开源、无流量限制、端口自定义,需要一台公网云服务器(阿里云 / 腾讯云轻量机,几十块一年)。
架构说明
服务端 frps:部署在公网云服务器,对外开放端口;
客户端 frpc:部署在公司内网一台常驻电脑 / 服务器(7×24 开机);
访问流程:居家设备 → 云服务器 frps → 公司 frpc → 内网数据库 / 后台 / 文件服务器。
完整部署步骤
1. 公网服务器部署 frps(Linux)
云服务器安全组放行端口:
FRP 通信端口:7000
面板 / 业务映射端口(举例 8080、3306、22)
下载 frp(适配系统,amd64 通用)
wget https://github.com/fatedier/frp/releases/download/v0.58.1/frp_0.58.1_linux_amd64.tar.gz
tar -zxvf frp_0.58.1_linux_amd64.tar.gz
cd frp_0.58.1_linux_amd64
编辑服务端配置
frps.ini
[common]
bind_port = 7000 # frpc连接端口
token = 你的复杂密码 # 鉴权,防止他人接入
dashboard_port = 7500 # 后台管理面板
dashboard_user = admin
dashboard_pwd = 面板密码
后台常驻启动 frps
./frps -c frps.ini &
2. 公司内网设备部署 frpc(Windows/Linux 通用)
内网服务器下载同版本 frp,编辑
frpc.ini
[common]
server_addr = 云服务器公网IP
server_port = 7000
token = 和服务端一致的密码
# 示例1:映射内网Web后台,内网地址192.168.1.100:80
[web后台]
type = tcp
local_ip = 192.168.1.100
local_port = 80
remote_port = 8080 # 公网访问端口:云IP:8080
# 示例2:映射内网MySQL数据库
[mysql]
type = tcp
local_ip = 192.168.1.200
local_port = 3306
remote_port = 3306
# 示例3:映射内网SSH远程连接服务器
[ssh]
type = tcp
local_ip = 192.168.1.50
local_port = 22
remote_port = 2222
Windows 后台运行:cmd 执行
frpc.exe -c frpc.ini,搭配 nssm 注册系统服务开机自启;Linux 内网机:
./frpc -c frpc.ini &,写入 systemd 实现开机启动。
3. 远程访问方式
居家电脑直接连接云服务器公网 IP+remote_port:
后台网页:
http://云IP:8080MySQL 连接:地址填云 IP,端口 3306
SSH 连接:
ssh root@云IP -p 2222
三、方案 2:Ngrok 快速临时穿透(无需云服务器)
适合临时远程调试、短期居家办公,开箱即用。
1. 官方 Ngrok(国外,延迟高)
官网下载对应系统客户端;
命令映射内网 80 端口:
ngrok tcp 192.168.1.100:80
生成公网地址
0.tcp.eu.ngrok.io:15678,远程直接访问。
2. 国内 Ngrok 替代品(natapp)
国内节点低延迟,免费版带宽有限,付费版稳定:
官网注册,创建隧道,填写内网 IP、端口;
下载客户端,一键启动隧道,获取公网域名直接访问。
四、方案 3:ZeroTier / 蒲公英 虚拟局域网(非技术人员首选)
核心原理
不做端口映射,把家里电脑、公司电脑加入同一个虚拟局域网,两台设备如同在同一个路由器下,直接访问内网 IP,无需配置端口。
蒲公英操作步骤(最简单)
公司常驻电脑、居家电脑都安装蒲公英客户端;
注册账号,创建网络,两台设备加入同一网络;
蒲公英分配虚拟内网 IP,居家设备直接访问公司内网 IP(如 192.168.1.100)。
ZeroTier(完全免费,无设备数量限制)
官网注册,创建 Network 网络 ID;
所有设备安装 ZeroTier 客户端,输入网络 ID 加入;
网页后台允许设备接入,设备间互通内网。
五、内网穿透强制安全规范(重中之重,防止内网被入侵)
内网穿透直接暴露公司内网,安全漏洞会导致全盘数据泄露,必须遵守:
强鉴权
FRP/Ngrok 必须设置复杂 token / 访问密码,禁止空密码;虚拟局域网设置访问审批,陌生设备禁止入网。
最小端口开放
只映射必须使用的端口(后台 80、数据库 3306),不批量开放全端口;云服务器安全组严格限制 IP 白名单,仅允许居家宽带公网 IP 访问穿透端口。
数据库 / 核心服务加固
MySQL、Redis 禁止允许 root 空密码,限制内网访问权限;穿透层不直接暴露数据库,优先搭建 Web 网关中转。
禁用公开免费隧道用于生产
免费 Ngrok/natapp 存在共享节点、流量劫持风险,生产业务必须使用自建 FRP 或企业级蒲公英。
常驻内网设备权限管控
运行 frpc / 蒲公英的公司电脑,关闭不必要共享、高危服务,定期更新系统补丁。
HTTPS 加密 Web 服务
内网后台通过穿透访问时,配置 SSL 证书,使用 https 传输,防止数据抓包泄露。
六、不同场景落地建议
开发团队长期远程、需要访问数据库 / 服务器
选用 FRP 自建穿透,成本低、无流量限制、可控性最强。
行政 / 财务人员,仅需要访问公司共享盘、OA 网页
选用 蒲公英 / ZeroTier 虚拟局域网,无需配置端口,直接访问内网,上手零门槛。
临时居家 1-3 天,临时调试系统
选用 natapp/Ngrok 快速隧道,无需云服务器,即用即关。
七、常见问题排查
外网无法访问穿透地址
云服务器安全组放行对应端口;
公司内网关闭防火墙,放行 frpc 出站流量;
核对 frps 与 frpc 的 token、通信端口一致。
连接卡顿、延迟高
FRP 云服务器选择本地同运营商(南京选华东节点);
免费 Ngrok 国外节点延迟高,更换国内 natapp。
隧道频繁掉线
内网 frpc 注册为系统服务,开机自动重启;
免费隧道带宽、连接数有限,升级付费或自建 FRP。