ubuntu hadoop ssh免密登录

1 设置hosts

假设我们有几台服务器,服务器 ip 分别为 192.168.124.100,192.168.124.101,192.168.124.102,服务器名称为 server0,server1,server2,为了方便添加写个脚本

vim add_hosts

添加以下内容:

#! /bin/bash
echo 192.168.124.100 server0 >> /etc/hosts
echo 192.168.124.101 server1 >> /etc/hosts
echo 192.168.124.102 server2 >> /etc/hosts

给这个脚本可执行权限

chmod +x add_hosts

每个服务器依次执行

2 设置ssh秘钥

ssh-keygen -t rsa
ssh-copy-id server0
ssh-copy-id server1
ssh-copy-id server2

3 修改 /etc/ssh/sshd_config

PermitRootLogin yes
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

并使其生效:

sudo service ssh restart

使用:

ssh localhost

测试,是否成功,如果不行,继续往下操作

在 ssh 下建立一个用户文件夹,假设用户为 guo,这个文件夹属于用户 guo,权限为 755:

cd /etc/ssh
sudo mkdir guo
sudo chown -R guo:guo ./guo/
sudo chmod 755 ./guo/

将 .ssh/authorized_keys 拷贝至这个文件夹下,具有 644 权限,属于用户

sudo cp /home/guo/.ssh/authorized_keys ./guo/authorized_keys 
sudo chown guo:guo ./guo/authorized_keys 
sudo chmod 644 ./guo/authorized_keys 

编辑 /etc/ssh/sshd_config:

AuthorizedKeysFile /etc/ssh/guo/authorized_keys

重启 ssh 服务:

sudo service ssh restart

即可

你可能感兴趣的:(hadoop)