服务器运行的是 macOS Mojave 10.14.4。我无法启动 SSH 守护进程。本地登录后,我运行:
$ launchctl list | grep ssh
- 0 com.openssh.ssh-agent
$ ps -A | grep ssh
1483 ?? 0:00.00 ssh-agent -s
8483 ?? 0:00.00 ssh-agent
该服务未激活。为了解决这个问题,我尝试过:
$ sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
$ sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
$ sudo launchctl stop com.openssh.sshd
$ sudo launchctl start com.openssh.sshd
$ eval `ssh-agent -s`
Agent pid 9055
我没有任何运气。在尝试解决这个问题之前我尝试的最后一件事是:
$ /usr/sbin/sshd -d
debug1: sshd version OpenSSH_7.9, LibreSSL 2.7.3
Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key
sshd: no hostkeys available -- exiting.
然后我跑了$ ssh-keygen -A
,但仍然收到同样的消息。
答案1
要在 MacOS 中启用 SSH 服务/守护进程,请执行以下操作:
sudo systemsetup -setremotelogin on
要禁用 SSH 服务,请执行以下操作:
sudo systemsetup -setremotelogin off
要检查它是打开还是关闭:
sudo systemsetup -getremotelogin
(使用莫哈韦测试)
顺便说一句,sshd
必须以 root 身份运行,而不是像您运行它一样。它一定要是:
sudo /usr/sbin/sshd -d &