当前位置: 首页 > news >正文

macOS 上使用 Homebrew 安装和配置 frp 客户端

macOS 上使用 Homebrew 安装和配置 frp 客户端 (frpc) 指南

frp (Fast Reverse Proxy) 是一款高性能的反向代理应用,常用于内网穿透。本文将介绍在 macOS 上使用 Homebrew 安装 frpc,并进行配置和管理。


一、安装 frpc

使用 Homebrew 安装(推荐)

  1. 确保已安装 Homebrew

  2. 给终端中执行:

    brew install frpc
    

安装完成后,frpc 可执行文件通常位于:

  • M1/M2 系列芯片:/opt/homebrew/bin/frpc
  • Intel 版 mac:/usr/local/bin/frpc

二、配置 frpc

创建配置文件

  1. 创建配置文件目录:

    sudo mkdir -p /opt/homebrew/etc/frp
    
  2. 创建并编辑 frpc.toml

    sudo nano /opt/homebrew/etc/frp/frpc.toml
    
  3. 配置示例:

     # 公共配置
     serverAddr = "阿里云服务器公网IP"
     serverPort = 7000
     auth.method = "token"
     auth.token = "你的token"
     
     # Gitea 服务转发
     [[proxies]]
     name = "Gitea"
     type = "tcp"
     localIP = "127.0.0.1"
     localPort = 3000            # Gitea 在群晖上的端口
     remotePort = 3000           # 阿里云上的访问端口
     
     # GitLab 服务转发
     [[proxies]]
     name = "GitLab"
     type = "tcp"
     localIP = "127.0.0.1"
     localPort = 8888            # GitLab 在群晖上的端口
     remotePort = 8888           # 阿里云上的访问端口
    

注意:不要在 serverAddr 前加 http:// 或 https://


三、启动和关闭 frpc

启动 frpc

/opt/homebrew/bin/frpc -c /opt/homebrew/etc/frp/frpc.toml

如果配置正确,将看到例如下面的输出:

[I] [service.go:288] login to server success, get run id [xxxxxxx]

关闭 frpc

pkill frpc

四、设置开机自启动

使用 Homebrew Services

  1. 先确保已安装 services 接口:

    brew tap homebrew/services
    
  2. 启动 frpc 服务:

    brew services start frpc
    

    默认会使用 /opt/homebrew/etc/frp/frpc.toml

  3. 停止 frpc 服务:

    brew services stop frpc
    

五、查看日志

tail -f /opt/homebrew/var/log/frpc.log

附录:常见配置错误

错误示例:

parse "http://[http://47.97.xx.xx]:7000": missing ']' in host

原因: serverAddr 中包含了 http:// 前缀

解决: 不要加 http://,直接写 IP 或域名


附录:推荐的 GUI 端

  • frp-gui for mac
  • EasyFrp

相关文章:

  • 【C++】——lambda表达式
  • 数据资产保护与数据知识产权保护有何不同?
  • JavaScript中的Transferable对象教程
  • 企业级硬盘的测试流程
  • L2TP实验(无图后补)
  • 老旧测试用例生成平台异步任务与用户通知优化
  • OOM问题排查和解决
  • Java工厂模式解析:灵活对象创建的实践指南
  • Java LinkedList深度解析:双向链表的实现艺术与实战指南
  • 【Python爬虫】简单介绍
  • 16bit转8bit的常见方法(图像归一化)
  • 深入理解浏览器的 Cookie:全面解析与实践指南
  • UNITY 屏幕UI自适应
  • Ubuntu下解压ZIP压缩文件出现中文乱码问题的综合解决方案
  • python提升图片清晰度
  • 【学习】对抗训练-WGAN
  • RTT添加一个RTC时钟驱动,以DS1307为例
  • C语言超详细指针知识(三)
  • Java设计模式实战:装饰模式在星巴克咖啡系统中的应用
  • 【JavaScript】二十、电梯导航栏的实现
  • 庄语乐︱宋代历史是被“塑造”出来的吗?
  • “75后”袁达已任国家发改委秘书长
  • 中国银行副行长刘进任该行党委副书记
  • 长三角铁路“五一”假期运输今启动:预计发送旅客量增6%,5月1日当天有望创新高
  • 习近平:在庆祝中华全国总工会成立100周年暨全国劳动模范和先进工作者表彰大会上的讲话
  • 特朗普的百日执政支持率与他“一税解千愁”的世界观和方法论