SSH免密登陆设置笔记

一、ssh免密登陆实现

1.原理简单描述:

       机器A若要免密登陆机器B,则需要在机器A上生成一个公钥(id_rsa.pub)和一个私钥(id_rsa),并将公钥添加到机器B的权限列表(authorized_keys)中。这样,在机器A上通过ssh就可以免密登陆机器B了。

2.依次执行命令:

a).首先分别在机器A和B上,以root用户登陆,执行命令:

# ssh-keygen -t rsa

 

注:1).文件夹“.ssh/”可选择生成的目录,默认生成在/root/下,若是root以外的用户user,则默认生成在/home/user/下;

       2).”.ssh/“文件夹下有两个文件,即本机公钥(id_rsa.pub)和私钥(id_rsa);

       3).最后生成的图形是公钥的指纹加密;

       4).在机器B上生成密钥,是为了生成".ssh/"文件目录,而它的密钥暂时不用;

b).将机器A(root用户)的公钥备份一份并重命名为"id_rsa_A.pub"(避免与机器B的"id_rsa.pub"文件重名),

    并发送到机器B的".ssh/"目录下:

# cd ~/.ssh/
# ll
# cp id_rsa.pub id_rsa_A.pub
# ll
# scp id_rsa_A.pub root@remoteIP:~/.ssh/

注:1)."root@remoteIP"是指机器B的IP上的用户root;

       2)."~"或者"~/"代表当前登陆用户目录,如:"/home/user/";

c).在机器B上,以root用户登陆,将收到的公钥"id_rsa_A.pub"添加到权限列表"authorized_keys"中:

# cd ~/.ssh/
# ll
# cat id_rsa_A.pub >> authorized_keys

d).在机器B上(root用户),更改".ssh"目录权限为700,"authorized_keys"文件权限为644

# chmod 700 ~/.ssh
# chmod 644 ~/.ssh/authorized_keys

注:1).700 和 644 代表权限

       2). "r"代表"4"  "w"代表"2"  "x"代表"1",然后基于此,三者组合;

           如:"7"代表"4+2+1",即"rwx"; "0"代表"",即"---";"6"代表"4+2",即"rw-"; "4"代表"4",即"r--"

           故:"700"表示"rwx------";"644"表示"rw-r--r--";

       3). 三位数每一位分别表示:文件所有者的权限、文件所有者所在用户组的其他用户的权限、其他用户的权限。

       参考(Linux文件保护机制)

e).登陆机器A(root用户),验证免密登陆:

# ssh root@remoteIP

注:1).如果没有提示输入密码,则表示免密登陆成功; 

二、扩展

1.同一机器下不同用户的免密登陆设置:

a).原理相同;

b).例如:Linux下的两个用户 root 和 hadoop,此时,只需将"/root/.ssh/id_rsa.pub"(root的公钥)发送至 "/home/hadoop/.ssh/"下,依据上节步骤,可实现 "ssh hadoop@master" (当前机器主机名为master)

2.Hadoop伪分布模式的ssh免密登陆实现:

a).由于伪分布的主节点与从节点位于同一机器上,即只有一个master结点,没有slave1、slave2...等结点;

b).由于以root用户启动Hadoop时需要不断输入"root@master"的登陆密码,并且是同一用户,可在"/root/.ssh/"下直接将公钥"id-rsa.pub"添加到当前目录的"/root/.ssh/authorized_keys"列表中,即可实现"ssh master"免密登陆;

c).经验证,若以hadoop用户启动Hadoop时,需要不断输入"hadoop@master"的登陆密码,可相同处理。

3.Hadoop完全分布模式的ssh免密登陆实现:

参看一台物理机(笔记本)上的两台虚拟机实现的完全分布模式笔记:Hadoop部署笔记(完全分布式)

三、参考博文

1.【linux】/home/USR/.ssh目录里什么时候需要添加authorized_keys文件

2. Hadoop(三)手把手教你搭建Hadoop全分布式集群

3. SSH免密登录原理及实现

4. Linux scp命令

5. chmod命令详细用法

6. Linux chmod命令

7. Linux cat命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值