frp内网穿透实战
什么是frp
frp是一个使用非常简单的开源内网穿透软件,代码地址:https://github.com/fatedier/frp ,使用条前提你需要有一台公网服务器,大致原理是:公网服务器监听某个端口等待内网服务器连接,内网服务器连接成功后用户访问公网的某一个端口,访问的所有内容都会转发到内网服务器,也就是所有的请求都会经过公网服务器转发一次,还不是真正的完全内网穿透。
准备工作
- 准备一台公网服务器,内网服务器可以直接用本地电脑模拟;
- 本地电脑准备一个可访问的 http://127.0.0.1:8080 地址供测试;
- 2端各下载好对应平台软件,下载地址:https://github.com/fatedier/frp/releases

配置&启动
公网服务器
tar -zxvf frp_0.43.0_linux_amd64.tar.gz
mv frp_0.43.0_linux_amd64 frps
cd frps
# 删除客户端相关无用文件
rm -rf frpc*
vim frps.ini
frps.ini配置:
[common]
# 等待内网服务器连接的端口
bind_port = 7000
# 最终用户访问的端口(http)
vhost_http_port = 7080
# 最终用户访问的端口(https)
vhost_https_port = 7081
# 密钥,最好设置,避免你的服务器被他人冒用
token = 123456
启动:./frps -c ./frps.ini,不出意外的话就启动成功了:

内网服务器
也就是你本机,假设以Mac为例:
tar -zxvf frp_0.43.0_darwin_arm64.tar.gz
mv frp_0.43.0_darwin_arm64 frpc
cd frpc
# 删除服务端相关文件
rm -rf frps*
vim frpc.ini
frpc.ini配置:
[common]
# 你的公网IP
server_addr = 112.*.*.*
# 前面设置的连接端口
server_port = 7000
# 前面设置的密钥
token = 123456
# 这个名字可以随便取web1、web2等,但是需要保证所有客户端唯一
[web1]
type = http
# 需要转发的内网端口
local_port = 8080
# 自定义域名,如果没有域名直接填写公网服务器的IP
custom_domains = 112.*.*.*
然后启动:./frpc -c ./frpc.ini,不出意外的话已经内网穿透成功了:

访问 http://公网IP:7080 返回的应该是 http://127.0.0.1:8080 的内容。
进阶
自定义域名
直接使用IP最多只能允许一台内网服务器访问连接,自定义域名可以解决此问题。内网服务器将custom_domains修改为一个能指向公网服务器的域名,例如:
custom_domains = testfrp.haoji.me
然后访问:http://testfrp.haoji.me:7080 即可看到 http://127.0.0.1:8080 的内容。
只使用一个端口
公网服务器的vhost_port其实可以和bind_port保持一致,这样可以更好理解:
[common]
bind_port = 7000
vhost_http_port = 7000
vhost_https_port = 7000
token = 123456
然后访问:http://testfrp.haoji.me:7000 即可看到 http://127.0.0.1:8080 的内容。
隐藏访问端口
用户访问的时候还需要带一个端口,访问不太方便,可以利用nginx再转发一层:
server {
listen 80;
server_name testfrp.haoji.me;
location / {
proxy_pass http://testfrp.haoji.me:7000;
}
}
然后访问:http://testfrp.haoji.me 即可看到 http://127.0.0.1:8080 的内容,实现了最完美的内网穿透。
frp内网穿透实战的更多相关文章
- 【网络】内网穿透方案&FRP内网穿透实战(基础版)
目录 前言 方案 方案1:公网 方案2:第三方内网穿透软件 花生壳 cpolar 方案3:云服务器做反向代理 FRP简介 FRP资源 FRP原理 FRP配置教程之SSH 前期准备 服务器配置 下载FR ...
- frp内网 穿透映射使内网svn可外网访问
起因 公司svn目前部署在内网服务器上,现在想在家中也可以使用,因此需要外网访问内网的工具 经过 使用过几个产品: utools,一个小巧的windows下的工具,内网映射只是它的一个小功能,支持tc ...
- 树莓派FRP内网穿透及自启动
内网穿透的步骤和文件存档 实验室在远方部署了电脑主机来采集数据和图片,每次去调试会很麻烦,因而使用FRP内网穿透使得我们可以在实验室访问主机. 主要功能 实现远程可访问和开机自启FRP程序服务 安装和 ...
- Frp内网穿透搭建,家庭主机对外提供接口,支持ssh访问
Frp内网穿透搭建,家庭主机对外提供接口,支持ssh访问 1.使用场景: 需求1.家中服务器 ubuntu 主机,跑接口服务,需要对外暴漏, 需求2.同时需要在外网ssh远程 关键词: frp内网 ...
- frp 内网穿透访问内网Web服务
ps:最近想要通过域名(公网)访问或者测试在本地搭建的 web 服务(不想在公网IP服务器上再部署个服务,也不想通过teamview等工具远程卡到爆!), 由于本地机器没有公网 IP,无法将域名解析到 ...
- frp内网穿透学习
前言 因为自己在内网,但是目标站在外网,这时候可以通过内网穿透工具,将接收到的请求转发到内网,实现在内网的msf可以控制外网的靶机. 也看了一些Ngrok,花生壳的,发现Ngrok.cc这个看文章说有 ...
- [svc]frp内网穿透
什么是穿透 可以任意暴漏内网任何服务,加入你在你的办公网络有台pc,可以上网就可以了, 你可以在你电脑上安装各类服务器, 暴漏如80 22等端口, 注意 这可以暴漏到公网哦, 在出口不做任何nat情况 ...
- frp内网穿透
原理 frp(fast reverse proxy)分为Server端和Client端,Server端安装在带有公网IP的服务器上,Client安装在内网环境但能上网的普通PC中. 流程: Serve ...
- 五、frp内网穿透客户端frpc.ini各配置参数详解
[必须]标识头[common]是不可或缺的部分 [必须]frps服务端IPserver_addr = 0.0.0.00.0.0.0为FRP服务端IP,客户端要填写为服务端已配置的对应的IP,或者是服务 ...
随机推荐
- Linux,Centos系统下配置java Jdk(附下载地址)
一.下载jdk 官网下载地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 需要登录Oracle ...
- 强化学习-学习笔记5 | AlphaGo
本文不是论文阅读笔记,只是一个学习笔记,重在理解,在严谨程度上可能稍差. AlphaGo 论文指路: Mastering the game of Go with deep neural network ...
- P1087 FBI树 [2004普及]
这是个正常的.很简单的分治,然后我成功地将这个题搞成了一个贼难搞的东西 还是说一下我那个非常麻烦的思路: 1. 建树 2. 后序遍历 然后就在建树的过程中死循环了,然后还一堆毛病 看了一个AC代码,该 ...
- 关于 用fscanf读文件,把文件中用##分割的内容分开
今天呀,被学弟问了一个问题 文件里存的是"123##456##0##1644444.....##" 为什么用fscanf(fp, "%s##%s......", ...
- 各大厂的语音识别Speech To Text API使用体验
最近发现有声读物能极大促进我的睡眠,但每个前面都有一段开场语,想把它剪掉,但是有多个开场语,所以就要用到语音识别判断一下再剪. 前两年在本地搭建过识别的环境,奈何识别准确率不行,只能找找API了,后面 ...
- C#Lambda表达式演变和Linq的深度解析
Lambda 一.Lambda的演变 Lambda的演变,从下面的类中可以看出,.Net Framwork1.0时还是用方法实例化委托的,2.0的时候出现了匿名方法,3.0的时候出现了Lambda. ...
- ADB命令用法大全
一.ADB简介 Android Debug Bridge,安卓调试桥,它借助adb.exe(Android SDK安装目录platform-tools下),用于电脑端与模拟器或者真实设备交互:使用 ...
- SpringCloud之nacos
以下是官网文档中个人感兴趣的部分整理,官方完整文档链接如下: Nacos 官方文档 1.nacos是什么? 1.1 概念:快速实现动态服务发现.服务配置.服务元数据及流量管理. 简单来说就是发现.配置 ...
- MySQL查询性能优化七种武器之链路追踪
MySQL优化器可以生成Explain执行计划,我们可以通过执行计划查看是否使用了索引,使用了哪种索引? 但是到底为什么会使用这个索引,我们却无从得知. 好在MySQL提供了一个好用的工具 - opt ...
- Java SE 15 新增特性
Java SE 15 新增特性 作者:Grey 原文地址:Java SE 15 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...