frp服务器配置(0.61.1 版)
frp服务器配置(0.61.1 版)
这个 frps.toml 配置文件是一个比较完整的示例,包含了多种功能和高级设置。以下是对这个配置文件的详细解析和建议,帮助你根据实际需求进行合理设置。
1. 基础配置
监听地址和端口
toml复制
bindAddr = "0.0.0.0"
bindPort = 7000
-
bindAddr:设置为"0.0.0.0" 表示监听所有网络接口,适用于服务器对外提供服务。 -
bindPort:服务端与客户端通信的端口,建议选择一个不常用的端口,避免冲突。
KCP 和 QUIC 支持
toml复制
kcpBindPort = 7000
quicBindPort = 7002
-
kcpBindPort:如果需要使用 KCP 协议,可以设置一个端口。KCP 是一种基于 UDP 的可靠传输协议,适合高延迟或丢包率较高的网络环境。 -
quicBindPort:如果需要使用 QUIC 协议,可以设置一个端口。QUIC 是一种基于 UDP 的多路复用协议,适合低延迟和高吞吐量的场景。
2. 传输层配置
心跳和连接池
toml复制
transport.maxPoolCount = 5
transport.tcpMux = true
-
maxPoolCount:每个代理保持的最大连接池大小,可以根据服务器的性能和负载进行调整。 -
tcpMux:启用 TCP 多路复用,可以提高性能,减少连接数。
TLS 配置
toml复制
transport.tls.force = false
-
force:如果设置为true,则只接受 TLS 加密的连接。需要提供证书文件(certFile)和私钥文件(keyFile)。
3. HTTP/HTTPS 代理
toml复制
vhostHTTPPort = 80
vhostHTTPSPort = 443
-
vhostHTTPPort 和 vhostHTTPSPort:设置 HTTP 和 HTTPS 代理的监听端口。如果需要通过域名访问服务,可以将这些端口映射到外部网络。
4. Web 管理界面[1]
toml复制
webServer.addr = "127.0.0.1"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "admin"
-
addr 和 port:设置 Web 管理界面的监听地址和端口。 -
user 和 password:访问 Web 管理界面的用户名和密码。
5. 日志配置
toml复制
log.to = "./frps.log"
log.level = "info"
log.maxDays = 3
-
to:日志文件的路径,可以设置为控制台(console)或文件路径。 -
level:日志级别,可选值为trace、debug、info、warn、error。 -
maxDays:日志文件保留的天数。
6. 身份验证
toml复制
auth.method = "token"
auth.token = "12345678"
-
method:身份验证方法,目前支持token 和oidc。 -
token:用于身份验证的令牌,建议设置为复杂密码。
7. 端口管理
toml复制
allowPorts = [
{ start = 2000, end = 3000 },
{ single = 3001 },
{ single = 3003 },
{ start = 4000, end = 50000 }
]
-
allowPorts:限制客户端可以使用的端口范围,增强安全性。
8. 子域名支持
toml复制
subDomainHost = "frps.com"
-
subDomainHost:设置子域名的根域名,客户端可以通过子域名访问服务。
9. HTTP 插件
toml复制
[[httpPlugins]]
name = "user-manager"
addr = "127.0.0.1:9000"
path = "/handler"
ops = ["Login"]
-
httpPlugins:定义 HTTP 插件,用于扩展 FRP 的功能。可以根据需要配置多个插件。
10. 其他高级配置
UDP 配置
toml复制
udpPacketSize = 1500
-
udpPacketSize:UDP 数据包大小,单位为字节。根据网络环境调整。
NAT 穿透
toml复制
natholeAnalysisDataReserveHours = 168
-
natholeAnalysisDataReserveHours:NAT 穿透策略数据的保留时间,单位为小时。
建议
- 安全:确保
auth.token 设置为复杂密码,避免未授权访问。 - 性能:根据服务器性能调整
maxPoolCount 和tcpMux。 - 日志:合理设置日志级别和保留天数,便于问题排查。
- 端口管理:限制客户端可以使用的端口范围,增强安全性。
- 子域名:如果需要通过域名访问服务,配置
subDomainHost。
Web 管理界面
在
frps.toml 配置文件中,webServer 部分用于启用和配置 FRP 的 Web 管理界面(dashboard)。以下是详细的配置说明和步骤,帮助你根据需求进行设置。配置 Web 管理界面
1. 基本配置
toml复制
webServer.addr = "127.0.0.1" webServer.port = 7500 webServer.user = "admin" webServer.password = "admin"-
webServer.addr:设置 Web 管理界面的监听地址。默认值是"127.0.0.1",表示只在本地监听。如果需要从外部访问,可以设置为"0.0.0.0"。 -
webServer.port:设置 Web 管理界面的监听端口。默认值是7500,可以根据需要修改。 -
webServer.user 和 webServer.password:设置访问 Web 管理界面的用户名和密码。建议设置为复杂的用户名和密码,以增强安全性。
2. 启用 TLS(可选)
如果你希望 Web 管理界面支持 HTTPS,可以启用 TLS。这需要提供证书文件和私钥文件:
toml复制
webServer.tls.certFile = "/path/to/server.crt" webServer.tls.keyFile = "/path/to/server.key"-
webServer.tls.certFile:TLS 证书文件的路径。 -
webServer.tls.keyFile:TLS 私钥文件的路径。
3. 调试模式(可选)
如果你需要调试 Web 管理界面,可以指定静态资源目录:
toml复制
webServer.assetsDir = "./static"-
webServer.assetsDir:指定静态资源目录的路径。通常用于开发和调试阶段。
示例配置
以下是一个完整的
webServer 配置示例:toml复制
webServer.addr = "0.0.0.0" # 允许外部访问 webServer.port = 7500 webServer.user = "admin" webServer.password = "your_secure_password" # 如果需要启用 TLS webServer.tls.certFile = "/path/to/server.crt" webServer.tls.keyFile = "/path/to/server.key" # 如果需要调试模式 webServer.assetsDir = "./static"配置步骤
-
编辑
frps.toml 文件打开你的frps.toml 文件,找到webServer 部分,根据上述说明进行配置。 -
保存文件保存配置文件后,重新启动
frps 服务:
bash复制sudo ./frps -c /path/to/frps.toml -
访问 Web 管理界面打开浏览器,访问
http://<服务器IP>:7500 或https://<服务器IP>:7500(如果启用了 TLS)。使用配置的用户名和密码登录。
注意事项
- 安全性:确保用户名和密码足够复杂,避免未授权访问。
- TLS 证书:如果启用 TLS,确保证书文件和私钥文件路径正确。
- 外部访问:如果需要从外部访问 Web 管理界面,确保服务器的防火墙允许访问指定端口。
通过以上配置,你可以成功启用并使用 FRP 的 Web 管理界面。如果有任何问题,可以随时提问! ↩︎
-
浙公网安备 33010602011771号