macOS 自带 Terminal + ~/.ssh/config 使用说明

VFX大学 云计算 macOS 自带 Terminal + ~/.ssh/config 使用说明

正在查看 0 条回复
  • 作者
    帖子
    • #470

      追光
      管理员

      🖥️ macOS 自带 Terminal:配置 SSH 登录的标准方法

      macOS 内置了功能强大的 Terminal(终端),无需额外安装即可使用 SSH 连接远程服务器。通过配置 ~/.ssh/config 文件,你可以:

      • 简化 SSH 命令(用短名代替长串 IP/端口)

      • 管理多个服务器登录信息

      • 实现免密登录(推荐使用 SSH 密钥)


      📍 文件位置

      配置文件路径为:

      ~/.ssh/config

      这个文件由 macOS 自带 Terminal 识别并自动加载。


      ✍ 如何编辑(

      macOS 默认 nano 编辑器

      在 Terminal 中输入:

      nano ~/.ssh/config

      📌 macOS 的 nano 快捷键:

      • Ctrl + O → 保存

      • Enter → 确认文件名

      • Ctrl + X → 退出编辑器

      ⚠️ 注意:不是 :wq,那是 Vim 的写法。


      ✅ 示例配置

      Host myserver
        HostName 192.168.1.123      # 服务器地址
        Port 2222                   # 非默认端口需写
        User root                   # 登录用户
        IdentityFile ~/.ssh/id_ed25519  # 密钥路径

      连接命令简化为:

      ssh myserver


      🔐 使用 SSH 密钥登录(推荐)

      1. 生成密钥(如果没有)

      ssh-keygen -t ed25519 -C "your@email.com"

      默认会保存在:

      ~/.ssh/id_ed25519(私钥)
      ~/.ssh/id_ed25519.pub(公钥)

      1. 上传公钥到服务器

      ssh-copy-id -i ~/.ssh/id_ed25519.pub root@192.168.1.123 -p 2222

      1. 在 config 中配置使用该密钥(参考上方配置)。


      💡 备用方法:让 macOS 记住密码(不推荐)

      如果未使用密钥,macOS 会提示是否将密码保存到钥匙串中(Keychain)。虽然方便,但安全性略逊于密钥认证。


      🧠 多服务器配置举例

      Host dev
        HostName dev.example.com
        User root
        Port 2222
        IdentityFile ~/.ssh/dev_rsa
      
      Host staging
        HostName staging.example.com
        User ubuntu
        IdentityFile ~/.ssh/staging_rsa


      ❌ 不推荐:将密码写入配置文件

      虽然技术上可以通过工具如 sshpass 实现自动密码登录,但:

      • macOS 默认无此工具

      • 安全风险极高(明文密码)

      • 不被官方推荐


      ✅ 小结

      特性

      描述

      🛠 工具

      macOS 自带 Terminal,无需安装

      🔑 推荐认证方式

      使用 SSH 密钥免密登录

      📁 管理文件

      ~/.ssh/config 用于集中管理服务器信息

      ✍ 保存快捷键

      在 nano 中使用 Ctrl + O 保存,Ctrl + X 退出

      ❌ 避免行为

      明文密码、使用 :wq 保存等 Vim 习惯

正在查看 0 条回复
  • 在下方一键注册,登录后就可以回复啦。