8月21日笔记

Frp

Frp(Fast e Reverse ) Proxy) 是一款简单,好用,稳定的隧道工具。Frp 使用 Go语言开发,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。它是一款高性能的反向代理应用,可以轻松地进行内网穿透,对外网提供服务。Frp 支持 TCP、UDP、KCP、HTTP、HTTPS 等协议类型,并且支持 Web服务根据域名进行路由转发。在进行内网渗透中,FRP 是常用的一款隧道工具。
下载地址:https://github.com/fatedier/frp/releases
Frp 的优势?

  • 客户端服务端通信支持 TCP、UDP、KCP、HTTP、HTTPS 以及Websocket 等多种协议。
  • 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
  • 代理组间的负载均衡。
  • 端口复用,多个服务通过同一个服务端端口暴露。
  • 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
  • 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
  • 服务端和客户端 UI 页面。

Frp 的代理类型

frp 支持多种代理类型来适配不同的使用场景。

类型描述
tcp单纯的 TCP 端口映射,服务端会根据不同的端口路由到不同的内网服务。
udp单纯的 UDP 端口映射,服务端会根据不同的端口路由到不同的内网服务。
http针对 HTTP 应用定制了一些额外的功能,例如修改 Host Header,增加鉴权。
https针对 HTTPS 应用定制了一些额外的功能。
stcp安全的 TCP 内网代理,需要在被访问者和访问者的机器上都部署frpc,不需要在服务端暴露端口。
sudp安全的 UDP 内网代理,需要在被访问者和访问者的机器上都部署frpc,不需要在服务端暴露端口。
xtcp点对点内网穿透代理,功能同 stcp,但是流量不需要经过服务器中转。
tcpmux支持服务端 TCP 端口的多路复用,通过同一个端口访问不同的内网服务。

Frp 的配置文件

服务端配置(基础配置)
参数说明默认值备注
[common]是不可或缺的部分
bind_addr服务端监听地址0.0.0.0
bind_port服务端监听端口7000接手frpc的连接
bind_udp_port服务端监听UDP端口0用于辅助创建P2P连接
kcp_bind_port服务端监听KCP协议端口0用于接收采用KCP连接的
proxy_bind_addr代理监听地址同bind_addr可以使代理监听在不同的网卡地址
log_file日志文件地址./frps.log如果设置为console,会将日志打印在标准输出中
log_level日志等级info可选值:trace,debug,info,warn,error

权限验证

参数说明默认值备注
authentication_method鉴权方式token可选值:token,oidc
autnenticate_neartbeats开启心跳消息鉴权false
authenticate_new_work_conns开启建立工作连接的鉴权false
token鉴权使用的 token 值客户端需要设置一样的值才能鉴权通过
oidc_issuer
oidc_audience
oidc_skip_expiry_check
bool
oidc_skip issuer_checkbool

Dashboard(仪表板),监控

参数说明默认值备注
dashboard addr启用 Dashboard 监听的本地地址0.0.0.0
dashboard port启用 Dashboard 监听的本地端口0
dashboard userHTTP BasicAuth 用户名
dashboard pwdHTTP BasicAuth密码
enable_prometheus是否提供Prometheus 监控接口false需要同时启用了 Dashboard 才会生效
asserts dir静态资源目录
Dashboard 使用的资源默认打包在二进制文件中,通过指定此参数使用自定义的静态资源
客户端公共配置(基础配置)
参数说明默认值备注
[common]

必须
serverAddr连接服务端的地址0.0.0.0
serverPort连接服务端的端口7000
http_proxy连接服务端使用的代理地址格式为
{protocol}://user:passwd@192.168.5.138:8080<br />protocol目前支持http、socks5、ntlm
log_file日志文件地址./frpc.log如果设置为 console,会将日志打印在标准输出中
log_level日志等级info可选值:trace,debug, info,warn, error
pool_count连接池大小0

权限验证

参数说明默认值备注
authentication_method鉴权方式token可选值:token,oidc;需要和服务端一致
autnenticate_neartbeats开启心跳消息鉴权false需要和服务端一致
authenticate_new_work_conns开启建立工作连接的鉴权false需要和服务端一致
token鉴权使用的 token 值需要和服务端设置一样的值才能鉴权通过
oidc_client_id
oidc_client secret
oidc_audience
bool
oidc_token_endpoint_urlbool
客户端代理配置

基础配置

参数说明是否必须备注
type代理类型可选值:tcp, udp, http,https, stcp,sudp,xtcp,tcpmux
use_encryption是否启用加密功能启用后该代理和服务端之间的通信内容都会被加密传输
use_compression是否启用压缩功能启用后该代理和服务端之间的通信内容都会被压缩传输
proxy_protocol_version启用 proxyprotocol 协议的版本如果启用,则 frpc 和本地服务建立连接后会发送 proxy protocol 的协议,包含了原请求的 IP 地址和端口等内容;可选值:v1,v2

本地服务配置

参数说明是否必须备注
local_ip本地服务IP需要被代理的本地服务的IP 地址,可以为所在frpc 能访问到的任意IP 地址;默认值:127.0.0.1
local_port本地服务端口配合local_ip
plugin客户端插件名称用于扩展 frpc的能力,能够提供一些简单的本地服务,如果配置了plugin,则local_ip 和local_port无效,两者只能配置一个
plugin _params客户端插件参数(map类型)map 结构,key需要都以“plugin“开头,每一个 plugin 需要的参数也不一样,具体见客户端插件参数中的内容

负载均衡和健康检查

参数说明是否必须备注
group负载均衡分组名称用户请求会以轮询的方式发送给同一个group 中的代理
group_key负载均衡分组密钥用于对负载均衡分组进行鉴权,group_key相同的代理才会被加入到同一个分组中
health_check_type健康检查类型配置后启用健康检查功能,tcp 是连接成功则认为服务健康,http 要求接口返回 2xx的状态码则认为服务健康
可选值:tcp,http
health_check_timeout_s健康检查超时时间(秒)执行检查任务的超时时间.默认值:3
health_check_max_failed健康检查连续错误次数连续检查错误多少次认为服务不健康;默认值:1
health_check_interval_s健康检查周期(秒)每隔多长时间进行一次健康检查;默认值:10

Frp的使用(0.51.3)

服务端配置

[common]
bind_addr = 0.0.0.0
bind_port = 7000
dashboard_addr = 0.0.0.0
dashboard_port = 7001
dashboard_user = root
dashboard_pwd = 123456
token = wx65b3e977e62f120b

客户端配置

[common]
server_addr = 125.217.52.215
server_port = 7000
token = wx65b3e977e62f120b
pool_count = 5
health_check_type = tcp
health_check_interval_s = 100
[test]
remote_port = 12345
plugin = socks5
use_encryption = true
use_compression = true
plugin_user = admin
plugin_passwd = 123456

在使用之前可以执行以下命令来查看配置文件中的语法是否正确

frpc.exe verify -c frpc.ini #客户端
frps.exe verify -c frps.ini	#服务端

QQ_1724247840588.png

使用frp建立隧道(反向sock5代理)

现在有这么一个场景,我们获得了一个位于内网的通过 NAT 方式对外提供服务的主机的权限,现在我们需要对其所在的内网继续进行渗透。于是,我们就需要通过FRP 建立一个隧道,让我们的主机可以通过隧道访问其内网。QQ_1724244453172.png

frps.exe -c frps.ini

开启服务端。
QQ_1724248167545.png
QQ_1724244660856.png
客户端执行

frpc.exe -c frpc.ini

QQ_1724248117479.png
查看 dashboard,访问http://125.217.52.215:7001,账号:root 密码:123456
QQ_1724248221802.png
连接成功。
我们本机设置代理: socks5 ip:125.217.52.215 端口:12345 账号:admin 密码:123456
QQ_1724248376820.png
QQ_1724249420118.png
tcp隧道搭建成功。

使用 Frp 映射 Web 服务

现在有这么一个场景,位于内网的主机需要对外提供 Web 服务,于是将内网主机的 80 端口映射到公网主机的 80 端口上。
客户端配置

[common]
server_addr = 125.217.52.215
server_port = 7000
token = wx65b3e977e62f120b
[http]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 80
custom_domains= www.test.com

执行命令:frpc.exe -c frpc.ini
QQ_1724251517735.png
QQ_1724251481221.png
现在我们在内网服务器web服务看到的页面是下面这样的
QQ_1724251401430.png
来实验一下内网服务器的80端口是否有映射到我们的服务器上。
QQ_1724251650117.png
成功映射到我们的服务器上。

使用 Frp 映射 RDP 服务

现在有这么一个场景,我们获得了位于内网的一台主机的权限,并且知道了他的登录用户名和密码。他的 3389 端口只对内网开放,现在我们需要将该主机的3389 端口映射到公网我们的 VPS 的 3389 端口,那样,我们连接我们 VPS 的3389 端口就相当于连接内网主机的 3389 端口了。
客户端配置

[common]
server_addr = 125.217.52.215
server_port = 7000
token = wx65b3e977e62f120b
[RDP]
local_ip = 127.0.0.1
local_port = 3389
remote_port = 3389

执行命令运行
QQ_1724251847199.png
接下来我们来远程桌面连接一下本地的3389端口,看能不能连到内网的服务器。
在这里插入图片描述
OK了,内网服务器的3389端口成功映射到我们本机的3389端口,连接成功。

使用 Frp 映射 SSH 服务

现在有这么一个场景,我们获得了位于内网的一台主机的权限,并且知道了他的登录用户名和密码。他的 22 SSH 端口只对内网开放,现在我们需要将该主机的22 端口映射到公网我们的 VPS 的 2222 端口,那样,我们连接我们 VPS 的 2222端口就相当于连接内网主机的 22 端口了。
客户端配置

[common]
server_addr = 125.217.52.215
server_port = 7000
token = wx65b3e977e62f120b
[SSH]
local_ip = 127.0.0.1
local_port = 22
remote_port = 2222

执行客户端连接命令
QQ_1724253893772.png
QQ_1724253839761.png看看ssh连接能不能通过连接本地的2222端口直接连接上内网服务器的ssh端口。
在这里插入图片描述
在这里插入图片描述
125.217.52.215是本地的地址,不是内网服务器的地址。
在这里插入图片描述
OK了,连接成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/406936.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决k8s分布式集群,子节点加入到主节点失败的问题

1.问题情况 Master主节点在 使用 kubeadm init 成功进行初始化后&#xff0c;如下所示 Your Kubernetes control-plane has initialized successfully!To start using your cluster, you need to run the following as a regular user:mkdir -p $HOME/.kubesudo cp -i /etc/k…

CMakeLists.txt模板

#设置编译该CMakeLists.txt文件所需要的最低cmake版本 CMAKE_MINIMUM_REQUIRED(VERSION 最低版本号)# 该项目名称 PROJECT(项目名称)SET(CMAKE_CXX_STANDARD 11)SET(CMAKE_C_STANDARD 11)# 此行可以理解为将路径下所有的文件装载到自定义集合filelist中 FILE(GLOB filelist &q…

黑神话·悟空修改器免费下载

《黑神话&#xff1a;悟空》是一款备受期待的动作角色扮演游戏&#xff0c;由中国独立游戏开发团队Game Science&#xff08;游戏科学&#xff09;开发。 一、修改器下载地址 通过百度网盘分享的文件&#xff1a;黑神话悟空修改器.zip 链接&#xff1a;https://pan.baidu.com/s…

IO进程(7)

目录 1.信号 1.1信号函数 1.1.1信号处理函数 信号的处理过程 2.共享内存 2.1概念 2.2特点 ​​​​​​​​​​​​​​2.3步骤 ​​​​​​​2.4函数接口创建 2.4.1key值 ​​​​​​​​​​​​​​2.4.2创建或打开共享内存 ​​​​​​​​​​​​​​2.4.3映射共享内…

pat1074 k个一组反转链表

是我的错觉吗 直接把%d赋值给数组小标&#xff0c;不能把值副进去&#xff1f; 可是这样可以&#xff1f; 乱套了这 同样的代码 所以暂时将你眼睛闭了起来 所以还是好好老实两次赋值 。。。 写糊了已经 注意这句话 链表中部翻转&#xff1a; 不带dummy真的好麻烦且头…

用Python解决预测问题_多元线性回归模板

多元线性回归是一种统计学方法&#xff0c;用于分析两个或多个自变量&#xff08;解释变量&#xff09;与一个因变量&#xff08;响应变量&#xff09;之间的关系。在最简单的线性回归模型中&#xff0c;只有一个自变量和一个因变量&#xff0c;它们之间的关系可以用一条直线来…

绿色能源的应用与节约,低碳生活方式指南

在这个全球化的时代&#xff0c;环境问题越来越严重&#xff0c;大家都关注的绿色能源和节约成了热门话题。怎样在日常生活中用好绿色能源&#xff0c;实现低碳生活&#xff0c;是每个环保人士都需要了解的关键问题。这篇文章会详细告诉你绿色能源的使用、优点、节约方法以及低…

msxml*.dll 错误 ‘80072f7d‘ 安全频道支持出错 解决方案

诡异的 msxml6.dll错误 80072f7d安全频道支持出错&#xff0c;用 SSLTools.exe 修复的方法无效&#xff01;&#xff01;&#xff01; ’--------------------------------------------------------------- 有如下简要 ASP 代码&#xff0c;用于获取网页链接返回内容&#xf…

window系统开代理在Conda环境中导致pip安装python包出现timeout

文章目录 1: 临时性配置 pip 代理文件2. 永久性配置 pip 代理文件 在使用 Conda 时&#xff0c;如果你设置了代理&#xff0c;但 pip 仍然无法工作&#xff0c;可能需要确保代理配置正确并适用于 pip。以下是几种可能的解决方法&#xff0c;先看一下报错 WARNING: Retrying (Re…

物联网设备字符串转串口指令-SAAS本地化及未来之窗行业应用跨平台架构

一、指令转换作用 现在服务器一般采用json数据格式 但是终端底层都是二进制指令 直接从服务器传输的指令就无法执行&#xff0c;因此需要转换 二、转换源码 void StringToHandleCommand(byte *byteArray, const char *hexString) {bool oddLength strlen(hexString) &…

【威锋网-注册安全分析报告-无验证方式导致安全隐患】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 1. 暴力破解密码&#xff0c;造成用户信息泄露 2. 短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉 3. 带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造…

实战Kubernetes之快速部署 K8s 集群 v1.28.0

文章目录 一、前言二、主机准备三、系统配置3.1. 关闭防火墙及相关配置3.2. 修改主机名3.3. 主机名DNS解析3.4. 时间同步3.5. 配置网络3.6. 重启服务器 四、安装软件4.1. 安装 Docker4.2. 安装 cri-dockerd4.3. 添加国内YUM源4.4. 安装 kubeadm、kubelet 和 kubectl 五、Master…

jmreport积木报表实战中的设计要点(实时更新)

目录 前言1. 配置数据源2. 数据字典3. excel设计4. 带参数查询 前言 以下为文章记录&#xff0c;主要记录报表工具的使用法则 更加详细的要点推荐阅读&#xff1a; 《数据分析-JiMuReport》积木报表详细入门教程积木报表操作手册 以下为实战中主要的总结要点 1. 配置数据源…

记录一次搭建uniapp-vue3的基础项目

1.使用 HBuilder X 创建uniapp vue3的基础项目 2.安装 自动导包插件 unplugin-auto-import npm install unplugin-auto-import或者 pnpm install unplugin-auto-import2.1 根目录下创建 vite.config.js 复制粘贴以下内容 import { defineConfig } from vite import uni fro…

【握奇数据招聘(北森)-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 1. 暴力破解密码&#xff0c;造成用户信息泄露 2. 短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉 3. 带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造…

[ 全部搞定 - 发票导出表格 ] PDF发票提取到表,图片发票提取到表格,扫描件发票提取到表格,全电发票PDF,全电发票扫描件识别导出EXCEL表格

最近很多朋友说找PDF发票提取Excel表格的&#xff0c;找到了图片识别Excel表格的&#xff0c;有的找图片识别Excel表格的&#xff0c;找到了PDF发票提取表格的&#xff0c;所以就很难搞&#xff0c;还有的说都想要 今天一篇文章&#xff0c;全部搞定所有发票【电子发票&#x…

【计算机组成原理】三、存储系统:1.存储器的分类、层次化结构、性能指标、基本组成(半导体、存储芯片基本原理)

三、存储系统&#xff08;存储器层次结构&#xff09; 文章目录 三、存储系统&#xff08;存储器层次结构&#xff09;1.存储器的分类1.1按在计算机中的作用&#xff08;层次&#xff09;❗多级存储结构&#xff08;层次化结构&#xff09;1.2按存储介质1.3按存取方式1.4按信息…

Godot《躲避小兵》实战之创建游戏主场景

游戏主场景 现在是时候将我们所做的一切整合到一个可玩的游戏场景中了。 创建新场景并添加一个 Node节点&#xff0c;命名为 Main。&#xff08;我们之所以使用 Node 而不是 Node2D&#xff0c;是因为这个节点会作为处理游戏逻辑的容器使用。本身是不需要 2D 功能的。&#x…

STM中的I2C

常见的几种通信接口 I2C总线定义 定义 I2C - Inter-Integrated Circuit&#xff1a;两线式 串行总线&#xff1a;说明处理器和外设之间只需两根信号线&#xff0c;分别是SCL时钟控制信号线和SDA数据线 SCL&#xff08;serial clock line&#xff09; 时钟控制信号线&#xff…

fastadmin 安装

环境要求&#xff0c;大家可以参考官方文档的&#xff0c;我这里使用的是phpstudy&#xff0c;很多已经集成了。 注意一点&#xff0c;PHP 版本&#xff1a;PHP 7.4 。 第二步&#xff1a;下载 下载地址&#xff1a;https://www.fastadmin.net/download.html 进入下载地址后…