Skip to content

Latest commit

 

History

History
133 lines (105 loc) · 3.58 KB

readme.md

File metadata and controls

133 lines (105 loc) · 3.58 KB

CDM Frp Toolkit

Static Badge


CDM Frp Toolkit 是一个 Python 库,用于简化 FRP 客户端的使用。它提供了两种方式来初始化客户端:配置文件和代码中定义的配置。


环境依赖

注意!!Frp从0.34.1版本开始,配置文件格式发生了变化,所以请尽量使用配置文件初始化客户端。

使用

客户端

使用配置文件

from CDMFrp import FrpcClient

# 使用配置文件初始化客户端
frpc_with_file = FrpcClient(config_path='/path/to/your/config.toml')

# 启动 FRPC 客户端
frpc_with_file.start()

# 停止 FRPC 客户端
frpc_with_file.stop()

使用代码中定义的配置

from CDMFrp import FrpcClient

# 使用代码中定义的配置初始化客户端
frpc_with_code = FrpcClient(
    server_addr='0.0.0.0:7000',
    token='your_token',
    user='your_user',
    admin_addr=7400,
    admin_user='admin_user',
    admin_pwd='admin_pwd'
)

# 启动 FRPC 客户端
frpc_with_code.start()

# 停止 FRPC 客户端
frpc_with_code.stop()

服务端

from CDMFrp.server import FrpsClient
from CDMFrp.logger import setup_logger

# 自定义日志配置
logger = setup_logger(level="DEBUG", log_file='frps.log')

# 使用配置文件初始化 FRPS 服务端
frps_with_file = FrpsClient(config_path='frps.toml')
frps_with_file.start()

# 使用代码中定义的配置初始化 FRPS 服务端
frps_with_code = FrpsClient(
    bind_port=7000,
    token='your_token',
    dashboard_addr='0.0.0.0',
    dashboard_port=7500,
    dashboard_user='admin_user',
    dashboard_pwd='admin_pwd',
    log_file='./frps.log',
    log_level='info',
    log_max_days=3
)
frps_with_code.start()

try:
    input("按任意键停止...\n")
finally:
    frps_with_file.stop()
    frps_with_code.stop()

日志功能

cdmfrpc 库集成了日志记录功能,以便于调试和监控。默认的日志级别为 INFO,日志格式为

%(asctime)s - %(levelname)s - %(message)s。

启用日志 默认情况下,日志会输出到控制台。你也可以通过配置 logging 模块来自定义日志输出方式。

自定义日志配置 示例:

from CDMfrpc import FrpcClient
from CDMfrpc.logger import setup_logger

# 自定义日志配置 详细设置见代码注释
logger = setup_logger(level="DEBUG", log_file='frpc.log') 


# 使用配置文件初始化客户端
frpc_with_file = FrpcClient(config_path='/path/to/your/config.ini')

# 启动 FRPC 客户端
frpc_with_file.start()

# 停止 FRPC 客户端
frpc_with_file.stop()

配置项说明

以下是一些常见的配置项及其说明:

  • server_addr: FRP 服务端的地址和端口,格式为 IP:Port。
  • token: 用于身份验证的令牌。
  • user: 用户名。
  • admin_addr: 管理接口的监听地址和端口,格式为 Port。
  • admin_user: 管理接口的用户名。
  • admin_pwd: 管理接口的密码。
  • bind_port: 绑定的端口。
  • token: 用于身份验证的令牌。
  • dashboard_addr: 仪表板的监听地址,格式为 IP。
  • dashboard_port: 仪表板的监听端口。
  • dashboard_user: 仪表板的用户名。
  • dashboard_pwd: 仪表板的密码。
  • log_file: 日志文件路径。
  • log_level: 日志级别,可选值有 debug, info, warn, error。
  • log_max_days: 日志文件的最大保存天数

更多配置项可以参考 FRP 官方文档。