SSH免密码登录设置

机器A: 192.168.8.4
机器B: 192.168.8.5
实现在机器A上的用户usera1可以通过ssh免密码以机器B上的userb1身份登录到机器B

1,在机器A上创建用户usera1:useradd usera1
在机器A对用户usera1生成公钥/私钥对,以usera1登录
ssh-keygen -t rsa -P ''
上面这个命令会在/home/usera1/.ssh目录下生成私钥文件id_rsa和公钥文件id_rsa.pub

2,在机器B上创建用户userb1: useradd userb1

3,将用户usera1的公钥的内容添加到机器B的用户userb1的家目录的.ssh目录下的authorized_keys文件中
cat ~/.ssh/id_rsa.pub | ssh -p 22 userb1@192.168.8.5 'cat >> ~/.ssh/authorized_keys'

4,在机器A上,以usera1的身份运行下面的命令,则不需要密码可以以userb1登录机器B
[usera1@srv4 ~]$ ssh userb1@192.168.8.5
Last login: Thu Dec  4 22:13:36 2014 from 192.168.8.4
[userb1@srv5 ~]$

SSH免密码的原理:
usera1向机器B发出请求以userb1登录,usera1将自己的公钥发送过去作为验证。
机器B收到请求后,在userb1的家目录下的/.ssh/authorized_keys查看是否和里面保存的公钥一致。
如果是一致的,机器B用公钥加密一个token发送给机器A,机器A用usera1的私钥解密再把它发送给服务器。
因为用usera1的公钥加密的内容只能用usera1的私钥解密,这样就验证了usera1的身份。

如果在机器B上还要另外两个用户userb2和userb3,
做如下的实验:
cat ~/.ssh/id_rsa.pub | ssh -p 22 userb2@192.168.8.5 'cat >> ~/.ssh/authorized_keys'
在userb2的authorized_keys中添加usera1的公钥,那么usera1同样可以免密码以userb2的身份登录机器B。
[usera1@srv4 ~]$ ssh userb2@192.168.8.5
Last login: Thu Dec  4 22:46:48 2014 from 192.168.8.4
[userb2@srv5 ~]$

在userb3的authorized_keys中没有usera1的公钥,那么usera1以userb3的身份登录机器B时需要提供密码。
[usera1@srv4 ~]$ ssh userb3@192.168.8.5
userb3@192.168.8.5's password:

如果在机器A上还要另外一个用户usera2,没有为usera2做上述的免密码设置。
usera2的以userb1的身份做ssh登录机器B,则需要提供密码。
[usera2@srv4 ~]$ ssh userb1@192.168.8.5
userb1@192.168.8.5's password:

如果在机器A上还要另外一个用户usera3,为usera3配置了免密码以userb1登录机器B。
ssh-keygen -t rsa -P ''
cat ~/.ssh/id_rsa.pub | ssh -p 22 userb1@192.168.8.5 'cat >> ~/.ssh/authorized_keys'

usera3以userb1的身份做ssh登录机器B,则不需要提供密码。
[usera3@srv4 ~]$ ssh userb1@192.168.8.5
Last login: Thu Dec  4 23:54:43 2014 from 192.168.8.4
[userb1@srv5 ~]$
随便说一下Windows下远程访问,在Windows中使用\\IP\c$的方式访问另外一台机器的C盘的时候,认证方式为,首先将本机的当前登录用
户名和密码发给要登录的目的机器进行验证,比如当前登录为: Administrator/pwd123,而正好要登录的目标机器也有同样账号同样密码,
那么就直接登录了.
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值