linux之ssh免密码登录配置方法
ssh免密码登录配置方法
参考:https://www.cnblogs.com/wenxingxu/p/9597307.html
1、生成公钥和私钥
ssh-keygen -t rsa
在 ~/.ssh/下面会生成文件
id_rsa(私钥)
id_rsa.pub(公钥)
如果互信之后还是失败:https://wuyaogexing.com/65/152511.html
特别是目录权限问题,sudo chmod 700 /home/当前用户
2、将公钥拷贝到对应的机器上,两种方法:
直接将公钥,复制到对方机器的authorized_keys中;
或者ssh-copy-id user@ip
3、清除互信:
ssh-keygen -R 10.210.116.51
小知识:
1、ssh ip默认是以本地端计算机的账号来登录的
2、不用登陆过去,直接丢个命令 (-f ,如果没有-f需要等命令执行完成)
ssh wps@10.13.83.1 -f ip r g 1
3、下次可以不用一个一个执行:
for i in {1..3};do echo $i;done
ansible -i kube/conf/k8s.conf kube_node -m shell -a "date" -u wps
或者 ssh wps@10.13.83.1 echo "123"
4、不用输入yes
-o StricHostKeyChecking=no
sshpass -p $pwd -o StricHostKeyChecking=no sh -s < 文件名
5、公钥认证
- 若接受到公钥未记录,会询问是否要记录到~/.ssh/known_hosts;如果需要就记录;否则不会记录;
- 如果已经记录,会和公钥进行对比,如果不同,则不让继续;
所以你会发现,登录不上的时候,你需要将~/.ssh/known_hosts中的内容删除