2014-04-17 76 views
0

我想在我的Ubuntu系统上配置Hadoop MapReduce环境。我创建了一个名为hduser的新用户,并将其置于一个新组hadoop之下。我创建了一个ssh证书并将其添加到授权密钥。但是每当我尝试连接到本地主机时,我都会遇到麻烦,因为它一直要求输入密码而不是使用密钥验证。如何永久更改sshd_config文件?

我通过将用户hduser添加到/etc/ssh/sshd_configAllowUsers列表中来解决此问题。我能够连接到本地主机并运行HDFS系统。

现在的问题是,我在sshd_config文件中为hduser所做的条目每次关闭Hadoop服务器时都会被删除。因此,每次在启动Hadoop进程之前,我必须在sshd_config文件和reload ssh中再次输入条目。有没有办法让这些变化永久化,以便我不必每次都这样做?

我也试过注释掉AllowUsers字段,但每次都会自动取消注释。

感谢, TM

Edit:我跟系统管理员,它似乎是大多数系统配置管理应用程序更新配置现在,然后每一个文件。将我的Hadoop用户添加到他们的列表中,现在工作正常。

回答

0

如何创建shh-keygen以及如何复制本地主机中的ssh-copy。 云你做下面的命令,并尝试它将运行的hadoop。

SSH-凯基-t RSA

的ssh-copy-id命令-i的〜/ .ssh/id_rsa.pub $ USER @主机名

exmp(主机名=您的主机名像本地主机)。然后它会工作。

+0

感谢您的评论......但它没有任何区别...的条目中的AllowUsers sshd_config文件被删除仍然... – visakh

1

是否执行这些步骤:

$ ssh-keygen -t rsa -P '' 

... 

Your identification has been saved in /home/hduser/.ssh/id_rsa. 

Your public key has been saved in /home/hduser/.ssh/id_rsa.pub. 

... 

    $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 

    $ ssh localhost 

这些线是从这个tutorial

+0

感谢您的答案...请参阅我的编辑问题... – visakh