Mac 上安装并使用 frpc(FRP 内网穿透客户端)指南

一、先装好 Homebrew(macOS 的包管理器)

  1. 打开终端(Terminal),先装命令行开发工具

    bash 复制代码
    xcode-select --install

    弹窗点"安装",等待 3~5 分钟。

  2. 一键安装 Homebrew

    bash 复制代码
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    • Apple Silicon (M1/M2/M3) 装完会提示把路径写入 ~/.zprofile,照做即可:

      bash 复制代码
      echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
      source ~/.zprofile
    • Intel 芯片则用 /usr/local 路径,Homebrew 会提示,同样追加到 ~/.zshrc~/.bash_profile

  3. 验证

    bash 复制代码
    brew --version  # 能看到版本号就 OK

若国内网络慢,可换清华/阿里镜像,详见 。


二、安装 frpc

bash 复制代码
brew install frpc

装完验证:

bash 复制代码
frpc -v      # 输出版本号即成功

三、准备配置文件 frpc.ini

  1. 找个目录放配置,比如用户主目录:

    bash 复制代码
    mkdir -p ~/frp && cd ~/frp
  2. 新建并编辑文件(用自带的 nano,或者你喜欢的编辑器)

    bash 复制代码
    nano frpc.ini
  3. 粘贴下面示例,按需改掉 IP、端口、token、本地端口:

    ini 复制代码
    [common]
    server_addr = 123.123.123.123   # 你的公网服务器 IP
    server_port = 7000              # frps 的监听端口(默认 7000)
    token = my_secure_token         # 与服务端 token 保持一致
    
    [mac-ssh]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 22                 # 把本机 SSH 暴露出去
    remote_port = 6000              # 公网服务器上开放 6000 端口

    如果你要暴露本地 Web 开发服务器,把 type = tcplocal_port = 3000 改一下即可。


四、启动 frpc

bash 复制代码
frpc -c ~/frp/frpc.ini

看到日志出现 login to server success 就说明连上了。

此时在任意地方执行:

bash 复制代码
ssh -p 6000 <你的用户名>@123.123.123.123

就能穿透到公司/家里的 Mac。


五、后台常驻(可选)

方法 A:用 brew services(最简单)

bash 复制代码
brew services start frpc

会自动把 ~/frp/frpc.ini 作为默认配置,随系统启动。

方法 B:自定义 LaunchAgent(灵活)

  1. 新建 plist 文件

    bash 复制代码
    nano ~/Library/LaunchAgents/com.user.frpc.plist
  2. 写入内容(路径改为你自己的)

    xml 复制代码
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
      "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
      <key>Label</key><string>com.user.frpc</string>
      <key>ProgramArguments</key>
      <array>
        <string>/opt/homebrew/bin/frpc</string>
        <string>-c</string>
        <string>/Users/你的用户名/frp/frpc.ini</string>
      </array>
      <key>RunAtLoad</key><true/>
      <key>KeepAlive</key><true/>
    </dict>
    </plist>
  3. 加载并启动

    bash 复制代码
    launchctl load ~/Library/LaunchAgents/com.user.frpc.plist

六、常见问题 FAQ

症状 排查要点
启动提示 command not found 确认 brew install frpc 成功,且 PATH 正确。
连接失败 dial tcp ... i/o timeout 检查本地网络是否能到 server_addr:server_port,防火墙、安全组是否放行。
服务端提示 authorization failed token 不一致或忘记写。
想用域名而不是 IP server_addr 直接填域名即可,如 frp.example.com
想穿透多个端口 frpc.ini 里继续加 [xxx] 区块即可。

七、一句话总结

在 Mac 上:

  1. 先装 Homebrew(一次性)
  2. brew install frpc
  3. 写好 frpc.ini
  4. frpc -c frpc.inibrew services start frpc

就能把内网服务安全地暴露到公网。

相关推荐
qq_297574674 小时前
【实战教程】SpringBoot 集成阿里云短信服务实现验证码发送
spring boot·后端·阿里云
碎梦归途4 小时前
思科网络设备配置命令大全,涵盖从交换机到路由器的核心配置命令
linux·运维·服务器·网络·网络协议·路由器·交换机
徐同保5 小时前
解决 Vue 3 项目 TypeScript 编译错误:@types/lodash 类型定义不兼容
redis·网络协议·https
韩立学长6 小时前
【开题答辩实录分享】以《智能大学宿舍管理系统的设计与实现》为例进行选题答辩实录分享
数据库·spring boot·后端
编码者卢布8 小时前
【Azure Storage Account】Azure Table Storage 跨区批量迁移方案
后端·python·flask
Python+JAVA+大数据10 小时前
TCP_IP协议栈深度解析
java·网络·python·网络协议·tcp/ip·计算机网络·三次握手
她说..11 小时前
策略模式+工厂模式实现审批流(面试问答版)
java·后端·spring·面试·springboot·策略模式·javaee
skywalker_1111 小时前
网络编程篇
java·网络协议·网络编程
梦梦代码精11 小时前
开源、免费、可商用:BuildingAI一站式体验报告
开发语言·前端·数据结构·人工智能·后端·开源·知识图谱
2501_9159214312 小时前
傻瓜式 HTTPS 抓包,简单抓取iOS设备数据
android·网络协议·ios·小程序·https·uni-app·iphone