FRP 快速入门

FRP 快速入门

使用开源工具 frp 进行内网穿透

Prerequisites

  1. 一台具有公网IP 的服务器(以阿里云云服务器示例)

  2. 一台本地的电脑或其他设备(以本地电脑ArchLinux 示例)

下载安装

GitHub 下载二进制文件

image-20250604150538285

因为电脑和服务器均安装的是Linux操作系统,所以下载 Linux版本的二进制文件

解压后文件如下(如果是Windows就是对应的.exe.ini 文件

image-20250604150741787

其中 frpc 是客户端,用于服务运行的局域网的设备,frps是服务端,运行于具有公网IP的云服务器上。

frpsfrps.toml 使用scpftp发送到服务器:

image-20250604151117480

(Optional)设置系统服务

Server

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# /etc/systemd/system/frps.service
[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /root/fastrp/frps -c /root/fastrp/frps.toml

[Install]
WantedBy = multi-user.target

Client

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# /etc/systemd/system/frpc.service
[Unit]
Description = frp client
After = network.target network-online.target syslog.target
Wants = network-online.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /home/neolux/app/frp/frpc -c /home/neolux/app/frp/frpc.toml

[Install]
WantedBy = multi-user.target

配置

Server

在服务器修改 frps.toml ,设置开放端口,密钥,用户名密码等信息

1
2
3
4
5
6
7
auth.token = "XXXXXXX" # 可选的
# 默认为 127.0.0.1,如果需要公网访问,需要修改为 0.0.0.0。
webServer.addr = "0.0.0.0"
webServer.port = 7500
# dashboard 用户名密码,可选,默认为空
webServer.user = "username"
webServer.password = "password"

之后在管理后台把设置的端口打开

image-20250604151735964

Client

在本机修改frpc.toml

1
2
3
4
5
6
7
8
9
10
11
12
serverAddr = "服务器IP"
serverPort = 7000

auth.token = "XXXXXXX" # 如果服务器设置了 token,每个客户端都必须设置同样的token

# 以本地的SSH穿透示例配置
[[proxies]]
name = "Archlinux SSH"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 3322

每一个穿透的远程端口都必须在服务器的防火墙开放,否则访问不到

运行

在服务器运行 frps,在本地运行frpc ;或者使用 systemd 启动

测试配置:

image-20250604152334694

官方文档

https://gofrp.org/zh-cn/docs/