feat(wiki): ingest Home Office and Cloud DevOps subdirectories batch (42 files)
This commit is contained in:
623
raw/Home Office/Mac Mini 安装 FRP 0.65.0(ARM64)操作笔记.md
Normal file
623
raw/Home Office/Mac Mini 安装 FRP 0.65.0(ARM64)操作笔记.md
Normal file
@@ -0,0 +1,623 @@
|
||||
---
|
||||
title:
|
||||
source:
|
||||
author: shenwei
|
||||
published:
|
||||
created:
|
||||
description:
|
||||
tags: [frp, frpc, gatekeeper, mac-mini, macos]
|
||||
---
|
||||
|
||||
#mac-mini #frp #frpc #macos #gatekeeper
|
||||
|
||||
```table-of-contents
|
||||
```
|
||||
|
||||
- **FRP版本**:0.65.0
|
||||
- **CPU架构**:Apple Silicon(arm64)
|
||||
- **安装路径**:`/opt/frp/frp_0.65.0_darwin_arm64`
|
||||
- **下载地址**:GitHub Release
|
||||
- **配置文件**:`frpc.toml`
|
||||
- **包含 macOS Gatekeeper 处理**
|
||||
|
||||
此文档可以直接保存为 **README.md 或运维手册**。
|
||||
|
||||
---
|
||||
|
||||
## 一、环境信息
|
||||
|
||||
| 项目 | 内容 |
|
||||
| ----- | ---------------------------------- |
|
||||
| 系统 | macOS(Mac Mini M4) |
|
||||
| 架构 | Apple Silicon (ARM64) |
|
||||
| 软件 | FRP 0.65.0 |
|
||||
| 安装目录 | `/opt/frp/frp_0.65.0_darwin_arm64` |
|
||||
| 客户端程序 | `frpc` |
|
||||
| 配置文件 | `frpc.toml` |
|
||||
|
||||
---
|
||||
|
||||
## 二、创建安装目录
|
||||
|
||||
macOS 默认 `/opt` 需要手动创建。
|
||||
|
||||
```bash
|
||||
sudo mkdir -p /opt/frp
|
||||
sudo chown -R $(whoami) /opt/frp
|
||||
```
|
||||
|
||||
进入目录:
|
||||
|
||||
```bash
|
||||
cd /opt/frp
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 三、下载 FRP
|
||||
|
||||
下载 **ARM64 版本**:
|
||||
|
||||
```bash
|
||||
wget https://github.com/fatedier/frp/releases/download/v0.65.0/frp_0.65.0_darwin_arm64.tar.gz
|
||||
```
|
||||
|
||||
如果没有 wget:
|
||||
|
||||
```bash
|
||||
brew install wget
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 四、解压 FRP
|
||||
|
||||
```bash
|
||||
tar -xzf frp_0.65.0_darwin_arm64.tar.gz
|
||||
```
|
||||
|
||||
解压后目录结构:
|
||||
|
||||
```
|
||||
/opt/frp
|
||||
└── frp_0.65.0_darwin_arm64
|
||||
├── frpc
|
||||
├── frps
|
||||
├── frpc.toml
|
||||
├── frps.toml
|
||||
└── LICENSE
|
||||
```
|
||||
|
||||
进入目录:
|
||||
|
||||
```bash
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 五、解除 macOS Gatekeeper 限制
|
||||
|
||||
macOS 会阻止未签名程序运行。
|
||||
|
||||
需要删除 quarantine 属性:
|
||||
|
||||
```bash
|
||||
xattr -rd com.apple.quarantine .
|
||||
```
|
||||
|
||||
验证:
|
||||
|
||||
```bash
|
||||
xattr frpc
|
||||
```
|
||||
|
||||
如果没有输出说明解除成功。
|
||||
|
||||
---
|
||||
|
||||
## 六、修改 frpc.toml 配置
|
||||
|
||||
编辑配置:
|
||||
|
||||
```bash
|
||||
nano /opt/frp/frp_0.65.0_darwin_arm64/frpc.toml
|
||||
```
|
||||
|
||||
示例配置:
|
||||
|
||||
```toml
|
||||
serverAddr = "192.227.222.142"
|
||||
serverPort = 7000
|
||||
|
||||
auth.method = "token"
|
||||
auth.token = "your_token_here"
|
||||
|
||||
[[proxies]]
|
||||
name = "ssh"
|
||||
type = "tcp"
|
||||
localIP = "127.0.0.1"
|
||||
localPort = 22
|
||||
remotePort = 6000
|
||||
```
|
||||
|
||||
参数说明:
|
||||
|
||||
|参数|说明|
|
||||
|---|---|
|
||||
|serverAddr|frps服务器地址|
|
||||
|serverPort|frps监听端口|
|
||||
|auth.token|认证token|
|
||||
|localIP|本地服务地址|
|
||||
|localPort|本地端口|
|
||||
|remotePort|frps映射端口|
|
||||
|
||||
---
|
||||
|
||||
## 七、测试运行
|
||||
|
||||
进入目录:
|
||||
|
||||
```bash
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
```
|
||||
|
||||
启动客户端:
|
||||
|
||||
```bash
|
||||
./frpc -c frpc.toml
|
||||
```
|
||||
|
||||
成功日志示例:
|
||||
|
||||
```
|
||||
login to server success
|
||||
proxy added: ssh
|
||||
start proxy success
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 八、后台运行方式
|
||||
|
||||
推荐三种方式。
|
||||
|
||||
---
|
||||
|
||||
### 方式一:tmux(推荐)
|
||||
|
||||
安装 tmux:
|
||||
|
||||
```bash
|
||||
brew install tmux
|
||||
```
|
||||
|
||||
创建会话:
|
||||
|
||||
```bash
|
||||
tmux new -s frpc
|
||||
```
|
||||
|
||||
启动程序:
|
||||
|
||||
```bash
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
./frpc -c frpc.toml
|
||||
```
|
||||
|
||||
后台运行:
|
||||
|
||||
```
|
||||
Ctrl + B
|
||||
D
|
||||
```
|
||||
|
||||
重新进入:
|
||||
|
||||
```bash
|
||||
tmux attach -t frpc
|
||||
```
|
||||
|
||||
查看会话:
|
||||
|
||||
```bash
|
||||
tmux ls
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 方式二:nohup
|
||||
|
||||
后台启动:
|
||||
|
||||
```bash
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
|
||||
nohup ./frpc -c frpc.toml > frpc.log 2>&1 &
|
||||
```
|
||||
|
||||
查看进程:
|
||||
|
||||
```bash
|
||||
ps aux | grep frpc
|
||||
```
|
||||
|
||||
查看日志:
|
||||
|
||||
```bash
|
||||
tail -f frpc.log
|
||||
```
|
||||
|
||||
停止:
|
||||
|
||||
```bash
|
||||
pkill frpc
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 方式三:launchd(推荐开机自启)
|
||||
|
||||
创建配置文件:
|
||||
|
||||
```bash
|
||||
nano ~/Library/LaunchAgents/com.frpc.client.plist
|
||||
```
|
||||
|
||||
配置内容:
|
||||
|
||||
```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.frpc.client</string>
|
||||
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/opt/frp/frp_0.65.0_darwin_arm64/frpc</string>
|
||||
<string>-c</string>
|
||||
<string>/opt/frp/frp_0.65.0_darwin_arm64/frpc.toml</string>
|
||||
</array>
|
||||
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
|
||||
<key>KeepAlive</key>
|
||||
<true/>
|
||||
|
||||
<key>StandardOutPath</key>
|
||||
<string>/opt/frp/frp_0.65.0_darwin_arm64/frpc.log</string>
|
||||
|
||||
<key>StandardErrorPath</key>
|
||||
<string>/opt/frp/frp_0.65.0_darwin_arm64/frpc.error.log</string>
|
||||
|
||||
</dict>
|
||||
</plist>
|
||||
```
|
||||
|
||||
加载服务:
|
||||
|
||||
```bash
|
||||
launchctl load ~/Library/LaunchAgents/com.frpc.client.plist
|
||||
```
|
||||
|
||||
启动:
|
||||
|
||||
```bash
|
||||
launchctl start com.frpc.client
|
||||
```
|
||||
|
||||
停止:
|
||||
|
||||
```bash
|
||||
launchctl stop com.frpc.client
|
||||
```
|
||||
|
||||
卸载:
|
||||
|
||||
```bash
|
||||
launchctl unload ~/Library/LaunchAgents/com.frpc.client.plist
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 九、常用维护命令
|
||||
|
||||
### 查看 frpc 进程
|
||||
|
||||
```bash
|
||||
ps aux | grep frpc
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 查看日志
|
||||
|
||||
```bash
|
||||
tail -f /opt/frp/frp_0.65.0_darwin_arm64/frpc.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 重启 frpc
|
||||
|
||||
```bash
|
||||
pkill frpc
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
./frpc -c frpc.toml
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十、升级 FRP
|
||||
|
||||
升级步骤:
|
||||
|
||||
```
|
||||
停止 frpc
|
||||
↓
|
||||
下载新版本
|
||||
↓
|
||||
解压
|
||||
↓
|
||||
替换目录
|
||||
↓
|
||||
重新运行
|
||||
```
|
||||
|
||||
示例:
|
||||
|
||||
```bash
|
||||
pkill frpc
|
||||
cd /opt/frp
|
||||
wget 新版本
|
||||
tar -xzf
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十一、最终目录结构
|
||||
|
||||
```
|
||||
/opt/frp
|
||||
└── frp_0.65.0_darwin_arm64
|
||||
├── frpc
|
||||
├── frps
|
||||
├── frpc.toml
|
||||
├── frpc.log
|
||||
└── frpc.error.log
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十二、快速启动命令
|
||||
|
||||
日常手动运行:
|
||||
|
||||
```bash
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
|
||||
xattr -rd com.apple.quarantine .
|
||||
|
||||
./frpc -c frpc.toml
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 十三、生产环境最佳实践
|
||||
|
||||
建议:
|
||||
|
||||
### 1 统一路径
|
||||
|
||||
```
|
||||
/opt/frp/<version>
|
||||
```
|
||||
|
||||
方便版本切换。
|
||||
|
||||
例如:
|
||||
|
||||
```
|
||||
/opt/frp/frp_0.65.0_darwin_arm64
|
||||
/opt/frp/frp_0.66.0_darwin_arm64
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2 创建软链接
|
||||
|
||||
```
|
||||
/opt/frp/current
|
||||
```
|
||||
|
||||
示例:
|
||||
|
||||
```bash
|
||||
ln -sfn /opt/frp/frp_0.65.0_darwin_arm64 /opt/frp/current
|
||||
```
|
||||
|
||||
启动时:
|
||||
|
||||
```
|
||||
/opt/frp/current/frpc
|
||||
```
|
||||
|
||||
升级时只需要切换 symlink。
|
||||
|
||||
---
|
||||
|
||||
### 3 日志独立
|
||||
|
||||
```
|
||||
/opt/frp/logs
|
||||
```
|
||||
|
||||
更利于监控。
|
||||
|
||||
---
|
||||
|
||||
如果你愿意,我可以再帮你整理一份 **Mac Mini 服务器化运维方案(FRP + OpenClaw + n8n + Clash)统一进程管理架构**,解决几个你现在已经遇到的问题:
|
||||
|
||||
- frp
|
||||
|
||||
- openclaw
|
||||
|
||||
- proxychains
|
||||
|
||||
- tmux
|
||||
|
||||
- telegram bot
|
||||
|
||||
- n8n
|
||||
|
||||
|
||||
统一用 **macOS launchd + 进程依赖管理** 管理,这样你的 **Mac Mini 就可以像一台真正的 Linux server 一样稳定运行**。
|
||||
|
||||
|
||||
---
|
||||
## 十四、实际案例:通过 FRP 远程 SSH 登录 Mac Mini
|
||||
|
||||
本案例用于 **通过 VPS 作为中转服务器,从公网 SSH 访问 Mac Mini**。
|
||||
|
||||
架构如下:
|
||||
|
||||
本地 Mac Mini
|
||||
│
|
||||
│ SSH 22
|
||||
│
|
||||
frpc 客户端
|
||||
│
|
||||
│ FRP 隧道
|
||||
│
|
||||
远端 VPS (frps)
|
||||
│
|
||||
│ 60026
|
||||
│
|
||||
公网 SSH 访问
|
||||
|
||||
公网访问方式:
|
||||
|
||||
ssh 用户名@VPS_IP -p 60026
|
||||
|
||||
---
|
||||
|
||||
### 1 VPS 服务器开放防火墙端口
|
||||
|
||||
如果 VPS 使用 **UFW 防火墙**,需要允许 FRP 映射端口。
|
||||
|
||||
执行:
|
||||
|
||||
sudo ufw allow 60026
|
||||
|
||||
检查防火墙状态:
|
||||
|
||||
sudo ufw status
|
||||
|
||||
输出示例:
|
||||
|
||||
60026/tcp ALLOW Anywhere
|
||||
|
||||
说明端口已开放。
|
||||
|
||||
---
|
||||
|
||||
### 2 修改 frpc.toml 配置
|
||||
|
||||
编辑配置文件:
|
||||
|
||||
nano /opt/frp/frp_0.65.0_darwin_arm64/frpc.toml
|
||||
|
||||
增加如下代理配置:
|
||||
|
||||
[[proxies]]
|
||||
name = "macmini-ssh"
|
||||
type = "tcp"
|
||||
localIP = "127.0.0.1"
|
||||
localPort = 22
|
||||
remotePort = 60026
|
||||
|
||||
配置说明:
|
||||
|
||||
|参数|说明|
|
||||
|---|---|
|
||||
|name|代理名称|
|
||||
|type|TCP转发|
|
||||
|localIP|本地 SSH 地址|
|
||||
|localPort|本地 SSH 端口|
|
||||
|remotePort|VPS 上映射端口|
|
||||
|
||||
---
|
||||
|
||||
### 3 完整 frpc.toml 示例
|
||||
|
||||
示例:
|
||||
|
||||
serverAddr = "VPS_IP"
|
||||
serverPort = 7000
|
||||
|
||||
auth.method = "token"
|
||||
auth.token = "your_token"
|
||||
|
||||
[[proxies]]
|
||||
name = "macmini-ssh"
|
||||
type = "tcp"
|
||||
localIP = "127.0.0.1"
|
||||
localPort = 22
|
||||
remotePort = 60026
|
||||
|
||||
---
|
||||
|
||||
### 4 重启 frpc
|
||||
|
||||
重新启动客户端:
|
||||
|
||||
pkill frpc
|
||||
|
||||
cd /opt/frp/frp_0.65.0_darwin_arm64
|
||||
|
||||
./frpc -c frpc.toml
|
||||
|
||||
成功日志示例:
|
||||
|
||||
proxy added: macmini-ssh
|
||||
start proxy success
|
||||
|
||||
---
|
||||
|
||||
### 5 测试远程 SSH
|
||||
|
||||
在任意公网机器执行:
|
||||
|
||||
ssh username@VPS_IP -p 60026
|
||||
|
||||
示例:
|
||||
|
||||
ssh billy@192.227.xxx.xxx -p 60026
|
||||
|
||||
成功后即可登录 Mac Mini。
|
||||
|
||||
---
|
||||
|
||||
### 6 推荐 SSH 使用方式
|
||||
|
||||
为了方便使用,可以在 **客户端 ~/.ssh/config** 添加配置:
|
||||
|
||||
nano ~/.ssh/config
|
||||
|
||||
增加:
|
||||
|
||||
Host macmini
|
||||
HostName VPS_IP
|
||||
Port 60026
|
||||
User billy
|
||||
|
||||
之后直接:
|
||||
|
||||
ssh macmini
|
||||
|
||||
即可登录 Mac Mini。
|
||||
Reference in New Issue
Block a user