33

我正在尝试让 Hadoop 的伪分布式操作示例 (http://hadoop.apache.org/common/docs/stable/single_node_setup.html) 在 OS X Lion 上工作,但在没有 ssh 的情况下无法正常工作一个密码。

说明如下:

设置无密码 ssh

现在检查您是否可以在没有密码的情况下 ssh 到 localhost: $ ssh localhost

我收到连接被拒绝:

archos:hadoop-0.20.203.0 travis$ ssh localhost
ssh: connect to host localhost port 22: Connection refused

如果没有密码就无法 ssh 到 localhost,请执行以下命令:

$ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa   
$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

在这一步之后,我仍然被拒绝连接。有任何想法吗???

4

5 回答 5

48

听起来你没有启用 SSH。应该在网络设置控制面板的某处。

于 2011-08-20T20:37:44.747 回答
7

您转到“系统偏好设置 > 共享 > 远程访问”,并且有一个授权用户列表。将其更改为“所有用户”。

这样就解决了这个问题。

于 2018-01-06T09:06:25.770 回答
0

检查您的 .ssh 目录的权限。一些 ssh 实现要求目录是 chmod 700。否则,他们会忽略它。

另外,检查输出

ssh -v localhost

查看 ssh 客户端如何尝试连接。输出非常详细,将帮助您确定是否是身份验证问题。

于 2011-09-03T10:20:19.833 回答
0

我遇到过同样的问题。请检查 ssh 服务器是否正在运行。

如果是,请打开/etc/init.d/ssh_config/etc/init.d/sshd_config文件。问题是服务器在不同的端口上运行,而客户端指向不同的端口。

在此之前,请确保已安装 openssh-server 和 client。

于 2011-12-14T16:51:53.663 回答
0

我有同样的问题,我通过以下方式解决了它:

  1. SSH 已激活。

  2. ssh -v localhost(如Herko所述) 在输出中,我发现不支持 DSA 的身份验证方法。

debug1:跳过 ssh-dss 密钥 /Users/john/.ssh/id_dsa - 不在 PubkeyAcceptedKeyTypes 中

  1. 我只是重新生成 ECDSA 密钥并删除 DSA 密钥对。

  2. 生成密钥后,Hadoop 文档中给出的过程就成立了。

因此,检查 Openssh 配置是否支持身份验证方法很重要。

于 2016-11-17T00:11:05.853 回答