智享教程网
白蓝主题五 · 清爽阅读
首页  > 日常经验

外网访问内网服务器?这几种方法亲测能用

家里搭了个 NAS,或者公司有台测试服务器跑在内网,想在外面用手机或笔记本连上它?别急着买云服务器——其实只要几步配置,就能让外网“敲开”你家内网的大门。

为什么不能直接连?

内网设备(比如 192.168.1.100)没有公网 IP,就像住在小区里没挂门牌号的住户,快递员(外网请求)根本找不到你。路由器默认也会把外部进来的连接挡在外面,这是安全保护,但也是拦路虎。

常见靠谱方案对比

① 路由器端口映射(最简单)
适合有公网 IP 的家庭宽带(可打运营商客服问:我家宽带有没有固定公网 IP?)。登录路由器后台(一般是 192.168.1.1 或 tplogin.cn),找到「虚拟服务器」或「端口转发」,填上:

外部端口:8080
内部 IP:192.168.1.100
内部端口:80
协议:TCP

保存后,外网用 http://你的公网IP:8080 就能打开内网网站了。注意:有些 ISP 会封 80、443 端口,换 8080、3000 这类更稳妥。

② 内网穿透工具(无公网 IP 也能用)
推荐 frp 或花生壳(免费版够日常用)。以 frp 为例,在内网服务器上跑 frpc,在有公网 IP 的 VPS 上跑 frps,配置好后,VPS 的域名就变成你内网服务的“中转站”。

# frpc.ini 示例
[web]
type = http
local_port = 80
custom_domains = myhome.example.com

配好后,外网访问 myhome.example.com 就自动跳转到你家 192.168.1.100 的网页服务。

③ SSH 反向隧道(临时应急很香)
手头只有一台能连外网的 Linux 服务器?在内网机器上执行一句命令,就能把它“反向挂”到那台服务器上:

ssh -R 2222:localhost:22 user@vps-ip

之后在外网连 ssh -p 2222 user@vps-ip,就等于直连你家内网机的 SSH。适合调试、传文件、查日志这类短时操作。

安全提醒(划重点)

开了外网入口,千万别裸奔:
• 服务账户设强密码,禁用 root 直连 SSH;
• 路由器后台改掉默认管理员密码;
• frp/花生壳尽量开启 token 验证;
• 不需要的服务端口(比如数据库 3306)别映射出去。

前两天邻居老张用端口映射把家里的摄像头推到外网,结果没改密码,被人扫到了,画面全被录走……安全这事,真不是吓唬人。