无法在 macOS 上运行 SSH 守护进程

无法在 macOS 上运行 SSH 守护进程

服务器运行的是 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 &

相关内容