在上一篇zerotier讲述了如何实现虚拟局域网搭建,这篇会讲述FRP内网穿透的使用教程
那么frp与zerotier的区别是什么呢?(说人话)
FRP 主要用于内网服务向外网的单向暴露。
ZeroTier 用于构建一个虚拟的私有网络,实现多点对多点的互联。
- 如果你有需要向公网暴漏端口的需求,比如搭建了个人网站,总不可能要求所有用户都下载一下zerotier客户端,替换planet,再申请加入网络,不现实
- 这时候就需要用到frp,将本地的个人网站端口映射到云服务器端口上,并将对应端口打开
既然要用到云服务器,为什么我不直接发布到云服务器上呢?
个人网站只是一个简单的例子,一般占用资源较少,只需要低配置的云服务器即可,那么如果是高资源消耗的程序呢?比如SD绘图,这种高性能的云服务器过于昂贵。这时候选择安装在个人电脑上或许是一个更经济的选择;
但是如果追求稳定性,安全性,商业化,这边建议还是选择云服务器更好
声明:本教程依据frp官方文档书写,只提供较为基本和常用的配置方案,系统学习建议参考官方文档
有时间会单开一篇文章写一套高定制化的配置方案示例
frp整体的使用难度较低,建议还是直接去官网查询自己需要的配置方式,基本都是无脑复制粘贴改改
一. 所需资源
- 具有公网ip的云服务器
- 无公网ip的个人电脑
二. 服务端安装以及配置
tips: 安装包内包含服务端与客户端所需的所有文件
frps 服务端启动器
frps.homl 服务端配置文件
frpc 客户端启动器
frpc.homl 客户端配置文件
1.安装包的选择
依据公式我需要下载frp_0.61.1_linux_amd64.tar.gz
下载后上传到服务器
- 解压压缩包到指定目录
# tar -zxvf 压缩包 -C 指定目录
tar -zxvf frp_0.61.1_linux_amd64.tar.gz -C /usr/local/
# 进入指定目录
cd /usr/local
# 修改文件夹名
mv frp_0.61.1_linux_amd64 frp
# 进入frp 准备下一步
cd frp
- 修改服务端配置
# 修改服务端配置文件
vi frps.homl
把下面代码粘贴进去并修改
bindPort = 7000
# 接收http请求
vhostHTTPPort = 7001
# 客户端需要配置对应的token才允许映射
auth.token = "myfrptoken"#仅允许服务器上的指定端口/端口范围 避免滥用端口
allowPorts = [# 范围指定{ start = 5000, end = 5500},# 单独指定# { single = 5501},
]# 仪表盘配置
# The default value is 127.0.0.1. Change it to 0.0.0.0 when you want to access it from a public network.
webServer.addr = "0.0.0.0"
webServer.port = 7002
# dashboard's username and password are both optional
webServer.user = "admin"
webServer.password = "admin"
- frp服务端启动
./frps -c ./frps.toml
- 开机自启(明天补充)
- 端口放开 7000 7001 7002 以及允许映射的范围端口 5000-5500
7000 7001 7002必须放开
5000-5500建议也直接放开,当然可以暂时不放开,后续客户端用到哪个再放开哪个
7.可进入仪表盘查看详细情况
http://ip:7002
三. 客户端安装以及配置(centos)
- 安装客户端
安装包下载
安装包的选择
依据公式我需要下载frp_0.61.1_linux_amd64.tar.gz - 进入解压目录,并修改frpc.toml
将以下配置粘贴并修改
serverAddr = “你的服务器ip”
serverPort = 7000
auth.token = “myfrptoken”[[proxies]]
name = “这个端口用来干嘛的,起一个见名知意的名字”
type = “tcp”
localIP = “0.0.0.0”
#本机需要映射的端口
localPort = 5000
#映射到云服务器的哪个端口
remotePort = 5000
- 启动客户端
#cd到frp目录下
./frpc -c ./frpc.toml
- 关闭客户端防火墙(略)
- frp客户端开机自启 :点击查看
- 可浏览器访问对应端口验证
http://云服务器ip:remotePort
四. 客户端安装以及配置(windows)
- 安装windows客户端
安装包下载
安装包的选择
依据公式我需要下载frp_0.61.1_windows_amd64.zip - 解压windows压缩包
- 进入解压目录,并修改frpc.toml
将以下配置粘贴并修改
serverAddr = “你的服务器ip”
serverPort = 7000
auth.token = “myfrptoken”[[proxies]]
name = “这个端口用来干嘛的,起一个见名知意的名字”
type = “tcp”
localIP = “0.0.0.0”
#本机需要映射的端口
localPort = 5000
#映射到云服务器的哪个端口
remotePort = 5000
- 启动客户端
#cmd到frp目录下
frpc.exe -c frpc.toml
- 进入仪表盘查看
6.可浏览器访问对应端口验证
http://云服务器ip:remotePort
- 开机自启请查看:点击
五. 安装包选择技巧
- 安装包选择与下载
下面是一个常见架构名称的等价关系清单:
ARMv8 = ARM64 = AArch64
ARMv7 = armv7l = ARM
x86_64 = x64 = amd64
x86 = x86_32
安装包下载
如何选择适合自己的安装包:
- linux
#查看cpu架构
lscpu
- windows
Win + R 并输入 msinfo32
六. centos设置开机自启
已迁移至单独的文章:点击跳转
七. windows设置开机自启
已迁移至单独的文章:点击跳转