FRP内网穿透 | Ubuntu
2024-02-05发表于
服务器⭐️ 家里有笔记本长期闲置,配置为i5-8250U/CPU 4核@1.60GHz / 120SSD+1THDD,在WIN系统下轻度使用性能不足,平时大部分的使用场景均由MacBookPro完成,既然吃灰了,为何不利用起来呢?
⭐️ 手头有一台马上过期的腾讯云服务器,做FTPS中继只能通过IP+端口访问,白瞎了我手头的域名,刚好前几天刚入手的小内存香港服务器,用来FRP技术穿透刚刚好。
⭐️ 本篇文章以香港2C1G服务器实例,基于 Ubuntu Server 安装。
FRP简介
FRP(Fast Reverse Proxy)是一个开源的高性能反向代理工具,它可以帮助用户在内网中的计算机或服务通过 NAT 或防火墙向外部网络提供服务。FRP提供了TCP、UDP、HTTP和HTTPS等多种协议的反向代理功能,支持将外部流量转发到内部网络的指定服务上。
FRP的工作原理是在外网服务器和内网设备之间建立一条加密通道,外网服务器作为代理服务器,内网设备作为客户端,通过连接服务器建立通信,实现对内网设备的访问。FRP使用了类似SSH隧道的技术,通过建立一个可信的第三方服务器,来实现对内网设备的访问。
易于配置: FRP提供了简单易懂的配置文件,用户可以根据自己的需求进行配置。
安全性: FRP支持加密通信,可以保护数据的安全性。
高性能: FRP采用了高性能的反向代理引擎,可以实现快速的数据传输。
多协议支持: FRP支持TCP、UDP、HTTP和HTTPS等多种协议的反向代理功能,可以满足不同场景的需求。
1、安装系统
> 下载 Ubuntu Server
> 制作启动镜像
启动镜像可用U盘制作,可使用老毛桃winpe ,深度U盘制作工具
> 安装系统
网上能找到教程,我就不在这赘述咯~
2、更新服务器
> 可参见上一篇文章:<更新与安装 | Ubuntu>
3、安装FRP
> 下载FRP文件:<GitHub : FRP>
> 官方使用文档:<GoFRP : 中文>
> 解压FRP压缩包
内含:FRPS / FPRC可执行文件
内含:frps.toml / frpc.toml
S是服务器配置文件 / C是本地需穿透的主机配置文件
▲图1 FPR文件解压目录
> 配置FRPS服务端文件
打开frps.toml | 可用WIN/MAC记事本打开哦
服务器Port端口及token可修改,dashboard除IP外都可修改
# frps.toml bindPort = 5443 # 服务器监听端口 kcpBindPort = 5443 # 服务端监听KCP协议端口 auth.token = "abc" # 设置密码以验证端到端安全通信 # dashboard 管理页面 webServer.port = 9999 # 可以通过浏览器查看frp的状态信息 webServer.addr = "0.0.0.0" # 允许IP访问 # dashboard 用户名密码,可选,默认为空 webServer.user = "admin" webServer.password = "admin"
> 配置FPRC主机端文件
打开frpc.toml | 可用WIN/MAC记事本打开哦
addr/port/token需与服务端保持一致
proxies设置格式可复制,除port端口外保持统一
# frpc.toml serverAddr = "xx.xx.xx.xx" # 服务器IP地址 serverPort = 5443 # 服务器监听端口 auth.token = "abc" # 设置密码以验证端到端安全通信 [[proxies]] name = "ssh" # 项目名称 type = "tcp" # 一般默认即可 localIP = "127.0.0.1" # 本地回源默认即可 localPort = 22 # 本地项目端口 remotePort = 99 # 服务器IP+端口访问 [[proxies]] name = "status" type = "tcp" localIP = "127.0.0.1" localPort = 6022 remotePort = 6022 [[proxies]] name = "wflac" type = "tcp" localIP = "127.0.0.1" localPort = 6023 remotePort = 6023
> 上传配置文件
使用FinalShell 或 1Panel 上传配置文件 #一定要记住上传目录位置,后面要用
▲图2 FPRS服务器根文件目录
> 启动服务端frps.toml
sudo -i #获取管理员权限 cd /root/frps #进入frpc根目录 chmod +x ./frps #赋予权限以便执行 ./frps -c ./frps.toml #启动frps可执行程序
▲图3 FPRS服务器启动成功
> 验证frps服务端
输入密码登录图4,显示面板后,服务端已搭建完毕图5
如果显示错误,请自行服务器放行端口
▲图4 FPRS服务端启动成功
▲图5 FPRS服务面板登录成功
> 启动内网端frpc.toml
使用FinalShell 或 1Panel 上传配置文件
sudo -i #获取管理员权限 cd /root/frpc #进入frps根目录 chmod +x ./frpc #赋予权限以便执行 ./frpc -c ./frpc.toml #启动frpc可执行程序
> 开始享用吧!
4、实例站点
>
無.Flac’s HK
基于FRP技术的Halo2博客网站
> 無.Flac’s Status
基于FRP技术的Uptime Kuma的网站状态页
▲图6 Uptime Kuma状态页
5、安装Systemd
> Systemd一键管理
# 使用 yum 安装 systemd(CentOS/RHEL) yum install systemd # 使用 apt 安装 systemd(Debian/Ubuntu) apt install systemd
> 创建 frps.service 文件
创建并写入 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 = /path/to/frps -c /path/to/frps.toml [Install] WantedBy = multi-user.target
> 使用命令管理 frps 服务
# 启动frp sudo systemctl start frps # 停止frp sudo systemctl stop frps # 重启frp sudo systemctl restart frps # 查看frp状态 sudo systemctl status frps
> 设置 frps 开机自启动
sudo systemctl enable frps
5、答疑解惑
> 安装的时候会出现很多状况,可参询Github或官网问题解答页
> 也可留言问我,我将尽可能解答你的问题
33
7
17
5760
文章目录