介绍

  在当下ipv4资源紧张下,许多的家庭办理的宽带都不带赠送公网ip,这让我们的不能在外网访问我们家的电脑。我们可以通过内外穿透进行外围远程桌面,远程联机,搭建nas,博客等...

frp 是什么?

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

为什么选择 frp?

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

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

搭建所需要的配置

  • 一个公网的服务器linux系统:作为我们的服务端,可以在阿里云上购买,现在阿里云新年大促,一年2核2g服务器只需要87起,学生0元起
    点击进行购买

lpj9eykq.png

  • windos电脑:作为我们的客户端
  • 部署文件下载

服务端(frps)搭建

# 下载文件
wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz
# 解压文件
tar -zxvf frp_0.52.3_linux_amd64.tar.gz
# 进入解压目录
cd frp_0.52.3_linux_amd64
# 给frps文件权限
chomd 777 frps
# 编辑配置文件
vi frps.toml

编辑内容如下

frps.toml

bindAddr = "0.0.0.0"
bindPort = 7000   # 内网穿透端口
# 用户认证
auth.method = "token"  #{可选}身份验证方式 
auth.token = "123456"   #token设置密码,用于通过身份验证创建连接

# 后台管理
webServer.addr = "0.0.0.0" 
webServer.port = 7500  # frps管理后台端口
webServer.user = "admin"   # 登录名
webServer.password = "admin123" # 登录密码

编辑完成后保存,在当前目录下运行./frps -c ./frps.toml进行测试是否运行成功,在浏览器打卡你的公网ip地址:7500,如果管理后台访问成功就代表内外穿透成功了,如下这个页面:

lpjepidy.png

注意:一定要在服务器上防火墙上放行设置的端口,如这里是7000和7500

配置systemd,让frps后台启动和开机自启
# 安装systemd
yum install systemd
# 创建和编辑配置文件
$ sudo vim /etc/systemd/system/frps.service

编辑文件内容如下:唯一需要修改的就是您的frps的安装路径,即刚刚下载的位置路径

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

使用 systemd 命令管理 frps 服务

# 启动frp
sudo systemctl start frps
# 设置开机自启
sudo systemctl enable frps
其他systemd管理命令
# 停止frp
sudo systemctl stop frps
# 重启frp
sudo systemctl restart frps
# 查看frp状态
sudo systemctl status frps

自此,服务端就搭建完成了

客户端(frpc)搭建

 客户端搭建就比较容易,在下载frpc后进行解压,进入解压后的目录里面,编辑frpc.toml文件,内容如下:

frpc.toml

serverAddr = "你的公网ip地址" 
serverPort = 7000     # 内网穿透端口
auth.token = "123456"  # 服务端设置的token密码


[[proxies]]
name = "app_name1"    # 应用名,自定义
type = "tcp"        # 连接方式:有http,https,UDP等
localIP = "127.0.0.1"   # 本地连接地址
localPort = 8000        # 本地端口
remotePort = 8000         # 自定义的远程服务器端口

[[proxies]]
name = "app_name2"    
type = "tcp"        
localIP = "127.0.0.1"   
localPort = 8080       
remotePort = 8080        


创建完成后保存,在这个文件的目录下打开终端,输入这个命令./frpc.exe -c ./frpc.toml运行,自此我们就可以在随时随地的访问我们本地电脑搭建的服务了

注意:一定要在服务器上防火墙上放行设置的端口,如这里是8000和8080

 官网文档

0

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐