迁移服务器重装frps,将老版本ini配置文件改为toml配置文件。
https://www.cnblogs.com/nenhall/p/18686946
安装frps
frps服务端需要一台有公网ip的机器,本帖以阿里云ECS,需在防火墙开放服务监听端口。
下载frp
根据服务器处理器架构下载最新软件包并解压到/opt/frp
cd /opt
wget https://ghfast.top/https://github.com/fatedier/frp/releases/download/v0.61.2/frp_0.61.2_linux_amd64.tar.gz
tar -zxvf frp_0.61.2_linux_amd64.tar.gz
mv frp_0.61.2_linux_amd64 frp
rm -rf frp_0.61.2_linux_amd64.tar.gz
配置文件
最新版本已经不建议.ini配置,下述使用toml配置文件示例
vi /opt/frp/frps.toml
bindAddr = "0.0.0.0"
bindPort = 1234
# auth
auth.method = "token"
auth.token = "1234"
# Dashboard
webServer.addr = "0.0.0.0"
webServer.port = 6000
webServer.user = "1234"
webServer.password = "1234"
# log
log.to="./frps.log"
log.level = "trace"
log.maxDays = 3
启动脚本
简单写一个shell脚本控制frps的启停。使用vi创建并编辑run.sh脚本,随后chmod授权脚本。使用方式如下:
启动 /opt/frp/run.sh start
停止 /opt/frp/run.sh stop
重启 /opt/frp/run.sh restart
vi /opt/frp/run.sh
chmod 755 /opt/frp/run.sh
#!/bin/bash
frps_start() {
nohup /opt/frp/frps -c /opt/frp/frps.toml >/dev/null 2>&1 &
echo -e "\033[32m frps start complete. \033[0m"
}
frps_stop() {
killall frps
echo -e "\033[32m frps stop complete. \033[0m"
}
main() {
case "$1" in
"start")
frps_start
;;
"stop")
frps_stop
;;
"restart")
frps_stop
frps_start
;;
*)
echo -e "\033[31m Unknown parameter: $1 \033[0m"
return 1
;;
esac
}
main "$@"
使用frpc
k2p路由器frpc版本为0.21.0,R3G路由器frpc版本0.42.0。经测试可以使用,老版本使用的ini配置文件,提供个toml格式的配置示例:
serverAddr = "120.24.1.53" # 服务端的 IP 地址,客户端连接的目标地址
serverPort = 7000 # 服务端的监听端口,客户端通过此端口连接服务端
loginFailExit = true # 登录失败时是否退出客户端,true 表示登录失败则退出
#log.to = "./frpc.log" # 日志输出路径,注释掉表示不启用文件日志输出
log.level = "trace" # 日志级别,trace 表示记录所有日志信息,包括调试信息
log.maxDays = 3 # 日志文件保留的最大天数
auth.method = "token" # 鉴权方法,此处使用 token 方式进行身份验证
auth.token = "123456" # 鉴权 token,客户端需要使用此 token 才能连接到服务端
transport.dialServerTimeout = 60 # 连接服务端的超时时间(单位:秒)
webServer.addr = "127.0.0.1" # Web 服务器的绑定地址,仅监听本地访问
webServer.port = 7400 # Web 服务器的监听端口,用于访问 Web 管理界面
webServer.user = "admin" # Web 管理界面的用户名
webServer.password = "admin" # Web 管理界面的密码
# 定义代理服务,用于将本地服务暴露到公网
[[proxies]]
name = "django" # 代理服务的名称
type = "http" # 代理类型,此处为 HTTP 代理
localIP = "127.0.0.1" # 本地服务的 IP 地址
localPort = 8000 # 本地服务的端口
subdomain = "api" # 子域名,通过 <subdomain>.<subdomainHost> 访问服务
[[proxies]]
name = "webui" # 另一个代理服务的名称
type = "http" # 代理类型,此处为 HTTP 代理
localIP = "127.0.0.1" # 本地服务的 IP 地址
localPort = 7860 # 本地服务的端口
subdomain = "webui" # 子域名,通过 <subdomain>.<subdomainHost> 访问服务