码迷,mamicode.com
首页 > 系统相关 > 详细

linux无密码登录

时间:2017-09-20 16:37:23      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:linux基础

关于这个小操作,纠结了很久,刚开始就是两步走:

ssh-keygen -t rsa 三次回车生成密钥对

ssh-copy-id -i /root/.ssh/id_rsa.pub 1.1.1.1 回传公钥到需要ssh的服务器


后来发现了ssh-key -N "" -f /root/.ssh/id_rsa这个命令,可以跳过回车,直接生成,如获至宝。


再后来,发现ssh-copy-id也麻烦,发现了cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys这个小技巧,但是思维定式,一直通过cat来生成自动认证文件authorized_keys。


最后的终结版:cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys,直接复制即可。


所以步骤仍是两个:

  1. ssh-keygen -t rsa  -N  “” –f  /root/.ssh/id_rsa

  2. cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys


需要注意的是,由于目前通常工作中的需求是,服务器集群所有节点互信,所以做完这两个操作之后,再ssh登录所有节点,生成known_hosts文件,然后把整个/root/.ssh 目录scp到所有节点,即可所有节点之间互信,如果authorized_keys文件存储有其他公钥,则不能直接copy生成,还是需要通过

cat /root/.ssh/id_rsa.pub >>   /root/.ssh/authorized_keys 来追加到之前的密钥之后,避免覆盖掉之前的公钥。


具体/root/.ssh/目录下的文件作用如下

authorized_keys  用于跟远端Client的私钥比对的公钥,放在需要ssh的server端 

id_rsa  用于跟server端的公钥比对的私钥,放在Client端

known_hosts 用于存储已经ssh过的主机的指纹信息,如果指纹信息和主机名或主机IP地址对应出错,则会有告警提示甚至无法ssh

id_rsa.pub  生成密钥对的原始公钥文件,在生成authorized_keys之后,这个文件就可以删掉了


另外,id_rsa为固定名称,更改会导致无密码ssh失败。

本文出自 “8450152” 博客,请务必保留此出处http://8460152.blog.51cto.com/8450152/1967111

linux无密码登录

标签:linux基础

原文地址:http://8460152.blog.51cto.com/8450152/1967111

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!