当前位置:首页 > 每日看点 > 正文内容

如何搭建frp内网穿透?

卡卷网12个月前 (01-12)每日看点186

FRP0.52.3版本部署

本教程服务端使用的阿里云服务器,centos7.9系统,客户端本地虚拟机centos7.9系统。

服务端:只需要部署frps服务,启动即可,如需更多需求课访问frp官方参考。
客户端:部署frpc服务,目前我代理访问的是本机,如需访问本地多主机,可以使用Nginx配置代理访问。
注:每次修改配置文件,都需要重启服务,即可生效。

1、frp 是什么?

frp 是一款高性能的反向代理应用,专注于内网穿透。它支持多种协议,包括 TCP、UDP、HTTP、HTTPS 等,并且具备 P2P 通信功能。使用 frp,您可以安全、便捷地将内网服务暴露到公网,通过拥有公网 IP 的节点进行中转。

2、为什么选择 frp?

通过在具有公网 IP 的节点上部署 frp 服务端,您可以轻松地将内网服务穿透到公网,并享受以下专业特性:

  • 多种协议支持:客户端服务端通信支持 TCP、QUIC、KCP 和 Websocket 等多种协议。
  • TCP 连接流式复用:在单个连接上承载多个请求,减少连接建立时间,降低请求延迟。
  • 代理组间的负载均衡。
  • 端口复用:多个服务可以通过同一个服务端端口暴露。
  • P2P 通信:流量不必经过服务器中转,充分利用带宽资源。
  • 客户端插件:提供多个原生支持的客户端插件,如静态文件查看、HTTPS/HTTP 协议转换、HTTP、SOCKS5 代理等,以便满足各种需求。
  • 服务端插件系统:高度可扩展的服务端插件系统,便于根据自身需求进行功能扩展。
  • 用户友好的 UI 页面:提供服务端和客户端的用户界面,使配置和监控变得更加方便。

3、下载FRP

frp官网:github.com/fatedier/frp

进官网自行选择自己想要下载的版本,根据自己要部署的服务器的类型来选择。

我这里是centos7系统,所以下载的是linux_amd64.tar.gz。

wget https://objects.githubusercontent.com/github-production-release-asset-2e65be/48378947/dbb4b12e-609f-4a3e-8938-8a6152a6c568?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=releaseassetproduction%2F20241214%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20241214T180818Z&X-Amz-Expires=300&X-Amz-Signature=5eaea14d69b49c4b00564b04fdfec470ae50015af56fb730a8cd87bf7563b3fc&X-Amz-SignedHeaders=host&response-content-disposition=attachment%3B%20filename%3Dfrp_0.52.3_linux_amd64.tar.gz&response-content-type=application%2Foctet-stream

3.1、解压压缩包

tar xvf frp_0.52.3_linux_amd64.tar.gz mv frp_0.52.3_linux_amd64 frp

4、配置服务端(frps)

cd /frp/ vim frps.toml

如何搭建frp内网穿透?  第1张

# 以下是frps配置的内容,具体内容根据自己需求而定,可以参考官方教程 # frp监听的端口,默认是7000,可以改为其它未使用的端口,客户端连接时需要 bindPort = 7000 # 设置认证模式 auth.method = "token" # token 密钥,客户端连接需要 auth.token = "oHtGGdmEHRknjJMp" # http 协议端口,可以随意更改 vhostHTTPPort = 80 # https 协议端口,可以随意更改 vhostHTTPSPort = 443 # 自定义二级域名配置 subdomainHost = "63339.cn" # frp后台管理地址 webServer.addr = "0.0.0.0" # 管理端口 webServer.port = 7001 # 账户 webServer.user = "admin" # 密码 webServer.password = "admin" #enable_prometheus = true #log_file = /data/frp/frps.log #log_level = info #og_max_days = 3

如何搭建frp内网穿透?  第2张

#下图为管理界面

如何搭建frp内网穿透?  第3张

4.1、设置systemd启动

在 Linux 系统下,使用 systemd 可以方便地控制 frps 服务端的启动、停止、配置后台运行以及开机自启动。

1.创建 frps.service 文件

使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。

sudo vim /etc/systemd/system/frps.service

写入内容

[Unit] # 服务名称,可自定义 Description = frp server After = network.target syslog.target Wants = network.target [Service] Type = simple # 启动frps的命令,需修改为您的frps的安装路径 ExecStart = /data/frp/frps -c /data/frp/frps.toml [Install] WantedBy = multi-user.target

2.使用 systemd 命令管理 frps 服务

# 重载systemctl sudo systemctl daemon-reload # 启动frp sudo systemctl start frps # 停止frp sudo systemctl stop frps # 重启frp sudo systemctl restart frps # 查看frp状态 sudo systemctl status frps # 设置开机自启 sudo systemctl enable frps

如何搭建frp内网穿透?  第4张

5、配置客户端(frpc)

客户端使用的也是centos7环境,所以跟服务端使用的是一个,下载到客户端机器即可。

1.编辑客户端配置文件(frpc.ini)

vim frpc.toml # 公网IP serverAddr = "0.0.0.0" serverPort = 7000 auth.method = "token" # 填写服务端的token值 auth.token = "oHtGGdmEHRknjJMp" # 案例 代理本地ssh [[proxies]] name = "test-tcp" # 类型 type = "tcp" localIP = "127.0.0.1" # 本地端口 localPort = 22 # 监听远端端口 remotePort = 8000 [[proxies]] name = "web01-tcp" type = "http" localIP = "192.168.110.8" localPort = 80 #remotePort = 7000 # 此处填的web01,访问的完整域名就是web01.63339.cn subDomain = "web01" #customDomains = ["63339.cn"]

5.1、设置systemd启动

在 Linux 系统下,使用 systemd 可以方便地控制 frps 服务端的启动、停止、配置后台运行以及开机自启动。

1.创建 frpc.service 文件

使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frpc.service 文件,用于配置 frps 服务。

sudo vim /etc/systemd/system/frpc.service

写入内容

[Unit] # 服务名称,可自定义 Description = frp server After = network.target syslog.target Wants = network.target [Service] Type = simple # 启动frps的命令,需修改为您的frps的安装路径 ExecStart = /data/frp/frpc -c /data/frp/frpc.toml [Install] WantedBy = multi-user.target

2.使用 systemd 命令管理 frpc 服务

# 重载systemctl sudo systemctl daemon-reload # 启动frp sudo systemctl start frpc # 停止frp sudo systemctl stop frpc # 重启frp sudo systemctl restart frpc # 查看frp状态 sudo systemctl status frpc # 设置开机自启 sudo systemctl enable frpc

如何搭建frp内网穿透?  第5张

6、测试结果

如何搭建frp内网穿透?  第6张

6.1、测试http方式访问

如何搭建frp内网穿透?  第7张

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8999.html

分享给朋友:

相关文章

百度收录又开始“作”了,用“快速抓取”替代“快速收录”

百度收录又开始“作”了,用“快速抓取”替代“快速收录”

作为国内不得不用的知名搜索引擎“百度”,对于网站收录的规则,又有新的升级。以前有个快速收录,我们可以通过WordPress插件,免费快速提交给百度。但是现在这个功能没了,取而代之的是“快速抓取”,如下图想要使用此功能,需要加入“VIP俱乐部...

短剧推广怎么做,24年还能赚钱吗?

短剧推广怎么做,24年还能赚钱吗?

首先声明:短剧授权是免费的!短剧授权是免费的!短剧授权是免费的!其次我们再聊聊,短剧推广到底赚不赚钱?多的就不说了,随便上个图片,给大家过过瘾!然后,我们进入主题:0粉丝账号,新手,应该如何申请短剧推广!一、短剧推广变现方式首先,我们先要分...

为什么大家不再提 5G 了?

现在看来,只有美国那种5g的思路是对的。美国的运营商一开始就发现5g和4g并没有质的飞跃,无非就是提升频率/降低穿透力/提升带宽的故事。而美国运营商又是自负盈亏,因此一开始就仅在人口高密度地区或富裕地区布置5g。虽然说人家4g也菜,但是人家...

为什么我们一直在给B站充大会员但B站却一直处于亏损状态?

我讲一下离谱的真相吧,欢迎喷我。很多人都觉得B站在赶走人才,赶走优秀的长视频创作者,也觉得知乎在这么做,是没错的。确实在这么做。而原因很简单。只有影响力很大的KOL才有商业价值。(KOL是指“关键意见领袖”)而你说你是人才?对不起,人才不赚...

腾讯文档回收站彻底删除文件真的找不回来了吗?

趁早打电话联系腾讯文档的人可能还有救,一般这种都是数据库里标记为删除,文件还没有实际删除,然后经过一段时间后程序统一进行真删除。这个“一段时间”可长可短,可能是一小时也可能是几天几个月甚至几年,要看腾讯服务器的程序是怎么写的。不过你联系腾讯...

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在讨论服务网格之前,先理解一下为什么我们需要它。现代微服务架构意味着将应用拆分为多个小型、独立的服务,这些服务可以独立开发、部署和扩展。然而,服务之间的通信和管理成了巨大的挑战,例如如何保证安全的通信、负载均衡、监控与可观测性等。服务网格...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。