资讯动态

frp 用法总结

发布时间:2026/8/29 17:03:44 来源:尧图企业网站定制
矮人看戏何曾见皆是随人说短长。导航1 工具介绍2 示例配置2.1 基础配置2.2 身份验证2.3 管理面板2.4 systemd 纳管2.5 转发 TCP/UDP/Unix/HTTP 数据流3 杂七杂八1、工具介绍frp 是一款高性能的反向代理应用专注于内网穿透。它支持多种协议包括 TCP、UDP、HTTP、HTTPS 等并且具备 P2P 通信功能。使用 frp您可以安全、便捷地将内网服务暴露到公网通过拥有公网 IP 的节点进行中转。2、示例配置官方手册提供的使用示例已非常完整清楚但由于使用场景丰富使得手册篇幅巨大故专门针对自己可能会使用的一些配置进行了如下整理。2.1、基础配置# frps.toml bindPort 7000# frpc.toml serverAddr x.x.x.x serverPort 7000 [[proxies]] name ssh type tcp localIP 127.0.0.1 localPort 22 remotePort 2222 [[proxies]] name http type tcp localIP 1.1.1.1 localPort 8080 remotePort 8080以上配置为客户端开设了 2 条代理1第一条经服务端转向了客户端本地的 ssh 服务。2第二条经服务端转向客户端由客户端再转向 1.1.1.1 的 http 服务。2.2、身份验证# frps.toml bindPort 7000 auth.method token auth.token token-password# frpc.toml serverAddr x.x.x.x serverPort 7000 auth.method token auth.token token-password [[proxies]] name http type tcp localIP 1.1.1.1 localPort 8080 remotePort 8080以上配置为 frps 开启了通道密码功能防止任意 frpc 客户端都可以随意使用服务端的网络资源。2.3、管理面板# frps.toml bindPort 7000 webServer.addr 0.0.0.0 webServer.port 7500 webServer.user admin webServer.password admin# frpc.toml serverAddr x.x.x.x serverPort 7000 webServer.addr 0.0.0.0 webServer.port 7400 webServer.user admin webServer.password admin [store] path ./db.json [[proxies]] name http type tcp localIP 1.1.1.1 localPort 8080 remotePort 8080以上配置分别为 frps 和 frpc 开启了图形化面板功能其中 frps 的面板只能查看一些统计信息而 frpc 的面板除了可以查看统计功能还为其开启了动态管理代理的功能如此一来便可以随时创建、更新和删除代理和访问者而无需以往那样需要重新启动 frpc 才能使新配置生效。【注意这种情况下新的代理配置全都被保存在了 db.json 文件中了。】2.4、systemd 纳管# cat /etc/systemd/system/frps.service [Unit] # 服务名称可自定义 Description frp server After network.target syslog.target Wants network.target [Service] Type simple # 启动frps的命令需修改为您的frps的安装路径 ExecStart /path/to/frps -c /path/to/frps.toml [Install] WantedBy multi-user.target针对 frpc 简单修改之后以上配置同样适用于 frpc 服务。2.5、转发 TCP/UDP/Unix/HTTP 数据流# frps.toml bindPort 7000 # frpc.toml【转发 TCP 数据流】 serverAddr x.x.x.x serverPort 7000 [[proxies]] name http type tcp localIP 1.1.1.1 localPort 8080 remotePort 8080【1】验证浏览器访问http://x.x.x.x:8080看是否能够访问到 1.1.1.1 所提供的网页服务。# frps.toml bindPort 7000 # frpc.toml【转发 UDP 数据流】 serverAddr x.x.x.x serverPort 7000 [[proxies]] name dns type udp localIP 8.8.8.8 localPort 53 remotePort 6000【2】验证执行命令dig x.x.x.x -p 6000 www.baidu.com测试 UDP 包转发是否成功预期会返回www.baidu.com域名的解析结果。# frps.toml bindPort 7000 # frps.toml【转发 Unix 数据流】 serverAddr x.x.x.x serverPort 7000 [[proxies]] name unix_domain_socket type tcp remotePort 6000 [proxies.plugin] type unix_domain_socket # Unix 域套接字路径 unixPath /var/run/docker.sock【3】验证执行curl http://x.x.x.x:6000/version可查看你往机器上 Docker 的版本信息。# frps.toml bindPort 7000 vhostHTTPPort 8080 # frpc.toml【转发 HTTP 数据流】 serverAddr x.x.x.x serverPort 7000 [[proxies]] name web type http localPort 80 customDomains [www.yourdomain.com] [[proxies]] name web2 type http localPort 8080 customDomains [www.yourdomain2.com]【4】验证使用浏览器访问http://www.yourdomain.com:8080即可访问内网机器上的 80 端口服务访问http://www.yourdomain2.com:8080可以访问内网机器上的 8080 端口服务。【注意域名www.yourdomain.com、www.yourdomain2.com需要提前映射到 frps 服务器的 ip 地址。】3、杂七杂八1参考手册官方英文手册、官方中文手册2辅助工具frpc-desktop我的博客园

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价