FRP (Fast Reverse Proxy) 是一个高效的反向代理应用,允许你将内网服务暴露到外网。以下是如何安装和使用 FRP 的详细步骤。
安装 FRP
首先,你需要下载并安装 FRP。以下步骤适用于 Linux 系统。
-
下载 FRP:
访问 FRP 的 GitHub 发布页面,下载最新版本的 FRP。
wget https://github.com/fatedier/frp/releases/download/v0.39.0/frp_0.39.0_linux_amd64.tar.gz
-
解压 FRP:
tar -zxvf frp_0.39.0_linux_amd64.tar.gz cd frp_0.39.0_linux_amd64
配置 FRP
FRP 包含两个主要部分:frps
(FRP 服务器)和 frpc
(FRP 客户端)。首先配置并启动 FRP 服务器,然后配置并启动 FRP 客户端。
配置 FRP 服务器
-
创建配置文件:
创建
frps.ini
文件,并添加以下配置:[common] bind_port = 7000
-
启动 FRP 服务器:
./frps -c frps.ini
配置 FRP 客户端
-
创建配置文件:
创建
frpc.ini
文件,并添加以下配置:[common] server_addr = x.x.x.x # 服务器的公网 IP 地址 server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000
上述配置示例表示将本地的 SSH 服务(默认在 22 端口)通过 FRP 暴露在服务器的 6000 端口上。
-
启动 FRP 客户端:
./frpc -c frpc.ini
使用 FRP
在配置并启动 FRP 服务器和客户端之后,你可以通过服务器的公网 IP 和配置的远程端口访问内网服务。例如,要访问暴露的 SSH 服务,可以使用以下命令:
ssh -p 6000 user@server_ip
高级配置
FRP 提供了许多高级配置选项,包括 TLS 加密、身份验证、多客户端等。以下是一些常见的高级配置示例。
TLS 加密
-
FRP 服务器配置:
在
frps.ini
文件中添加以下配置:[common] bind_port = 7000 tls_enable = true
-
FRP 客户端配置:
在
frpc.ini
文件中添加以下配置:[common] server_addr = x.x.x.x server_port = 7000 tls_enable = true [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000
身份验证
-
FRP 服务器配置:
在
frps.ini
文件中添加以下配置:[common] bind_port = 7000 token = your_secret_token
-
FRP 客户端配置:
在
frpc.ini
文件中添加以下配置:[common] server_addr = x.x.x.x server_port = 7000 token = your_secret_token [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000
常见问题排查
- 端口占用:确保 FRP 使用的端口未被其他服务占用。
- 网络连接:确保客户端和服务器之间的网络连接正常。
- 防火墙设置:确保服务器的防火墙允许 FRP 使用的端口。
通过以上步骤,你应该能够成功配置和使用 FRP,将内网服务暴露到外网。如果有进一步的问题或特定需求,请告诉我。