macOS 上开启 SSH 服务

在 macOS 上开启 SSH 服务可以通过系统偏好设置或命令行完成。


方法 1:通过系统偏好设置启用 SSH

  1. 打开"系统偏好设置"

    • 点击屏幕左上角的 Apple 菜单 > 系统设置 (或 系统偏好设置,取决于 macOS 版本)。
    • 选择 "通用" > "共享"(在较新版本中可能需要向下滚动)。
  2. 启用"远程登录"

    • 在"共享"设置中,勾选 "远程登录"(即 SSH 服务)。
    • 可以选择允许 "所有用户""仅这些用户" 访问(默认仅允许管理员)。
  3. (可选)允许完全磁盘访问

    • 如果需要远程用户访问整个磁盘,勾选 "允许远程用户对磁盘进行完全访问"
  4. 记录 SSH 登录命令

    • 在"远程登录"下方会显示类似 ssh username@hostname 的命令(如 ssh user@192.168.1.100),可用于其他设备连接。

方法 2:通过命令行启用 SSH

  1. 启动 SSH 服务

    bash 复制代码
    sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
    • 输入管理员密码确认。
  2. 检查 SSH 服务状态

    bash 复制代码
    sudo launchctl list | grep ssh
    • 如果显示 com.openssh.sshd,说明服务已运行。
  3. 配置防火墙(如有必要)

    • 默认情况下,macOS 防火墙可能阻止 SSH 连接。
    • 前往 "系统设置" > "网络" > "防火墙",确保允许 SSH(端口 22)通过。

验证 SSH 是否启用

  • 在另一台设备上尝试连接:

    bash 复制代码
    ssh username@your_mac_ip

    首次连接时会提示确认主机密钥,输入 yes 后再输入密码即可登录。


注意事项

  1. 安全性

    • 仅允许可信用户访问,避免暴露到公网。
    • 建议使用 SSH 密钥认证 替代密码登录(参考 ssh-keygenssh-copy-id)。
  2. 关闭 SSH

    • 如需禁用,取消勾选 "远程登录" 或运行:

      bash 复制代码
      sudo launchctl unload -w /System/Library/LaunchDaemons/ssh.plist
  3. 配置文件路径

    • SSH 配置文件位于 /etc/ssh/sshd_config,修改后需重启服务:

      bash 复制代码
      sudo kill -HUP $(cat /var/run/sshd.pid)

如果需要更高级的配置(如更改端口、禁用密码登录),可进一步编辑 sshd_config 文件。

相关推荐
Csxyzj13 小时前
Nginx:企业高性能web服务器(一)
运维·服务器·nginx
Eloudy13 小时前
sunshine - ubuntu 22.04, moonlight - mac OS26 远程桌面
linux·运维·ubuntu
旗开得胜马到成功14 小时前
工控系统备份的底层技术解析:老旧协议、零停机窗口与中科热备的专项破局
运维·服务器·vr
AC赳赳老秦14 小时前
企业标签体系搭建:基于 OpenClaw 采集的多维度公开数据,构建企业画像标签库
java·运维·服务器·python·信息可视化·deepseek·openclaw
苍狗T14 小时前
K8s 集群实战:基于 Harbor 私有仓库 + cri‑dockerd 完整部署
linux·运维·云原生·容器·kubernetes
EXI-小洲14 小时前
Docker 容器部署 EMQX|MQTT 消息代理服务安装与配置教程
运维·mqtt·docker·emqx
石小千14 小时前
X86下载 ARM 架构的包
linux·运维
殷忆枫14 小时前
嵌入式Linux下基于FFmpeg实现MP4解码为JPG图片(SSD202D交叉编译实战)
linux·运维·ffmpeg
牢姐与蒯14 小时前
Linux进程(二)之进程概念
linux·运维·服务器·ubuntu
HiDev_14 小时前
【非标自动化】2、认识元器件(模拟量模块)
运维·自动化