Github地址:https://github.com/fatedier/frp

什么是FRP?

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。

怎么用FRP

下载FRP

https://github.com/fatedier/frp/releases

配置

此文章使用的是FRP版本为 v0.24.1

FRP的配置很简单,最常见的有两种情况:

  1. 需要通过公网访问内网的SSH/RemoteDesktop
  2. 需要通过公网访问内网的Webserver

对于第一种情况,需要FRP转发TCP即可。

对于第二种情况,需要转发HTTP/HTTPS,FRP支持多虚拟主机,先指定端口,然后根据域名,转发到各个虚拟主机。当然,既然是HTTP/HTTPS,那也可以像第一种情况那样走TCP协议,来达到转发效果。

本文只对反向代理TCP做简要介绍 , 详细配置请参考:https://github.com/fatedier/frp/blob/master/README_zh.md

服务端配置:

[common]
bind_port = 7000 dashboard_user= admin
dashboard_pwd= admin
dashboard_port= 7001 token = 666

启动服务端:

./frps -c ./frps.ini

客户端配置:

[common]
server_addr = 66.66.66.66
server_port = 7000
token = 666 [RDP_Home]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7002
use_encryption = true
use_compression = true [Web_01]
type = tcp
local_ip = 127.0.0.1
local_port = 443
remote_port = 7003
use_encryption = true
use_compression = true

启动客户端:

./frpc -c ./frpc.ini

请读者自行配制防火墙。

参数配置

参数 备注
服务端:
1 bind_port 用于反向代理的端口
2 dashboard_user 通过浏览器查看 frp 的状态以及代理统计信息展示。用户名
3 dashboard_pwd 密码
4 dashboard_port 端口
5 token 只有于客户端一致,才能使用FRP
客户端:
1 server_addr 服务器IP地址
2 server_port 服务器的bind_port
3 token 只有于服务端一致,才能使用FRP
4 type 本文使用的是tcp
5 local_ip 127.0.0.1
6 local_port 端口
7 remote_port 服务器对外端口
8 use_encryption true 启用加密
9 use_compression true 启用压缩

参考

fatedier/frp

声明

本文采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可,发表在CSDN博客园,欢迎读者转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接!请读者/爬虫们尊重版权

使用FRP做内网穿透的更多相关文章

  1. 分享下超实用的用skura frp做内网穿透的经验

    操作目的: 使无公网ip的主机能被外网访问,实现ssh对服务器的远程管理 硬件准备: 1.服务端:skura frp主机(skura frp 免费提供,有待创建) 2.客户端:接在无线路由器(内网)上 ...

  2. frp 用于内网穿透的基本配置和使用

    frp 用于内网穿透的基本配置和使用 今天是端午节,先祝端午安康! frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便 ...

  3. 疫情之下,使用FRP实现内网穿透,远程连接公司电脑进行办公

    当前情况下,经常会有需要到公司电脑进行一些操作,比如连接内网OA,数据库或者提交文档.为了减少外出,将使用frp进行内网穿透的方法进行一个说明. 前提条件 1. 一台拥有公网 IP 的设备(如果没有, ...

  4. 基于frp的内网穿透实例4-为本地的web服务实现HTTPS访问

    原文地址:https://wuter.cn/1932.html/ 一.想要实现的功能 目前已经实现将本地的web服务暴露到公网,现想要实现https访问.(前提:已经有相应的证书文件,如果没有就去申请 ...

  5. frp实现内网穿透

    frp实现内网穿透 目标 通过外网访问内网设备,本文中实现通过手机的移动流量,可以访问到树莓派设备 设备准备 需要被访问的设备(本文中使用Raspberry Pi`).公网IP设备(本文中使用阿里云 ...

  6. frp+nginx内网穿透

    frp+nginx内网穿透 背景:自己有台内网Linux主机,希望被外网访问(ssh.http.https): 准备工作 内网Linux主机-c,可以访问c主机和外网的主机-s(windows/lin ...

  7. 使用frp进行内网穿透,实现ssh远程访问Linux服务器

    搭建一个完整的frp服务链需要: VPS一台(也可以是具有公网IP的实体机) 访问目标设备(就是你最终要访问的设备) 简单的Linux基础(如果基于Linux配置的话) 我这里使用了腾讯云服务器作为服 ...

  8. 如何使用 frp 实现内网穿透

    这有一个专注Gopher技术成长的开源项目「go home」 背景 作为一名程序员,家里多多少少会有一些落了灰的电脑,如果把闲置的电脑变成服务器,不仅有良好的配置,还能用来做各种测试,那就再好不过了. ...

  9. 基于frp的内网穿透实例1-通过SSH访问内网机器

    原文地址:https://wuter.cn/1804.html/ 老母鸡终于到了,作为一个能运行linux系统的四核1G硬件,它还是比较小巧的. FRP 全名:Fast Reverse Proxy.F ...

随机推荐

  1. 纯JavaScript实现页面行为的录制

    在网上有个开源的rrweb项目,该项目采用TypeScript编写(不了解该语言的可参考之前的<TypeScript躬行记>),分为三大部分:rrweb-snapshot.rrweb和rr ...

  2. asp.net EF core 系列 作者:懒懒的程序员一枚

    asp.net core 系列 19 EFCore介绍写作逻辑一 .概述1.1 比较EF Core 和EF61.2 EF Core数据库提供程序 1.3 引用程序添加数据库提供程序1.4 获取Enti ...

  3. 在yum安装lamp的环境下安装coreseek以及php的sphinx扩展

    首先说明下,之前的lamp环境用yum快速安装的现在装一个coreseek学习学习: 在安装前建议安装下这四个东西,以免后续安装报错 $ curl -O -L http://mirrors.kerne ...

  4. 【人类观察所】"当代人"正经历的生活

    一."即时满足"的互联网 "轻微烦躁,偶尔自燃,当代生活多数时刻的心情基调." 如果你出生于上个世纪,应该能明白木心的<从前慢>里的 「从前的日色变 ...

  5. 15-cookie技术和session技术的联系和区别

    ​1. 联系: *session实现依赖于Cookie 2. session问题: * 由服务器创建,存储在服务器 * 当浏览器关闭时,服务器不关闭,再次打开浏览器时, 默认获得的不是同一个sessi ...

  6. [Redis-CentOS7]Redis打开远程连接(十) Could not connect to Redis at 127.0.0.1:6379: Connection refused

    通过网络无法访问Redis redis-cli 172.16.1.111 Could not connect to Redis at 127.0.0.1:6379: Connection refuse ...

  7. Tomcat 核心配置

    tomcat的核心配置在conf/server.xml中. <Server>   根元素 <Server>即Catalina Servlet组件. <Server por ...

  8. element-ui 组件 el-calendar 农历显示问题

    一.官方文档:https://element.eleme.cn/#/zh-CN/component/calendar 发现官方并无农历显示的介绍 二.1. 自己写阳历转阴历的方法或引入别人写好的 JS ...

  9. PG数据库常用操作

    全量迁移 备份数据 $ pg_dump -h 172.19.235.145 -U <username> -d <database> > 20180704_dbpe.sql ...

  10. mysql必知必会--用通配符进行过滤

    LIKE 操作符 前面介绍的所有操作符都是针对已知值进行过滤的.不管是匹配一 个还是多个值,测试大于还是小于已知值,或者检查某个范围的值,共 同点是过滤中使用的值都是已知的.但是,这种过滤方法并不是任 ...