FRP内网穿透实践

前情

FRP是一种内网穿透技术,一般应用于以下场景:

  • 公网服务器资源有限,部分资源需要本地部署,供外网访问
  • 第三方服务(微信支付)需要绑定回调接口,本地测试不便

实战

FRPS部署

FRP分为frps和frpc,为服务端-客户端架构,首先我们先在公网服务器上部署frps。

通常我们可以使用两种方式,一种是使用Docker,一种是去官网下载tar包。

首先介绍Docker下载去下载:

bash 复制代码
docker pull fatedier/frps:v0.60.0

拉取frps镜像。

编写frps.toml配置文件

ini 复制代码
[common]

bind_port = 8000

dashboard_port = 8001

dashboard_user = admin
dashboard_pwd = admin
token = your_token

将文件放入conf文件夹下,然后在conf文件夹同级编写docker-compose.yml文件

yaml 复制代码
# 命令执行 docker-compose -f docker-compose.yml up -d
version: '3.9'
services:
  frps:
    image: fatedier/frps:v0.60.0
    hostname: frps
    container_name: frps
    volumes:
      - "./config/frps.toml:/frps.toml"
    command:
      - "-c"
      - "/frps.toml"
    network_mode: "host"

最后执行:

复制代码
 docker-compose -f docker-compose.yml up -d

进入:http://your_addr:8001 即可进入dashbord

FPRC部署

参考FRPS的部署,不难想到可以通过docker下载再部署:

bash 复制代码
docker pull fatedier/frpc:v0.60.0

但是实际情况下发现,docker下载不了该镜像,哪怕是更改了版本也是如此(也可能是本人的问题)

所以关于FRPC本人是通过官网下载再上传至服务器的:

github.com/fatedier/fr...

这里需要注意!一定要下载和本地系统适配的版本,例如windows。

由于本人还用于内网穿透本地虚拟机上的服务,所以还要下载对应的linux版本,大家的非mac电脑应该都是x86版本,x86的后缀是386。

本人翻阅了相关release后,最新的x86版本为:frp_0.51.3_linux_386.tar.gz

大家根据自己的系统下载即可。

然后编写相关frpc.ini文件,这是本人的,大家参考着部署就好啦:

ini 复制代码
[common]
server_addr = "your_addr"
server_port = 8000
token = "gaoyifeng"

[ssh]
remote_port = 9000
type = "tcp"
local_ip = "127.0.0.1"
local_port = 22

[nginx-alone]
remote_port = 80
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9002

[redis-alone]
remote_port = 6379
type = "tcp"
local_ip = "127.0.0.1"
local_port = 6380

[mysql8-alone]
remote_port = 3306
type = "tcp"
local_ip = "127.0.0.1"
local_port = 3306

[mysql5.7-alone]
remote_port = 3308
type = "tcp"
local_ip = "127.0.0.1"
local_port = 3307

[nacos2-alone-1]
remote_port = 8848
type = "tcp"
local_ip = "127.0.0.1"
local_port = 8848

[nacos2-alone-2]
remote_port = 9848
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9848

[nacos2-alone-3]
remote_port = 9849
type = "tcp"
local_ip = "127.0.0.1"
local_port = 9849

最后通过命令:./frpc -c frpc.ini运行即可。运行完成后可去frps的控制台观察执行情况。

相关推荐
clk660725 分钟前
Spring Boot
java·spring boot·后端
皮皮高1 小时前
itvbox绿豆影视tvbox手机版影视APP源码分享搭建教程
android·前端·后端·开源·tv
弱冠少年1 小时前
golang入门
开发语言·后端·golang
Humbunklung1 小时前
Rust 函数
开发语言·后端·rust
喜欢踢足球的老罗1 小时前
在Spring Boot 3.3中使用Druid数据源及其监控功能
java·spring boot·后端·druid
jakeswang2 小时前
StarRocks
后端·架构
龙云飞谷2 小时前
从原理到调参,小白也能读懂的大模型微调算法Lora
后端
荣江2 小时前
【实战】基于 Tauri 和 Rust 实现基于无头浏览器的高可用网页抓取
后端·rust
寻月隐君2 小时前
Web3实战:Solana CPI全解析,从Anchor封装到PDA转账
后端·web3·github
程序员小假2 小时前
说一说 SpringBoot 中 CommandLineRunner
java·后端