菜鸟科技网

iOS如何用SSH命令?

  1. 使用支持 SSH 的终端 App(最常见、最推荐)
  2. 使用 Xcode 的命令行工具(适用于开发者)

对于绝大多数用户来说,第一种方法是首选,下面我将详细介绍这两种方法。

iOS如何用SSH命令?-图1
(图片来源网络,侵删)

使用支持 SSH 的终端 App(推荐)

这是在 iPhone 或 iPad 上执行 SSH 命令最简单、最直接的方式,你只需要从 App Store 下载一个终端模拟器应用。

推荐的 App

  • Blink Shell: 非常强大,高度可定制,支持多路复连,界面美观,是许多 iOS 开发者的首选(付费)。
  • Termius: 界面现代,支持多标签、SSH 密钥管理、SFTP 文件传输,功能全面(有免费版和付费版)。
  • Blink Shell: 同样是一个功能强大的终端,以其稳定性和丰富的插件而闻名(付费)。
  • Working Copy: 如果你主要使用 Git,这个 App 非常棒,它也内置了强大的终端功能(付费)。
  • iSH Shell: 一个在 iOS 上运行真实 Linux shell(Alpine Linux)的 App,你可以通过 apk install openssh-client 来安装 SSH 客户端,它更像是一个“Linux 终端”,适合有 Linux 经验的用户(免费,有内购)。

操作步骤(以 Termius 为例)

  1. 下载并安装 App 前往 App Store,搜索 "Termius" 或你选择的 App,然后下载安装。

  2. 创建新连接 打开 App,通常会有一个 "+" 或 "Add" 按钮,点击它来创建一个新的 SSH 连接。

  3. 填写服务器信息 在新连接的设置中,你需要填写以下关键信息:

    iOS如何用SSH命令?-图2
    (图片来源网络,侵删)
    • Alias: 给这个连接起一个你容易识别的名字,"我的 Raspberry Pi" 或 "公司服务器"。
    • Hostname: 你要连接的服务器的 IP 地址或域名。168.1.100example.com
    • Port: SSH 的默认端口是 22,如果你的服务器使用了非标准端口,请在这里填写。
    • Username: 你的用户名,pi, ubuntu, root 或你的登录名。
  4. 认证方式(非常重要) SSH 认证主要有两种方式:密码和 SSH 密钥。强烈推荐使用 SSH 密钥,因为它更安全、更方便。

    • 使用密码认证 这是最简单的方式,在认证设置中,选择 "Password",然后输入你的服务器密码,每次连接时都需要输入密码。

    • 使用 SSH 密钥认证(推荐) 这种方式更安全,无需每次输入密码。

      • 步骤 A: 在 iOS App 中添加你的私钥 在 App 的设置中找到 "Key Manager" 或 "SSH Keys",点击 "Add Key",然后选择 "Import" 或 "Enter Manually"。
        • 如果你有私钥文件 (.pem 或 .key):可以通过文件 App、邮件附件等方式导入。
        • 如果你想手动输入:将你的私钥内容(从 -----BEGIN OPENSSH PRIVATE KEY----------END OPENSSH PRIVATE KEY----- 的全部内容)粘贴进去,并为它设置一个密码(Passphrase)以增加安全性。
      • 步骤 B: 在服务器上配置公钥 这一步需要在你的电脑或 Mac 上完成,然后将公钥内容添加到服务器的 ~/.ssh/authorized_keys 文件中。
        • 在你的电脑上,通常私钥是 id_rsa,公钥是 id_rsa.pub,用文本编辑器打开 id_rsa.pub 文件,复制里面的全部内容(ssh-rsa AAAAB3NzaC1yc2E... user@mycomputer)。
        • 登录到你的服务器(可能需要用密码先登录一次)。
        • 运行命令 mkdir -p ~/.ssh 确保目录存在。
        • 运行命令 echo "粘贴刚才复制的公钥内容" >> ~/.ssh/authorized_keys 将公钥追加到文件末尾。
        • 运行命令 chmod 700 ~/.sshchmod 600 ~/.ssh/authorized_keys 设置正确的文件权限。
      • 步骤 C: 在 App 中配置密钥认证 回到你的 SSH 连接设置,在认证部分,选择 "Public Key",然后从下拉菜单中选择你刚刚添加的私钥,如果私钥有密码,连接时会要求你输入。
  5. 连接 填写完所有信息后,保存连接,然后点击该连接,App 就会尝试建立 SSH 连接,如果是第一次连接到该服务器,系统会提示你验证服务器的指纹(The authenticity of host '...' can't be established...),输入 yes 即可。

    iOS如何用SSH命令?-图3
    (图片来源网络,侵删)

连接成功后,你就可以在 iOS 设备的终端里输入各种 Linux/Unix 命令了,ls, cd, pwd, top, git 等。


使用 Xcode 的命令行工具(适用于开发者)

如果你是 iOS 开发者,并且安装了 Xcode,你可以通过它来获得一个基于 libimobiledevicessh 工具,这个 ssh 主要用于与 iOS 设备本身进行交互,而不是连接到远程服务器。

操作步骤

  1. 安装 Xcode 确保你的 iPhone 或 iPad 上已经安装了 Xcode,可以从 App Store 免费下载。

  2. 打开终端 打开 Xcode,在菜单栏中选择 Xcode -> Open Developer Tool -> More Developer Tools...。 这会打开一个网页,下载 "Command Line Tools for Xcode",下载并安装后,你可以在 Xcode 中通过 Terminal (终端) App 来访问命令行。

  3. 连接到 iOS 设备 这个 ssh 工具的特殊之处在于,它不需要你输入 IP 地址,而是通过设备的 UDID (Unique Device Identifier) 来识别。

    • 将你的 iPhone/iPad 通过 USB-C 线连接到一台 Mac 电脑上。
    • 在 Mac 的终端中运行命令 idevice_id -l,你会看到连接的 iOS 设备的 UDID。
    • 在你的 iOS 设备上,打开 设置 -> 隐私与安全性 -> 本地网络,确保 Xcode 有权限访问你的设备。
    • 在 iOS 设备的 Xcode 终端中,运行以下命令:
      ssh root@localhost -p 2222
      • root 是默认的用户名,首次连接时,系统会提示你设置一个 root 密码。
      • localhost 指向本机。
      • -p 2222 指定了 SSH 的端口。
  4. 使用 连接成功后,你就可以在 iOS 设备上执行一些底层的系统命令,例如查看系统文件 (/var/mobile)、安装 .deb 包等。注意:拥有 root 权限非常强大,请谨慎操作,以免损坏系统。


总结与对比

特性 方法一 (终端 App) 方法二 (Xcode)
主要用途 连接到远程服务器 (Linux, macOS, Raspberry Pi等) 连接到iOS 设备本身 (进行越狱或系统级调试)
连接对象 任何支持 SSH 的远程主机 本身的 iOS 设备
前置条件 从 App Store 下载一个 SSH 客户端 App 安装 Xcode 和 Command Line Tools
认证方式 密码或 SSH 密钥 默认 root 用户,需要设置密码
易用性 非常简单,适合所有用户 较为复杂,主要面向开发者
推荐度 ⭐⭐⭐⭐⭐ (绝大多数用户的首选) ⭐⭐ (仅特定需求开发者使用)

如果你想在 iPhone 或 iPad 上像在电脑一样通过 SSH 管理你的服务器、树莓派或其他设备,请直接使用方法一,下载一个像 Termius 或 Blink Shell 这样的 App,它简单、高效且功能强大。

分享:
扫描分享到社交APP
上一篇
下一篇