Linux多服务器间的免密码登录设置
为什么要进行免密码登录
- 免密码登录可以让用户不输入密码直接连到其他主机或同一台机器的不同用户,方便快捷
- 密码登录适用于大批量集群操作
- 通过公钥私钥登录认证的场景有很多,但原理相似
免密登录三步曲
为了更加直观的说明,现假设由A主机免密登录到B主机
- 在主机A上使用命令ssh-genkey生成密钥对, 一直按回车键即可
ssh-genkey
- 第一步执行完后会 在当前用户的home目录下的.ssh文件夹中生成相应的密钥对,把公钥 id_rsa.pub拷贝到主机B对应目录下的authorized_keys文件中,(如果没有这个文件,手动建立)
- 测试免密登录的效果
ssh user@dest_ip
免密登录需要注意的地方
- 免密登在两个用户建立的,即使这两个用户在同一台机器也行
- 在linux系统中,每个用户都有自己的用户空间,软件的配置信息,甚至只属于自己的软件,所以在每个用户的home目录中都可以使用ssh-genkey命令生成一个.ssh目录,里面放着成对的密钥对
- 如果想让一个用户可以免密登录到另一个用户,只需要将自己的id_rsa.pub文件记录的公钥追加到对方的.ssh目录下authorized_keys文件中即可(实际拷贝中可以使用ssh-copy-id user@dest_ip命令直接将公钥拷贝到目标主机用户对应的authorized_keys文件中)