LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

[点晴永久免费OA]使用 FRP STCP 模式构建隐形内网穿透安全访问通道

admin
2026年2月9日 20:0 本文热度 257

在内网穿透的场景中,大家最熟悉的可能是 frp 的 TCP 模式:在公网服务器开一个端口(例如 6000),直接映射到家里的 RDP(3389)或者SSH(22)。

虽然方便,但可能会有点不够安全。这意味着任何扫描公网 IP 的黑客都能直接触达你的 RDP 登录界面,暴力破解随之而来。

今天我们介绍一种更高级、更安全的架构:FRP STCP (Secret TCP) 模式。它不需要在公网防火墙开放业务端口,让你的内网服务在互联网上“隐身”。

1. 核心原理与架构图

1.1 什么是 STCP?

STCP 模式采用了“双端验证”机制。它引入了一个 Visitor(访问者) 的角色。

  • • 传统 TCP 模式:公网服务器开窗户,谁都能看。
  • • STCP 模式:公网服务器不开窗。如果你想连接,必须在你的本地电脑上也运行一个 frp 客户端(Visitor),并持有正确的密钥 (sk)

所有流量通过 frp 的主通信端口(通常是 7000)进行封装多路复用传输,外部看起来只有一条普通的 TCP 长连接。

1.2 流量架构图

下图展示了当你执行 SSH 连接时的流量走向:

流程解析:

  1. 1. 本地请求:你在本机访问 127.0.0.1:33389
  2. 2. 加密封装:本机的 frpc (Visitor) 拦截请求,验证密钥,将数据打包。
  3. 3. 隧道传输:数据包通过公网 7000 端口传给服务器,frps 不感知具体业务协议(如 RDP/SSH),仅作为 frp 隧道的转发节点。
  4. 4. 内网解包:内网 frpc 收到数据,解包后转发给真实的 RDP 服务。

2. 环境准备

  1. 1. 公网服务器 (VPS):拥有公网 IP (例如 1.1.1.1)。
  2. 2. 内网机器:需要被访问的机器 。
  3. 3. 访问设备:你随身带的笔记本电脑。

3. 搭建步骤

第一步:配置公网服务器 (frps)

在 VPS 上修改 frps.toml,配置如下。

[common]
bind_addr = 0.0.0.0
bind_port = 7000
bind_udp_port = 7001
log_file = /usr/frp/frps.log
# trace, debug, info, warn, error
log_level = info
log_max_days = 3

# set dashboard_addr and dashboard_port to view dashboard of frps
# dashboard_addr's default value is same with bind_addr
# dashboard is available only if dashboard_port is set
dashboard_addr = 0.0.0.0
dashboard_port = 7500

# dashboard user and pwd for basic auth protect, if not set, both default value is admin
dashboard_user = admin
dashboard_pwd = dashbord_password

# auth
authentication_method = token

启动服务端:

Bash

./frps -c frps.toml

第二步:配置内网服务提供者 (frpc Provider)

在内网机器(NAS/Linux)上修改 frpc.toml。这里我们定义一个暗号(密钥)。

# frpc.toml (内网机器)
[common]
server_addr = 1.1.1.1
server_port = 7000
token = MySecretToken123
login_fail_exit = false
# 定义一个 stcp 规则
[secret_rdp]
type = stcp
use_encryption = true
use_compression = true
sk = abcdefg_123456
local_ip = 127.0.0.1
local_port = 3389

启动内网客户端:

Bash

./frpc -c frpc.toml

注意:此时公网服务器上不会开启任何新的端口。

第三步:配置访问者 (frpc Visitor)

这是最关键的一步。在你随身携带的笔记本上,也需要运行一个 frpc

# frpc_visitor.toml (笔记本电脑)
[common]
server_addr = 1.1.1.1
server_port = 7000
token = MySecretToken123

# 这里的名字随便起,但要标识这是 visitor
[secret_rdp_visitor]
type = stcp
role = visitor
# server_name 必须与内网机器配置的中括号名称一致!
server_name = secret_rdp
use_encryption = true
use_compression = true
# sk 必须与内网一致
sk = abcdefg_123456
# 绑定到笔记本本地的端口
bind_addr = 127.0.0.1
bind_port = 33389

在笔记本上启动:

Bash

./frpc -c frpc_visitor.toml

4. 如何连接?

现在,你的笔记本上的 33389 端口就是通往家里的传送门。

打开远程桌面输入,用户名、密码即可访问家里的远程桌面。




5. 深度分析:为什么这比普通模式好?

你可能会问:“都要装客户端,为什么不直接用 TCP 模式开个 6000 端口?”

我们可以对比一下优劣:

特性普通 TCP 模式STCP 安全模式
公网端口暴露
 (如 6000)
隐藏
 (只有 7000)
被扫描风险
极高,会被全网扫描器探测
极低,扫描器无法探测业务
攻击面
任何 IP 均可尝试爆破密码
仅持有 sk 的客户端可建立连接
访问控制
依赖防火墙或 RDP 自身强度
依赖 FRP 密钥签名 + RDP 自身
适用场景
公开的 Web 服务
私有的 SSH、VNC、RDP、数据库

总结

STCP 模式的核心在于**“收敛”。

它将原本暴露在公网的高风险端口(22, 3389 等),收敛到了你完全可控的本地环回地址 (127.0.0.1)**。对于运维管理、远程办公等私密需求,强烈建议使用 STCP 模式替代传统的 TCP 端口映射。


阅读原文:原文链接


该文章在 2026/2/10 16:36:25 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved