前期准备:一台有公网 IP 的服务器(可以使用阿里云或腾讯云的云服务器)作为 frp 服务端,一台没有公网 IP 的服务器作为 frp 客户端。
这里的服务器都是 cen­tos
FRP 代码仓库
FRP 下载地址

在客户端和服务端分别下载最新版本的 FRP 压缩包

在服务端的 frps.ini 文件中进行如下配置:

# frps.ini
[common]
bind_port = 7000

然后使用如下命令启动服务端:

./frps -c ./frps.ini

说明:bind_port 是 frp 服务占用的端口号,这里配置的端口号是多少客户端配置的 server_port 就是多少,默认 7000 不用修改。

在客户端的 frpc.ini 文件中进行如下配置:

# frpc.ini
[common]
server_addr = 10.10.10.10
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

然后使用如下命令启动客户端:

./frpc -c ./frpc.ini

说明:

server_addr 是服务端的 ip 地址
server_port 是服务端 frp 使用的端口号
[ssh] 是自定义的映射的服务名称,可以执行修改为其它内容,如 [http]
type 是映射的服务的连接方式,默认填些 tcp
local_ip 是要映射的主机的 ip,默认映射的是本机,也就是 127.0.0.1 ,如果要映射和当前主机处于同一网段的主机,那就填写相应主机的 ip
local_port 是本地要映射出去的端口号
remote_port 是映射出去后访问的端口

以上配置的含义为:将主机 127.0.0.1 的 22 端口映射到主机 10.10.10.10 的 6000 端口。如果要映射其它端口,可以按照 [ssh] 的配置编写。