frp 实现内网穿透:随时随地远程控制你的 Mac

发布时间:2026/10/20 18:36:31
frp 实现内网穿透:随时随地远程控制你的 Mac 家里 Mac 性能爆表公司电脑想随时连怎么办?一、为啥需要 frp家里 Mac 没有公网 IP外网无法直接访问。Cloudflare Tunnel 只能转发 HTTP/HTTPS不能转发 SSH、Flink RPC、Spark Master 等 TCP 端口。我有一台腾讯云 2核4G 小服务器虽然装不了大数据组件但做内网穿透绰绰有余。frp是一个高性能的反向代理她让公网 IP 的云服务器变成“接线员”所有从外网来的请求都通过它转发到你的 Mac 上。二、整体架构腾讯云上运行frp 服务端frps监听特定端口如 7000。家里 Mac 运行frp 客户端frpc主动连接到云服务器的 7000 端口建立持久隧道。公司电脑上通过访问云服务器的某个端口如云服务器IP:2222流量就会被转发到 Mac 的 22 端口实现远程 SSH。三、腾讯云服务端配置腾讯云 2核4G1. 下载并安装 frp登录腾讯云服务器安装frpcd /opt wget https://github.com/fatedier/frp/releases/download/v0.69.1/frp_0.69.1_linux_amd64.tar.gz tar -xzf frp_0.69.1_linux_amd64.tar.gz mv frp_0.69.1_linux_amd64 frp cd frp2. 编辑frps.toml创建配置文件frps.toml使用新版本的 TOML 格式bindPort 7000 auth.token 在这里生成一个32位强密码bindPort服务端监听端口客户端会连接这个端口。auth.token认证令牌必须一致才能连接防止被扫。3. 启动服务端测试运行./frps -c frps.toml看到frps started successfully就说明启动成功配置为系统服务可选推荐使用 systemdsudo tee /etc/systemd/system/frps.service EOF [Unit] Descriptionfrp server Afternetwork.target [Service] Typesimple ExecStart/opt/frp/frps -c /opt/frp/frps.toml Restarton-failure [Install] WantedBymulti-user.target EOF sudo systemctl daemon-reload sudo systemctl enable frps sudo systemctl start frps查看状态sudo systemctl status frps4. 开放安全组端口在腾讯云控制台安全组中添加入站规则端口7000来源为0.0.0.0/0允许所有 IP 连接 frp 服务端建议加白名单只放你公司出口 IP 或你自己家的 IP。四、客户端配置你家里的 Mac1. 下载 frparm64 版本cd ~/Downloads curl -LO https://github.com/fatedier/frp/releases/download/v0.69.1/frp_0.69.1_darwin_arm64.tar.gz tar -xzf frp_0.69.1_darwin_arm64.tar.gz mv frp_0.69.1_darwin_arm64 ~/frp cd ~/frp2. 编辑frpc.tomlserverAddr 你的腾讯云公网IP serverPort 7000 auth.token 和frps.toml里完全一样的密码 [[proxies]] name ssh type tcp localIP 127.0.0.1 localPort 22 remotePort 22223. 启动客户端测试./frpc -c frpc.toml看到start proxy success等日志就表示隧道建立。测试后可以配置开机自启在 Mac 上使用launchd。创建一个 plist 文件~/Library/LaunchAgents/com.frpc.plist?xml version1.0 encodingUTF-8? !DOCTYPE plist PUBLIC -//Apple//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd plist version1.0 dict keyLabel/key stringcom.frpc/string keyProgramArguments/key array string/Users/你的用户名/frp/frpc/string string-c/string string/Users/你的用户名/frp/frpc.toml/string /array keyRunAtLoad/key true/ keyKeepAlive/key true/ /dict /plist加载服务launchctl load ~/Library/LaunchAgents/com.frpc.plist五、从公司电脑远程操作 Mac在公司电脑上执行ssh -p 2222 your_mac_username腾讯云IP输入你的 Mac 登录密码就像坐在 Mac 面前一样。你可以运行命令、编辑文件、启动/停止 Docker 容器。六、安全加固千万别跳过由于你的 Mac 现在暴露到了公网必须做好防护安全组白名单在腾讯云安全组中将2222、8888、8081等 frp 映射端口来源 IP 限制为你公司的公网 IP或你常用的几个 IP不要设为 0.0.0.0/0。Mac 端防火墙系统偏好设置 → 安全性与隐私 → 防火墙确保开启并阻止未授权的传入连接通常默认开启。frp 强密码auth.token一定要用复杂随机字符串不要用默认值。SSH 禁密码登录可选如果你想让 SSH 更安全可以在 Mac 上禁用密码登录只用密钥避免暴力破解。定期更新 frpfrp 偶尔有安全更新保持版本较新。七、常见问题Q连接 SSH 时提示Connection refusedA检查 Mac 上的 frpc 是否在运行ps aux | grep frpc确认云服务器安全组端口已放行确认本地 SSH 服务已开启系统偏好设置 → 共享 → 远程登录。Qfrpc 连接上了但端口映射无效A检查remotePort是否已被占用在云服务器上netstat -tlnp | grep 端口尝试修改一个未使用的端口。QMac 休眠后隧道断开A在节能设置里勾选“防止自动休眠”或使用caffeinate命令保持 Mac 唤醒。也可在 frpc 客户端配置中添加autoReconnecttrue但新版本默认自动重连。Q公司网络封锁了非标准端口如 2222A可以尝试使用remotePort 443或80需要这些端口未被云服务器占用因为 443 端口通常不会被防火墙封锁。Qfrpc 连接服务i/o timeoutA腾讯云安全组放开不行要关闭防火墙或者添加端口sudo ufw allow 7000/tcp sudo ufw reloadQssh 连接 mac 报connection refusedA开启 Mac 远程登录打开系统设置→通用→共享找到远程登录这一项把它打开。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询