客户看之 frp 教程

本贴最后更新于 591 天前,其中的信息可能已经水流花落

frp 是什么?

frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。

为什么使用 frp?

通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括:

  • 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。
  • 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。
  • 代理组间的负载均衡。
  • 端口复用,多个服务通过同一个服务端端口暴露。
  • 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。
  • 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。
  • 服务端和客户端 UI 页面。

官方项目地址

官方文档地址

客户端安装使用教程

linux

下载 frp 包(这里以 X86_64 为例)

wget https://github.com/fatedier/frp/releases/download/v0.48.0/frp_0.48.0_linux_amd64.tar.gz

解压、进入目录

tar -zxvf frp_0.48.0_linux_amd64.tar.gz
cd frp_0.48.0_linux_amd64

通过 frps 服务端的信息配置客户端配置文件

服务端信息

frps服务端地址:
frps服务端端口:
frps服务端token:
frps服务端是否开启http:
frps服务端是否开启https:
frps服务端允许的端口范围:
其他参数:

通过以上 frps 服务端信息书写客户端的配置 frpc.ini

## 连接服务端的服务器信息
[common]
server_addr = frps服务端地址
server_port = frps服务端端口
token = frps服务端token
# 其他参数
# user = your_name
# tls_enable = true
# 日志
# log_file = ./frpc.log
# log_level = info
# log_max_days = 3


## 配置要穿透的tcp
## 比如穿透ssh 的 22 端口
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 通过frps服务器的端口   #注意看: frps服务端允许的端口范围

## 配置要穿透的udp
## 比如穿透udp端口 1234
[udp]
type = udp
local_ip = 127.0.0.1
local_port = 1234
remote_port = 通过frps服务器的端口   #注意看: frps服务端允许的端口范围

## 配置要穿透的http、https
## 比如穿透本地web 80端口
## 注意前提条件:
##    - frps服务端是否开启http、https
##    - 你有自己的域名
##    - https的话,需要自己申请证书

[http]
type = http
local_ip = 127.0.0.1
local_port = 80
# subdomain = 域名前缀   # 配置端配置域名才可以使用这个
custom_domains = 你自己的域名

[https]
type = https
local_ip = 127.0.0.1
local_port = 443
# subdomain = 域名前缀   # 配置端配置域名才可以使用这个
custom_domains = 你自己的域名
proxy_protocol_version = v2

测试配置文件是否正确连接

./frpc -c ./frpc.ini

# 如果出现下面的后缀信息就表示成功
#  ...............start proxy success

成功后使用 Ctrl +c​终止进程,开始下面的操作。(不成功不建议向下执行)

安装成服务并设置开机自启

拷贝文件到系统指定目录

# 创建配置存放目录
mkdir /etc/frp
# 拷贝文件
cp ./frpc /usr/bin/
cp ./frpc.ini /etc/frp/
# 给frpc可执行权限
chmod +x /usr/bin/frpc

编辑服务配置文件 frpc.services

通过 vi /etc/systemd/system/frpc.service​ 然后复制下面的信息到文件保存

[Unit]
Description=Frp Client Service
After=network.target

[Service]
Type=simple
User=root
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frpc -c /etc/frp/frpc.ini
LimitNOFILE=1048576

[Install]
WantedBy=multi-user.target

然后执行一下命令启动和设置开启自启

systemctl daemon-reload
# 启动
systemctl start frpc
# 开机自启
systemctl enable frpc
# 运行状态
systemctl status frpc

# 看状态 出现 Running 表示运行成功

注意事项:

后期需要编辑配置文件,使用`vi /etc/frp/frpc.ini`​ 编辑

编辑完成后需要执行重启命令 `systemctl restart frpc`​   然后查看状态是否是`Running`​

  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    20 引用 • 7 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...