0

我在 OS X (10.8.3) 上运行 OpenSSH 的 sshd 实例,但它不接受有效的用户密码。它只是回应,“权限被拒绝,请再试一次。” 我正在 ssh'ing 到本地主机。如果我将我的公钥添加到 .ssh/authorized_keys,我可以毫无问题地连接。

我假设 OS X 正在阻止应用程序访问 OS X 的身份验证系统(即 /etc/shadow?),因此尝试在 sudo 下运行 sshd,但遇到了 sshd 在客户端连接时立即崩溃并出现此错误的问题服务器见下面的更新 2):

ssh_sandbox_child: ssandbox_init: dlopen(/usr/lib/libsandbox.1.dylib, 261): image not found [preauth]

对这些问题的任何帮助表示赞赏。

以防万一:我不想在 OS X 上替换我现有的 sshd 服务,而只是想为我正在测试的东西并行运行这个服务。

更新:我忘了提到,同样的代码和配置在 Ubuntu 12.10 系统上编译和运行都非常好。在 linux 机器上,我没有在 sudo 下运行。

更新 2:我通过设置我的 sshd_config 解决了服务器在 sudo 下运行的问题UsePrivilegeSeparation yes,但仍然不接受密码。

4

1 回答 1

0

感谢 Bart 为我指明了正确的方向(OS X 期待 PAM)。

如此处所述,要使用 PAM 构建 OpenSSH,必须./configure --with-pam在运行之前配置使用 via make:。

UsePAM yes还需要按照 Bart 的建议添加到 sshd_config。

于 2013-04-14T18:07:53.557 回答