使用 frp 进行内网穿透
frp 是一个开源的内网穿透工具,可以使外网设备访问内网防火墙后的设备/服务器。
比如可以买一个 99元/年 的阿里云低配 ECS,然后把自己相对高配的旧电脑放在家里。
家里的旧电脑通过 frp 连上 ECS 之后,外网设备就可以通过 ECS 访问这台旧电脑了。
这种方案适合搭建自己的代码管理系统、CI/CD、个人博客、小型论坛、股票系统等等。
server 端(阿里云ECS)的配置
# #################################
# frps.yaml - frp 服务端配置
# 说明:此文件仅用于阅读和管理
# #################################
# 绑定的服务监听地址(默认仅本地回环),如需公网访问请设置为 0.0.0.0
bindAddr: "0.0.0.0"
# frp 服务默认监听 7000 端口(供家里旧电脑使用)
bindPort: 7000
# 可选:使用 KCP 协议加速(UDP)时监听的端口
# kcpBindPort: 7000
# 可选:QUIC 协议监听端口(建议单独配置)
# quicBindPort: 7001
# 可选:UDP 协议端口(供 UDP 转发使用)
# bindUdpPort: 7002
# 设置 token,用于客户端认证
authentication:
method: "token" # 可选:"token"、"oidc"
token: "your_secure_token_here"
# 是否启用 TLS 加密
# transport:
# tls:
# enable: true
# certFile: "/path/to/cert.pem"
# keyFile: "/path/to/key.pem"
# 仪表盘 dashboard 配置(用于查看连接状态)
webServer:
addr: "0.0.0.0" # 监听地址(本地可设为127.0.0.1,公网需设为0.0.0.0)
port: 7500 # dashboard 监听端口
user: "admin" # 登录用户名(可选)
password: "admin" # 登录密码(可选)
# tlsEnable: false # dashboard 是否启用 HTTPS(默认 false)
# 日志相关配置
log:
level: "info" # 日志级别:trace, debug, info, warn, error
to: "./frps.log" # 日志输出文件路径(默认 stdout)
maxDays: 7 # 日志保留天数
disablePrintColor: false
# 最大客户端连接数限制
maxPoolCount: 100
# TCP 多路复用(提升性能)
tcpMux:
enable: true
# keepaliveInterval: 60
# 是否允许客户端访问 frps 的配置接口(高危)
# allowPorts: [80, 443, 22] # 控制哪些端口可被客户端映射
# 控制哪些客户端可以连接(基于 ID 认证,可选)
# clients:
# - id: clientA
# token: abc123
# 允许的代理类型
# allowProxyTypes:
# - tcp
# - udp
# - http
# - https
# - stcp
# - xtcp
# 自定义 DNS 解析器
# dnsServer: "8.8.8.8"
# 自定义端口映射范围限制(防止乱用)
# portRange:
# min: 10000
# max: 20000
client 端(家里旧电脑)的配置
# #################################
# frpc.yaml - frp 客户端配置
# #################################
# 服务器的 ip
serverAddr: "x.x.x.x"
# 服务器的端口(与服务端 bindPort 对应)
serverPort: 7000
# 客户端身份认证(与服务端 token 必须一致)
authentication:
method: "token"
token: "your_secure_token_here"
# 可选:客户端自己的唯一 ID(用于多客户端场景)
# user: "my-client-id"
# 日志相关设置
log:
level: "info" # 可选:trace, debug, info, warn, error
to: "./frpc.log" # 日志输出路径
maxDays: 7 # 日志保留天数
disablePrintColor: false # 是否禁用彩色输出
# TCP 多路复用(默认开启)
tcpMux:
enable: true
# 连接 frps 的协议类型(可选:tcp, kcp, quic, websocket, wss)
# transport:
# protocol: "tcp"
# #################################
# 定义需要穿透的服务(proxies)
# 支持多个,格式类似数组项
# #################################
proxies:
# 此处开启一个 ssh 服务
- name: "ssh" # 内网服务的名称(可任意)
type: "tcp" # 基于 tcp
localIP: "127.0.0.1" # 从公网访问内网服务的地址,默认为本机的 "127.0.0.1"
localPort: 22 # 从公网访问内网服务的端口,默认为本机的 22 端口(ssh-server)
remotePort: 7001 # 公网通过 "ssh -o Port=7001 root@x.x.x.x" 访问 frp 客户端的 ssh-server,即:frps 服务器的 7001 端口的数据都会被转发给内网的 ssh 服务
# 此处开启一个 http 服务
- name: "web" # 内网服务的名称(可任意)
type: "http" # 基于 tcp
localPort: 8200 # 暴露给公网用户的端口,可以通过 http://x.x.x.x:8200 访问内网的 http 服务器
remotePort: 8200 # 公网映射端口
# customDomains: "www.yourdomain.com" # 自定义域名(如开启,取消前面的注释)
# STCP 加密通道(适合内网 P2P)
# - name: "secure-service"
# type: "stcp"
# localPort: 9000
# secretKey: "shared_key"
# UDP 穿透示例(如 DNS)
# - name: "dns"
# type: "udp"
# localPort: 53
# remotePort: 1053
# #################################
# 可选:插件、自定义域名、多用户、TLS等高级配置
# #################################
# 支持插件,如 HTTPS → 本地 HTTP 转换
# - name: "https-plugin"
# type: "https"
# plugin:
# name: "https2http"
# localAddr: "127.0.0.1:80"
# crtPath: "/path/to/cert.crt"
# keyPath: "/path/to/cert.key"
# hostHeaderRewrite: "127.0.0.1"
使用 frp 进行内网穿透的更多相关文章
- 疫情之下,使用FRP实现内网穿透,远程连接公司电脑进行办公
当前情况下,经常会有需要到公司电脑进行一些操作,比如连接内网OA,数据库或者提交文档.为了减少外出,将使用frp进行内网穿透的方法进行一个说明. 前提条件 1. 一台拥有公网 IP 的设备(如果没有, ...
- 基于frp的内网穿透实例4-为本地的web服务实现HTTPS访问
原文地址:https://wuter.cn/1932.html/ 一.想要实现的功能 目前已经实现将本地的web服务暴露到公网,现想要实现https访问.(前提:已经有相应的证书文件,如果没有就去申请 ...
- frp实现内网穿透
frp实现内网穿透 目标 通过外网访问内网设备,本文中实现通过手机的移动流量,可以访问到树莓派设备 设备准备 需要被访问的设备(本文中使用Raspberry Pi`).公网IP设备(本文中使用阿里云 ...
- frp+nginx内网穿透
frp+nginx内网穿透 背景:自己有台内网Linux主机,希望被外网访问(ssh.http.https): 准备工作 内网Linux主机-c,可以访问c主机和外网的主机-s(windows/lin ...
- 使用frp进行内网穿透,实现ssh远程访问Linux服务器
搭建一个完整的frp服务链需要: VPS一台(也可以是具有公网IP的实体机) 访问目标设备(就是你最终要访问的设备) 简单的Linux基础(如果基于Linux配置的话) 我这里使用了腾讯云服务器作为服 ...
- frp 用于内网穿透的基本配置和使用
frp 用于内网穿透的基本配置和使用 今天是端午节,先祝端午安康! frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便 ...
- 分享下超实用的用skura frp做内网穿透的经验
操作目的: 使无公网ip的主机能被外网访问,实现ssh对服务器的远程管理 硬件准备: 1.服务端:skura frp主机(skura frp 免费提供,有待创建) 2.客户端:接在无线路由器(内网)上 ...
- 使用FRP做内网穿透
Github地址:https://github.com/fatedier/frp 什么是FRP? frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 h ...
- 如何使用 frp 实现内网穿透
这有一个专注Gopher技术成长的开源项目「go home」 背景 作为一名程序员,家里多多少少会有一些落了灰的电脑,如果把闲置的电脑变成服务器,不仅有良好的配置,还能用来做各种测试,那就再好不过了. ...
- 基于frp的内网穿透实例1-通过SSH访问内网机器
原文地址:https://wuter.cn/1804.html/ 老母鸡终于到了,作为一个能运行linux系统的四核1G硬件,它还是比较小巧的. FRP 全名:Fast Reverse Proxy.F ...
随机推荐
- 腾讯地图web端请求报错113.该功能未授权
问题描述: 请求地址:https://apis.map.qq.com/jsapi?qt=geoc&addr=%2C%2C%2C&key=你的key&output=jsonp&a ...
- 解决 Ubuntu 22.04 下 flameshot 截图工具无法使用的问题
问题描述 flameshot 是 Linux 端广受好评的一款截图工具,但在 Ubuntu 22.04 中,安装完成后却不能使用,表现为截图命令无响应,或截图过程报错. 通过查阅 flameshot ...
- Easyexcel(5-自定义列宽)
注解 @ColumnWidth @Data public class WidthAndHeightData { @ExcelProperty("字符串标题") private St ...
- halo配置踩坑过程小记
写在最前: 终于搞定了最后的一步域名解析配置,其实动态博客的折腾程度也不低于当时的hexo吧,也可能当时的痛苦过程已经忘了..整理一下思路,记录一下配置过程走过的坑. 我是从hexo用了半年想 ...
- Open-Sora 2.0 重磅开源!
潞晨科技正式推出 Open-Sora 2.0 -- 一款全新开源的 SOTA 视频生成模型,仅 20 万美元(224 张 GPU)成功训练商业级 11B 参数视频生成大模型.开发高性能的视频生成模型通 ...
- 事务及mysql中的隔离级别
事务,一个或一组sql语句组成的执行单元,是最小的执行单元,要么全执行,要么全不执行.如果单元中某条sql语句执行失败,整个单元将会回滚,所有受影响的数据返回到事务开始前的状态. 事务具有ACID四个 ...
- ubuntu apt 安装报错:Media change: please insert the disc labeled 'Ubuntu 20.04.5 LTS Focal Fossa - Release amd64 (20220831)' in the drive '/cdrom/' and press [Enter]
前言 如果你在 Ubuntu 上使用 apt 安装软件包时遇到 "Media change: please insert the disc labeled ..." 的错误消息,这 ...
- Golang 入门 : Go语言介绍
简介 Go 语言又称 Golang,由 Google 公司于 2009 年发布,近几年伴随着云计算.微服务.分布式的发展而迅速崛起,跻身主流编程语言之列,和 Java 类似,它是一门静态的.强类型的. ...
- BUUCTF---rsa2
题目 N = 101991809777553253470276751399264740131157682329252673501792154507006158434432009141995367241 ...
- 面试题-MyBatis框架
前言 MyBatis框架部分的题目,是我根据Java Guide的面试突击版本V3.0再整理出来的,其中,我选择了一些比较重要的问题,并重新做出相应回答,并添加了一些比较重要的问题,希望对大家起到一定 ...