简介
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
项目地址
linux 配置方式见如下链接🔗
frp 实验 : 通过 SSH 访问内网机器
公网 IP 的机器上(1.1.1.1)
部署 frps,修改 frps.ini 文件,这里使用了最简化的配置,设置了 frp 服务器用户接收客户端连接的端口:
[common]
bind_port = 7000
启动 frps
内网机器上(172.16.1.1)
部署 frpc,修改 frpc.ini 文件
[common]
server_addr = 1.1.1.1
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
local_ip 和 local_port 配置为本地需要暴露到公网的服务地址和端口。remote_port 表示在 frp 服务端监听的端口,访问此端口的流量将会被转发到本地服务对应的端口。
启动 frpc
外部访问
此时通过 SSH 访问内网机器 172.16.1.1,假设用户名为 test:
ssh -oPort=6000 [email protected]
frp 会将请求 1.1.1.1:6000 的流量转发到内网机器 172.16.1.1 的 22 端口
frp 实验 : 通过 RDP 访问内网机器(STCP)
公网 IP 的机器上(1.1.1.1)
部署 frps,修改 frps.ini 文件
[common]
bind_port = 24880
authentication_method = token
token = token
tls_only = true
启动 frps
./frps -c frps.ini
内网机器上(172.16.1.1)
部署 frpc,修改 frpc.ini 文件
[common]
server_addr = 1.1.1.1
server_port = 24880
authentication_method = token
token = token
tls_enable = true
[frp]
type = stcp
sk = token
local_ip = 127.0.0.1
local_port = 3389
# true 启用加密
use_encryption = false
# true 启用压缩
use_compression = true
启动 frpc
./frpc.exe -c frpc.ini