ubuntu系统开启SSH无密码登陆服务
http://blog.itpub.net/26978437/viewspace-730032/
装好两台ubuntu虚拟机之后,确保虚拟机可以上网,接下来就是开启SSH服务,实现无密码登陆,目的是Hadoop节点间可以互相通信。
首先同时打开两台ubuntu,让其中一台做既做NameNode,又做DateNode,另一台就做DataNode,因为节点太少的话,运行效果不明显。
然后分别修改机器名,输入$sudo vi /etc/hostname,将做NameNode的那台虚拟机命名为:ubuntu,做DataNode的那台名为:ubuntu01。
然后输入$sudo vi /etc/hosts 打开/etc/hosts分别添加机器名和相应的IP:
127.0.0.1 localhost
202.118.212.4 ubuntu
202.118.212.5 ubuntu01
保存退出,重启两台虚拟机,使配置生效。
2:开启SSH服务:
重启后输入:$sudo apt-get install openssh-server
查看是否已启动SSH服务,可输入:$ssh ubuntu 如果输入密码后能正常进入,表示SSH服务已启动了。同样在ubuntu01上也开启SSH服务。然后验证:$ssh ubuntu01
3: 建立ssh无密码登陆
(1)分别在ubuntu和ubuntu01上实现无密码登陆本机:(以ubuntu为例:)
$ssh-keygen –t dsa –P ’’ –f ~/.ssh/id_dsa
回车后,会在~/.ssh/中生成一对密钥,然后把id_dsa.pub 追加到授权key里,输入:$cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys.
然后可以实现无密码登陆本机:$ssh ubuntu
(2) 实现ubuntu无密码登录ubuntu01:
把ubuntu上的id_dsa.pub文件追加到ubuntu01的authorized_keys内:
a. 拷贝ubuntu的id_dsa.pub文件:
$scp ~/.ssh/id_dsa.pub hadoop@202.118.212.5:/home/hadoop
b. 登录ubuntu01,输入:$ cat id_dsa.pub >> .ssh/authorized_keys
(3) 同样,在ubuntu01上执行:
$ scp ~/.ssh/id_dsa.pub hadoop@202.118.212.4:/home/hadoop
登录ubuntu,执行:$ cat id_dsa.pub >> .ssh/authorized_keys
然后就可以实现无密码登录了:在ubuntu机上:$ ssh ubuntu01
在ubuntu01上:$ ssh ubuntu
然后输入exit即可断开连接。