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

如何搭建frp内网穿透?

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

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

分享给朋友:

相关文章

B 站上有哪些很好的学习资源?

B 站上有哪些很好的学习资源?

前!方!高!能!精选了多位学习Up主,不乏百万粉丝的大V,还有超多珍贵的学习资源推荐。进了小破站,完全不用担心学完了该怎么办?因为根本学不完啊!!!B站的学习干货实在太多了!语言学习葉子先生酱https://space.bilibili.c...

最让你震惊的网站有哪些?

压箱底的震惊来了,来波大的,一百个网站!这些都是我平时辛辛苦苦收集的,是真的牛逼,居然还有这种网站。1、实时地球网址:https://zoom.earth/实时图像每 10 分钟更新一次,提供风暴、天气预报、降水、火警等数据2、陕西博物馆...

有哪些正规的兼职平台?

1.阿里巴巴云客服:工作优点是时间自由,可自主选择班次,不需要去公司坐班,多做多得2.蚂蚁云客服:同样是阿里巴巴旗下的兼职平台,工作优点是时间自由,可自主选择班次,不需要去公司坐班,多做多得。3.菜鸟优加云客服:工作优点是时间自由,可自主选...

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

为何 Linus 一个人就能写出这么强的系统,中国却做不出来?

我给你举个真实的例子。。有一个人叫高伟东,在哈尔滨工作。在2012年做了一个APP。使用词根词缀背单词。名字叫:词根词缀词典这个人编辑了2300余条词根,给10万多条单词建立了词根索引,整理了50多万条的单词记忆方法,包括新版本的诸多新功能...

马云也搞不明白:为什么现在用户偏爱微信支付,而不是支付宝?

这题我会,我教马云一招。你直接把你那破比支付宝的代码全删了,重新写一个。打开支付宝直接就是一个大大的支付码,然后右上角按一下就是扫一扫。你要是还想保留你的其他那些乱七八糟的功能,麻烦将他们全部做到下拉菜单里。你这么设计我不说你能干死微信,但...

台积电通知其中国客户,从下周开始,所有 7nm 及以下芯片出货将停止。如何看待这一行为?

台积电通知其中国客户,从下周开始,所有 7nm 及以下芯片出货将停止。如何看待这一行为?

我说美国快要没招了,你信么?这次台积电宣布停止向中国大陆客户供应7纳米及更先进AI芯片,再加上前段时间台积电对华为的制裁,我们基本可以认为,台积电在高端芯片领域,已经彻底把大陆给拉黑了,这也意味着中美芯片战已经到了最关键的时刻,一旦我们克服...

发表评论

访客

看不清,换一张

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