教程

如何从 iPhone SSH 进 Mac(或远程服务器)

从 iPhone SSH 进你的 Mac:打开远程登录、找到地址和用户名、从 iPhone SSH 客户端连接、切到密钥,并用 Tailscale 从任何地方到达。任意服务器同样适用。

CC Chen Chen· 创始人·2026 年 6 月 11 日·阅读 5 分钟

从 iPhone SSH 进 Mac(或任意服务器)

只要两件事成立,你就能从 iPhone SSH 进你的 Mac——或任意远程服务器:目标上启用了 SSH、你有它的地址。对 Mac 来说,这意味着打开远程登录;对 Linux 服务器它本来就在跑。然后你从 iPhone SSH 客户端用地址、用户名、密码或密钥连上。本文详讲 Mac 的情况,并顺带讲通用服务器的情况。

第 1 步——在 Mac 上打开远程登录

macOS 内置了 SSH 服务器;只是默认关闭。启用它:

  • 打开系统设置 → 通用 → 共享
  • 打开远程登录
  • 记下它显示的那行:ssh 用户名@你的mac名.local——这正是你要用来连接的。

(Linux 服务器跳过这步——sshd 通常已在跑。通用流程见 如何从 iPhone SSH。)

第 2 步——找到地址和用户名

  • 用户名:你 Mac 账号的短名(终端里 whoami 打印的那个)。
  • 地址:远程登录下显示的 名字.local,或 Mac 的局域网 IP——系统设置 → Wi-Fi → 详细信息,或终端里跑 ipconfig getifaddr en0。它长得像 192.168.1.30

第 3 步——从 iPhone 连接

在 iPhone SSH 客户端里(见 iPhone 最好的 SSH 客户端)加一个连接:

  • 主机:Mac 的 名字.local 或 IP
  • 端口:22
  • 用户名:你的 Mac 短名
  • 认证:你的 Mac 登录密码,或一把 SSH 密钥

第一次接受主机密钥指纹,你就到了 Mac 上的 shell。

从 iPhone 到 Mac 的 SSH 会话,显示 shell 提示符
从 iPhone 通过 SSH 连上了 Mac。任意服务器同样的流程——在目标上启用 SSH,再用它的地址、你的用户名、和密钥连接。

第 4 步——用密钥(推荐)

密码登录可用后,切到 SSH 密钥:更安全、也不用打密码。在 iPhone 上生成密钥、把公钥加到 Mac 的 ~/.ssh/authorized_keys(TermAI 能替你部署)。见 SSH 密钥 vs 密码

记不住命令?问就行

到了 Mac 上,助手能帮你处理那些你会忘的 macOS 专属命令——launchctlpmsetdiskutil。把要做的事描述给 TermAI、运行前先复核建议的命令;它贴着你所在的机器,所以给的是 Mac 命令,不是 Linux 的。

TermAI 在手机上建议一条 macOS 命令,带 Run 按钮
贴着你连上的 Mac:用自然语言提问,得到带 Run 按钮的 macOS 命令(不是 Linux 的)。

离家时连接 Mac(或服务器)

.local 地址和局域网 IP 只在同一网络有效。要用蜂窝连你的 Mac 或服务器,别把 SSH 转发到公网——在两端装 Tailscale(或用 TermAI 内置的),从任何地方连它的私有地址。见 iPhone 上的 Tailscale

常见问题

怎么从 iPhone SSH 进我的 Mac?
打开远程登录(系统设置 → 通用 → 共享),然后从 iPhone SSH 客户端用 Mac 的 名字.local 或 IP、你的账号短名、密码或密钥连接。

SSH 进 Mac 的用户名是什么?
你 macOS 账号的短名——终端里 whoami 打印的那个。

能从任何地方 SSH 进我的 Mac 吗?
能,且不暴露它:把 Mac 和手机放进 Tailscale 网络、连 Mac 的私有地址。别把 22 端口转发到公网。

快速事实

  • Mac 上启用:系统设置 → 通用 → 共享 → 远程登录
  • 连接:iPhone SSH 客户端 → 名字.local/IP、端口 22、你的短名、密钥
  • 用户名:你 macOS 账号短名(whoami)
  • 远程:用 Tailscale,别端口转发
Try TermAI

Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.

CC
Chen Chen — Founder of TermAI

Writes about mobile DevOps, terminal UX, and the surprising depth of "boring" infrastructure.

Was this useful? ← Back to blog