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 文件。

相关推荐
Drache_long2 小时前
Docker(三)
运维·docker·容器
淼淼爱喝水2 小时前
Ansible Playbook 入门实战:自动化创建 Linux 用户
linux·运维·服务器·网络·ansible
15&30游山_玩水69☆156♀252 小时前
高性能自动化核心配件选型:西门子 S7-1500 CPU 与博世力士乐 IndraDrive M 伺服驱动器详解
运维·自动化
瀚高PG实验室2 小时前
管理工具无法连接数据库,但是navicat可以正常连接
运维·数据库·瀚高数据库
努力的搬砖人.2 小时前
CentOS 7 系统(内核版本 3.10.0-229.el7.x86_64)无法使用 yum 更新
linux·运维·centos
代码中介商2 小时前
Linux vi/vim 配置与程序调试完全指南
linux·运维·vim·gbd
BY组态2 小时前
《工业4.0时代的智能组态解决方案:打造高效自动化控制系统》
运维·信息可视化·自动化
蜜汁小强2 小时前
macOS 开发者的 tmux 实战配置:分屏导航、vi 复制模式与系统剪贴板一站打通
macos·策略模式
张火火isgudi2 小时前
OpenWrt 部署 EasyTier 进行异地组网
linux·运维·网络