frp远程穿透配置

发布于:2025-04-22 ⋅ 阅读:(19) ⋅ 点赞:(0)


frp是一个高性能的反向代理应用,用于将位于内网的服务通过代理暴露到公网。以下是其基本使用步骤:

准备工作

  • 拥有一台具有公网IP的服务器,作为frp的服务端。
  • 在内网中需要被穿透的设备上安装frp客户端。可从frp官方网站下载适合你操作系统的版本。

服务端配置(toml)

  1. 下载并解压frp服务端软件到服务器上的指定目录,如/usr/local/frp
  2. 编辑服务端配置文件frps.toml,以下是一个基本的配置示例:
bindPort = 7000  # 服务端监听的端口,可自行修改
  1. 在服务器上启动frp服务端,执行./frps -c frps.toml命令。如果是Windows系统,则在解压目录下找到frps.exe文件,在命令行中执行frps.exe -c frps.toml

客户端配置(toml)

  1. 下载并解压frp客户端软件到内网设备上的指定目录。
  2. 编辑客户端配置文件frpc.toml,示例配置如下:
serverAddr = "serverip"
serverPort = 7000

[[proxies]]  #第一个代理地址
name = "test-tcp" 
type = "tcp"
localIP = "127.0.0.1"
localPort = 4001
remotePort = 6000

[[proxies]]  #第二个代理地址
name = "test-tcp2"
type = "tcp"
localIP = "127.0.0.1"
localPort = 8080
remotePort = 6001

上述配置表示将本地的SSH服务(默认端口22)通过frp映射到公网服务器的6000端口。你可以根据实际需求修改配置,以穿透不同的服务。例如,如果要穿透本地的Web服务,假设本地Web服务运行在80端口,只需将local_port改为80,并根据需要设置remote_port

  1. 在内网设备上启动frp客户端,执行./frpc -c frpc.toml命令(Windows系统执行frpc.exe -c frpc.toml)。

访问内网服务

客户端启动成功后,你就可以通过公网服务器的IP地址和配置的remote_port来访问内网中的服务。例如,使用SSH客户端连接到your_server_ip:6000,就可以访问到内网设备上的SSH服务。

以上是frp的基本使用方法,实际应用中可根据具体需求对配置进行调整和扩展。例如,配置HTTP或HTTPS协议的穿透、设置子域名访问等。同时,为了保证安全性,建议合理设置防火墙规则,限制对frp服务端和映射端口的访问。

使用ini文件配置

服务端:

[common]
bind_port = 7000  # 服务端监听的端口,可自行修改
token = your_token  # 设置一个用于客户端和服务端认证的令牌,需替换为你自己的字符串

客户端,定义了2个穿透:

[common]
server_addr = your_server_ip  # 替换为服务端的公网IP地址
server_port = 7000  # 与服务端配置中的bind_port一致
token = your_token  # 与服务端配置中的token一致

[ssh]  # 定义一个名为ssh的穿透规则,可自行命名
type = tcp  # 协议类型为TCP
local_ip = 127.0.0.1  # 本地需要被穿透服务的IP地址
local_port = 22  # 本地服务的端口,这里以SSH服务为例
remote_port = 6000  # 公网访问的端口,可自行修改

[devices]  # 定义一个名为devices的穿透规则,可自行命名
type = tcp  # 协议类型为TCP
local_ip = 127.0.0.1  # 本地需要被穿透服务的IP地址
local_port = 4001  # 本地服务的端口,这里以SSH服务为例
remote_port = 6001  # 公网访问的端口,可自行修改



网站公告

今日签到

点亮在社区的每一天
去签到